| CallXML 3.0 Development Guide | Home | Frameset Home |
<recordcall>element is a new element that allows the developer to record both sides of a call, recording the human and the application interaction to a wav file that is stored in the developer's Voxeo File Manager in the 'recordings' subdirectory. <recordcall> can record to a stereo audio file and contains *two* 8-bit streams, (note that two 8-bit streams is not the same as recording in 16 bit). Also be aware that attempting to 'turn on' call recording while it has already been enabled will result in a fatal application error. However, you are free to turn it on and off at your leisure within the application by using the 'value' attribute. | info | Data Type: CDATA | Default: Required |
| The 'info' attribute allows the developer to specify information that is inserted into the resultant recorded wav filename that makes identification easier. Note that ECMA values are NOT supported; (for instance, specifying the 'info' attribute with a value of 'MyVar' is not valid). Resultant audio filenames will be in the following format: AccountID -ApplicationID-SessionID-UserData(Info).wav As such, a sample file might well look like this: 111-22222-abcdefg1234567abcdefg1234567-MyUserDefinedInformation.wav | ||
| test | Data Type: CDATA | Default: Optional |
| The 'test' attribute is a new supplement to the CallXML markup that permits the developer to execute the contents of a container element, or action element, based on whether or not the specified condition is met. If the defined condition is met, then the code contained within the element is then executed. If the condition is not met, then the application resumes execution with the next sequential container container element in the document. | ||
| value | Data Type: (0-100) | Default: Required |
| The 'value' attribute specifies what percentage of calls will be recorded. Setting this value to '100' will record all calls that hit the application, while setting it to '30' will record 3 out of 10 calls that come in. Setting this value to '0' allows the developer to programmatically turn call recording on and off within the application flow. | ||
| value-is | Data Type: STRING | Default: none - attribute is optional |
| Another new attribute, 'value-is', grants the developer with the ability to perform conditional logic upon container elements, or action elements for the first time within the CallXML markup. The value specified in the 'value-is' attribute specifies a string to compare against any 'value' attributes. If the 'value' and 'value-is' equate to 'true', then the element specified will execute. If the value equates to 'false' then the element will be skipped during document execution. | ||
| value-is-not | Data Type: STRING | Default: none - attribute is optional |
| Another new attribute, 'value-is-not', grants the developer with the ability to perform conditional logic upon container elements, or action elements, for the first time within the CallXML markup. The value specified in the 'value-is-not' attribute specifies a string to compare against any 'value' attributes. If the 'value' and 'value-is-not' equate to 'false', then the element specified will execute. If the value equates to 'true' then the element will be skipped during document execution. | ||
| <?xml version="1.0" encoding="UTF-8"?> <callxml version="3.0"> <do repeat="3"> <recordcall value="100" info="MyFile"/> <prompt value="Hey, you are being recorded, jerky! Press one to turn off recording, or press two to continue" choices="123"/> <on event="choices = 1"> <recordcall value="0" info="MyFile"/> <prompt value="Okay already, no more recording"/> </on> <on event="choices = 2"> <prompt value="You are so vain"/> </on> </do> </callxml> |
| <?xml version="1.0" encoding="UTF-8"?> <callxml version="3.0"> <do> <!-- this will not turn on call recording --> <recordcall value="100" info="MyFile1a" test="6=9"/> <!-- this will turn on call recording --> <recordcall value="100" info="MyFile1b" test="420=420"/> <prompt value="Hey, you are being recorded, jerky! Press one to turn off recording, or press two to continue" choices="12"/> <wait value="10s" choices="12"/> <on event="choice:1"> <!-- this will not turn off call recording --> <recordcall value="0" info="MyFile2a" test="420!=420"/> <!-- this will turn off call recording --> <recordcall value="0" info="MyFile2b" test="6!=9"/> <prompt value="Okay already, no more recording"/> </on> <on event="choice:2"> <prompt value="You are so vain"/> </on> </do> </callxml> |
| <?xml version="1.0" encoding="UTF-8"?> <callxml version="3.0"> <block value="thurman_merman"> <!-- this will not turn on call recording --> <recordcall value="100" info="MyFile1a" value-is="willie"/> <!-- this will turn on call recording --> <recordcall value="100" info="MyFile1b" value-is="thurman_merman"/> <prompt value="Hey, you are being recorded, jerky! Press one to turn off recording, or press two to continue" choices="12"/> </say> <wait value="10s" choices="12"/> <on event="choice:1"> <!-- this will not turn off call recording --> <recordcall value="0" info="MyFile2a" value-is="marcus"/> <!-- this will turn off call recording --> <recordcall value="0" info="MyFile2b" value-is="thurma_merman"/> <prompt value="Okay already, no more recording"/> </on> <on event="choice:2"> <prompt value="You are so vain"/> </on> </block> </callxml> |
| ANNOTATIONS: EXISTING POSTS |
| login |