Skip to main content

Record a message

IMPORTANT!

If you hadn't yet read the intro part of this section, please click here to read it first.

Description

This module provides the developer access to the Cloudonix Record Verb. Activating this module will instruct your currently running voice application to initiate an audio recording from the caller.

Workflow

This module may be executed at any point of a scenario - however, pay attention to where the output is used in your CXML response.

Module Example

Parameters

ParameterDescription
ConnectionThe Voice Application Connection to be used for the query.
Next ActionSee Below.
ActionThe voice application to execute. Available for Attached or Detached Voice Applications.
EndpointThe voice application remote HTTP endpoint. Available for Custom Voice Application Endpoint only.
Additional DataAn array of key=value pairs, to be passed to the new Voice Application as part of the request data.
BeepPlay a short beep tone to the caller, indicating that the recording started. (Default: true)
Nested Voice ModulesSee Below

Next Action Targets

This Voice Application

Voice application control is returned to the current voice application, with potential additional data.

Attached or Detached Voice Application

Voice application control is passed to the voice application that was previously built with Make.com.

Custom Voice Application Endpoint

Voice application control is passed to the URL designated in the Endpoint parameter.

Nested Voice Modules

As described above, the record module activates the Cloudonix CXML Record Verb, which is an asynchronous verb. In Cloudonix, asynchronous verbs (<Record> and <GATHER>) enable the developer to nest other verbs, to be executed while the recording is performed. The voice modules that can be nested are: Say Something, Pause and Play.

Nested voice modules are executed, in parallel to the recording, in the order they appear in the Nested Voice Modules parameter.

Example

Let us examine the following scenario diagram:

As you can see, our scenario consists of 2 Say Something modules, a Pause module and a Record module. The Record module includes the following nested voice modules parameter:

The resulting CXML of this scenario will look similar to this:

<Response>
<Record action="https://example.com/recordingScript" method="POST">
<Say>Welcome to acme corporation</Say>
<Pause legnth="2" />
<Say>No one is available right now, please record a message and we'll get back to you</Say>
</Record>
</Response>

The above CXML document, generated from the scenario, will instruct Cloudonix to start a recording and playback the messages in sequence. If the platform identifies that the remote party started talking, it will stop the playback and wait for the recording to complete.

Advanced Mode

ParameterDescription
Finish Input KeyTerminate the recording if any of the selected keys had been pressed. (Default: #)
Maximum DurationMaximum duration to record, before continuing with the voice application execution. (Default: 180 seconds.)
Silence TimeoutMaximum time to allow a recording to continue without audio. If no audio is recorded for this periond, the recording will complete and execution will continue. (Default: )
Recording Status Callback URLRemote HTTP URL to receive your call recording notication.
Recording Status Callback MethodThe HTTP Method to use for recording status notifcations. (Default: POST)
Report Events SelectionIf none specified, all events will be reported. Select your desired events for better granularity. (Default: All events)