The Voice Record Lab API is realized by the component
VoiceRecord, which provides methods to create a voice
call data object (createVoiceRecord), to
query status information about the voice call data object (getVoiceRecordStatus),
to retrieve the voice call data object Meta information (getVoiceRecord) and to delete
a voice call object (deleteVoiceRecord). These
methods will be described in the following sections.
The method createVoiceRecord initiates the
recording of a voice data object. First, it establishes a phone call
to the given phone number and prompts the called party for voice input
by means of playing a welcome message. Afterwards, the voice input of
the callee is recorded and a goodbye message is played. The resulting
voice call data object is stored persistently.
Welcome and goodbye message can be supplied as optional parameter by means of URLs pointing to existing voice call data objects. These voice call data objects have to be recorded beforehand. Future versions of the Voice Record Lab API will provide the opportunity to supply URLs to any other audio file used as welcome or goodbye message. The audio format WAV (PCM A-law uncompressed, 8 Bit, mono, 8kHz) is used for all voice call data objects, i.e. recorded voice call data object and welcome / goodbye message.
The method createVoiceRecord utilizes an
asynchronous behavior. It returns immediately checking the validity of
input parameters, because otherwise the method call would block until
the callee finishes the recording and hangs up.
The method createVoiceRecord returns a
reference to the voice call data object to be recorded which is
required to request status information about the call establishment
und voice recording. In order to retrieve this status information, the
getVoiceRecordStatus
method has to be invoked.
Table 3.1. Parameter list of method
createVoiceRecord
| Name | Description |
|---|---|
| The underlying voice application calls this phone number and prompts the callee for the voice message to be stored. |
| The call establishment will be started at the
given date and time. The If no
|
| URL reference to a voice call data object that stores an individual welcome message prompt. If no welcome message prompt is specified, the default prompt is used. |
| URL reference to a voice call data object that stores an individual goodbye message prompt which will be played at the end of the recording. If no goodbye message prompt is specified, the default goodbye message promt is used. |
| URL reference to a voice call data object that stores an individual message prompt which will be played when the callee speaks not loud enough. If no message prompt is specified, the default message prompt is used. |
| An application specific maximum recording time for a voice call data object in seconds. This timeout can be used to override the system specific timeout of 30 minutes (1800 seconds), if it is too large. Maximum recording times larger than 30 minutes are forbidden. |
Table 3.2. Response of method
createVoiceRecord
| Name | Description |
|---|---|
| Unique references to voice call data object to be recorded. The reference is required in order to get either the status or the voice call data object itself. |
Table 3.3. Exceptions of method
createVoiceRecord
| Name | Description |
|---|---|
invalidPhoneNumber | The recordingPhoneNo number is
invalid. |
welcomeMsgNotExists | The welcomeMsgMediaObjRef does not
exist. |
goodbyeMsgNotExists | The goodbyeMsgMediaObjRef does not
exist. |
cannotHearYouMsgNotExists | The cannotHearYouMsgMediaObjRef does
not exist. |
invalidStartTime | The startTime lies in the past
already or lies more than 24 hours in the future. |
internalError | Internal system error. |