BXML Recording

About

This guide will show how to do call recording via the Record and StartRecording verbs.

Record

The Record verb starts recording in a call and pauses all BXML execution until the recording is terminated by a timeout (maxDuration) or a terminating digit (terminatingDigits). Once the recording ends, BXML execution will continue at the next verb, or at the BXML at the recordCompleteUrl if this attribute is set.

If the recordingAvailableUrl attribute is set, this URL will receive a callback once the recording is available to use.

Use <Record> if:

  • You're capturing a voicemail
  • You only need a single party recording
  • You're capturing input that should pause the call until finished

Record Example

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Record recordCompleteUrl="https://myapp.com/nextBXML" maxDuration="10"/>
</Response>

StartRecording

The StartRecording verb starts recording in a call without pausing BXML execution. The PauseRecording, ResumeRecording, and StopRecording BXML verbs can be used to toggle the recording. Recording is terminated by either the call ending, or by a StopRecording verb.

Much like the Record verb, StartRecording also has a recordingAvailableUrl attribute to receive the recording available callback.

Use <StartRecording> if:

  • You want to record both ends (together or separate) of a phone call
  • You want to record a call for quality assurance
  • You need other BXML verbs to execute while a recording is going on

StartRecording Examples

Basic StartRecording
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <StartRecording recordingAvailableUrl="https://myapp.com/noBXML"/>
</Response>
StartRecording Used With StopRecording, PauseRecording, and ResumeRecording
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <StartRecording recordingAvailableUrl="https://myapp.com/noBXML"/>
    <SpeakSentence voice="bridget">Recording is active while this sentence is being spoken.</SpeakSentence>
    <PauseRecording/>
    <SpeakSentence voice="bridget">Recording has been paused.</SpeakSentence>
    <ResumeRecording/>
    <SpeakSentence voice="bridget">Recording has been resumed and is active while this sentence is being spoken.</SpeakSentence>
    <StopRecording/>
    <SpeakSentence voice="bridget">Recording has been stopped.</SpeakSentence>
</Response>

Transcriptions

If you want to do a transcription of your recording, you can add a transcribe attribute to your Record or StartRecording BXML verbs. If you want to receive a TranscriptionAvailable callbacks, you can set the transcriptionAvailableUrl to your URL of choice, and transcriptionAvailableMethod to your HTTP method (GET or POST).

Recording Transcription Example

<?xml version="1.0" encoding="UTF-8"?>
<Response>
   <Record transcribe="true" transcriptionAvailableUrl="https://transcription.url.server/transcribe/" transcriptionAvailableMethod="POST"/>
</Response>


results matching ""

    No results matching ""