Record command

The Record command records the voice of the current call. It also capable of recording a chosen call based on the provided call ID.

Parameters:

Note: CallId is only considered in case of third party call control. Duration, Inactivity and FinishDigits are only considered in case of API extension control.

Parameter name Value Description Mandatory
CallId string value,
e.g. 6eg3ft
ID of the call to record audio from. By default it is known from the CallChanged notification. No
Duration int value,
e.g. 60
Duration until the recording will run at the most, expressed in seconds. (unless voice activity detector or call party will hang up first) No
Inactivity int value,
e.g. 5
When voice is not detected for this amount of seconds, the record command will be finished. No
Format string value,
(mp3 or wav)
Record format supports mp3 or wav audio format, default is mp3. No
FinishedUrl int value,
e.g. http://yourapp.com/record_finished.php
This URL will be requested if the record is finished. This is where the RecordCompleted notification is sent. This notification contains a RecordURL parameter which is the path from where the record can be downloaded from. No
FinishDigits string value,
e.g. 7890*#
When one of these digits are pressed, the record command will be interrupted. No

Examples of extension control

Simple example:

Records the current call in wav format. The recording can be stopped by pressing 1 or 2. When the record is completed a RecordCompleted notification is sent to http://yourapp.com/record_finished.php.

<?xml version="1.0"?>
<Response>
  <Record FinishedUrl="http://yourapp.com/record_finished.php" FinishDigits="12" Format="wav">
  </Record>
</Response>

Detailed example:

First the speak engine says this: "Your call will be recorded. You can stop recording by pressing 1." Then it records the call in wav format. The recording can be stopped by pressing 1. When the record is completed a RecordCompleted notification is sent to http://yourapp.com/record_finished.php. The call hangs up in 1 minute.

<?xml version="1.0"?>
<Response>
  <Speak>Your call will be recorded. You can stop recording by pressing 1.
  You have 1 minutes to talk.</Speak>
  <Record FinishedUrl="http://yourapp.com/record_finished.php" FinishDigits="1" Format="wav">
  </Record>
  <Delay>60</Delay>
  <Hangup></Hangup>
</Response>

Record command is used in OzML responses to these Api Extension Control notifications:
GoTo, RecordCompleted, DtmfEntered, SMSDeliveryReport, IncomingSMS, IncomingCall, CallConnected

Examples of third party call control

Simple example:

Records the call with call ID 6eg3ft in wav format. When the record is completed a RecordCompleted notification is sent to http://yourapp.com/record_finished.php.

<?xml version="1.0"?>
<Response>
  <Record FinishedUrl="http://yourapp.com/record_finished.php" Format="wav" CallId="6eg3ft">
  </Record>
</Response>

Detailed example:

First the speak engine says this: "Your call will be recorded." Then it records the call in wav format. When the record is completed a RecordCompleted notification is sent to http://yourapp.com/record_finished.php.

<?xml version="1.0"?>
<Response>
	<Speak CallId="6eg3ft" Party="all">Your call will be recorded.</Speak>
  	<Record CallId="6eg3ft" FinishedUrl="http://yourapp.com/record_finished.php" Format="wav">
  	</Record>
</Response>
Record command is used in OzML responses to these notification:
CallChanged, RecordCompleted

More information