Contenu

Introduction

Conditions préalables

Composants utilisés

Les informations de Backgroud

Messages VVB

Étape 1. Le SIP INVITE de recevies VVB de CVP et les finitions permutent des messages SIP.

Étape 2. VVB cherche bootstrap.vxml localement.

Étape 3. VVB envoie CALL_NEW à CVP.

Étape 4. Un nouveau TCP connecte VVB au serveur CVP VXML et appelle dans l'application CVP.

Étape 5. VVB appelle dans l'application et obtient le document VXML.

Étape 6. VVB envoie la requête de POST pour le fichier audio.

Étape 7. VVB cherche le fichier audio et vérifie si le fichier audio est modifié.

Étape 8. VVB lit le fichier audio.

Étape 9. VVB envoie la requête de POST après qu'OBTENIEZ avec succès le fichier audio et clôture cette session TCP.

Étape 10. VVB reçoit le BYE de CVP et termine cet appel.

Introduction

Ce document décrit le flux des messages sur Cisco a virtualisé le navigateur de Voix (VVB) avec l'écoulement comphrensive d'appel.

Conditions préalables

Aucune spécification déterminée n'est requise pour ce document.

Composants utilisés

- Version 11.6 VVB

- Version 11.6 du Portail Cisco Unified Customer Voice (CVP)

Les informations contenues dans ce document ont été créées à partir des périphériques d'un environnement de laboratoire spécifique. Tous les périphériques utilisés dans ce document ont démarré avec une configuration effacée (par défaut). Si votre réseau est vivant, assurez-vous que vous comprenez l'impact potentiel de n'importe quelle commande

Les informations de Backgroud

Écoulement d'appel :

Passerelle d'entrée > CVP > Intelligent Contact Management (missile aux performances améliorées) > étiquette du retour VRU > CVP > VVB

Suivant les indications de l'image, c'est l'écoulement complet d'appel.

Suivant les indications de l'image, ce document concentre plus sur la pièce VVB de messages.

Messages VVB

Étape 1. Le SIP INVITE de recevies VVB de CVP et les finitions permutent des messages SIP.

256317: Oct 23 10:10:36.668 AEST %MIVR-JASMIN-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] NEW_CALL, GUCID=B42C468000010000000000650851430A; GUID=3022800512-0000065536-0000000101-0139543306; CallId=B42C468000010000000000650851430A-150871535521622@10.66.75.49; URI=sip:888811111139@10.66.75.62;transport=tls

256334: Oct 23 10:10:36.719 AEST %MIVR-JASMIN-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] SIP-ltp92-88881111*, State=ALERTED: Sending 200 OK response.

256335: Oct 23 10:10:36.785 AEST %MIVR-JASMIN-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] SIP-ltp92-88881111*, State=ALERTED: Processing ACK

Étape 2. VVB cherche bootstrap.vxml localement.

256398: Oct 23 10:10:36.794 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch:    file:/opt/cisco/uccx/Documents/System/bootstrap.vxml

256401: Oct 23 10:10:36.795 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.001, URI: file:/opt/cisco/uccx/Documents/System/bootstrap.vxml

Étape 3. VVB envoie CALL_NEW à CVP.

Alors CVP envoie au missile aux performances améliorées : REQUEST_INSTRUCTION, missile aux performances améliorées passe alors les informations d'application à CVP.

256469: Oct 23 10:10:36.809 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Browser.makeRequest(): got encoded uri=http://10.66.75.49:7000/CVP/Server?MSG_TYPE=CALL_NEW&CALL_DNIS=888811111139&CALL_ANI=sip%3A60006099%4010.66.75.49%3A5061%3Btransport%3Dtls&ERROR_CODE=0&RECOVERY_VXML=crtp%3A%2FSDocuments%2FRecovery.vxml&CLIENT_TYPE=IOS&CALL_ID=B42C468000010000000000650851430A&CALL_LEGID=B42C468000010000000000650851430A-150871535521622%4010.66.75.49&CALL_UUI=&VERSION=Voice_Browser_11_6&PRIMARY=10.66.75.49

Capture de paquet :  [PSH, ACK] VVB à CVP (port 7000)

GET /CVP/Server?MSG_TYPE=CALL_NEW&CALL_DNIS=888811111139&CALL_ANI=sip%3A60006099%4010.66.75.49%3A5061%3Btransport%3Dtls&ERROR_CODE=0&RECOVERY_VXML=crtp%3A%2FSDocuments%2FRecovery.vxml&CLIENT_TYPE=IOS&CALL_ID=B42C468000010000000000650851430A&CALL_LEGID=B42C468000010000000000650851430A-150871535521622%4010.66.75.49&CALL_UUI=&VERSION=Voice_Browser_11_6&PRIMARY=10.66.75.49 HTTP/1.1

User-Agent: Cisco Voice Browser/1.0 (Cache activated)

Accept: text/vxml, application/vxml, application/vxml+xml, *; q=.2, */*; q=.2

Host: 10.66.75.49:7000

Connection: keep-alive

VVB reçoit l'OK 200 pour l'EFFORT :   [PSH, ACK] CVP (port 7000) à VVB

256475: Oct 23 10:10:36.853 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP 200 OK

Capture de paquet :

HTTP/1.1 200 OK

Server: Apache-Coyote/1.1

Transfer-Encoding: chunked

Date: Sun, 22 Oct 2017 23:35:55 GMT

VVB cherchent avec succès, et obtiennent les informations d'application CVP

src="http://10.66.75.48:7000/CVP/en-us/../Server" namelist="application callid _dnis _ani "

<var name="application" expr="'HelloWorld'"

256479: Oct 23 10:10:36.853 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.044, URI: http://10.66.75.49:7000/CVP/Server?MSG_TYPE=CALL_NEW&CALL_DNIS=888811111139&CALL_ANI=sip%3A60006099%4010.66.75.49%3A5061%3Btransport%3Dtls&ERROR_CODE=0&RECOVERY_VXML=crtp%3A%2FSDocuments%2FRecovery.vxml&CLIENT_TYPE=IOS&CALL_ID=B42C468000010000000000650851430A&CALL_LEGID=B42C468000010000000000650851430A-150871535521622%4010.66.75.49&CALL_UUI=&VERSION=Voice_Browser_11_6&PRIMARY=10.66.75.49

CVP envoie le document VXML :  [ACK] CVP (port 7000) à VVB

256480: Oct 23 10:10:36.856 AEST %MIVR-SS_VB-7-UNK:Content of VXML Document:

<?xml version="1.0" encoding="iso-8859-1"?>

<vxml version="2.0">

<var name="MSG_TYPE" expr="'CALL_RESULT'" />

<var name="CALL_ID" expr="'B42C468000010000000000650851430A'" />

<var name="CALL_SEQ_NUM" expr="1" />

<var name="ERROR_CODE" expr="0" />

<var name="CALLCED" />

<var name="FROM_EXTVXML0" />

<var name="FROM_EXTVXML1" />

<var name="FROM_EXTVXML2" />

<var name="FROM_EXTVXML3" />

<var name="PODID" />

<var name="DEBUG" expr="1" />

<property name="com.cisco.media-logging-id" value="'B42C468000010000000000650851430A'" />

<property name="fetchaudiodelay" value="2s" />

<property name="fetchaudiominimum" value="5s" />

<form id="GS" scope="dialog">

<property name="com.cisco.tts-server" value="rtsp://tts-en-us/synthesizer"/>

<property name="com.cisco.asr-server" value="rtsp://asr-en-us/recognizer"/>

<var name="application" expr="'HelloWorld'"/>

<var name="callid" expr="'B42C46800001000000000065085143'"/>

<var name="_dnis" expr="'7001'"/>

<var name="_ani" expr="'60006099'"/>

<subdialog name="Server"  src="http://10.66.75.48:7000/CVP/en-us/../Server" namelist="application callid _dnis _ani ">

<filled>

<assign name="document.FROM_EXTVXML0" expr="Server.FromExtVXML0"/>

<assign name="document.FROM_EXTVXML1" expr="Server.FromExtVXML1"/>

<assign name="document.FROM_EXTVXML2" expr="Server.FromExtVXML2"/>

<assign name="document.FROM_EXTVXML3" expr="Server.FromExtVXML3"/>

<assign name="document.PODID" expr="Server.PodId"/>

<assign name="document.CALLCED" expr="Server.caller_input"/>

<if cond="Server.caller_input == 'system_unavailable'">

<assign name="ERROR_CODE" expr="40"/>

<elseif cond="Server.caller_input == 'app_error'"/>

<assign name="ERROR_CODE" expr="41"/>

<elseif cond="Server.caller_input == 'app_hangup'"/>

<assign name="ERROR_CODE" expr="42"/>

<elseif cond="Server.caller_input == 'suspended'"/>

<assign name="ERROR_CODE" expr="43"/>

<elseif cond="Server.caller_input == 'no_session_error'"/>

<assign name="ERROR_CODE" expr="44"/>

</if>

<goto next="#TrySubmit"/>

</filled>

</subdialog>

<!-- Event Handling -->

<catch event="telephone.disconnect.hangup">

<assign name="ERROR_CODE" expr="1"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="connection.disconnect.hangup">

<assign name="ERROR_CODE" expr="1"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="telephone.disconnect">

<assign name="ERROR_CODE" expr="1"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="connection.disconnect">

<assign name="ERROR_CODE" expr="1"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="error.badfetch">

<assign name="ERROR_CODE" expr="9"/>

<if cond="DEBUG == '1'">

<log> Media Fetch Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event="com.audium.error.badfetch">

<assign name="ERROR_CODE" expr="45"/>

<if cond="DEBUG == '1'">

<log> Media Fetch Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event="error.semantic">

<assign name="ERROR_CODE" expr="10"/>

<if cond="DEBUG == '1'">

<log> Semantic Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.unsupported.format">

<assign name="ERROR_CODE" expr="11"/>

<if cond="DEBUG == '1'">

<log> Unsupported Format Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.unsupported.element">

<assign name="ERROR_CODE" expr="12"/>

<if cond="DEBUG == '1'">

<log> Unsupported Element Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event="nomatch">

<assign name="ERROR_CODE" expr="16" />

<goto next="#TrySubmit"/>

</catch>

<noinput>

<assign name="ERROR_CODE" expr="17" />

<goto next="#TrySubmit"/>

</noinput>

<catch event="com.cisco.isn.session.disconnect.abnormal">

<assign name="ERROR_CODE" expr="27"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="telephone.disconnect.hangup.forced">

<assign name="ERROR_CODE" expr="27"/>

<goto next="#TrySubmit"/>

</catch>

<catch event = "com.cisco.isn.session.disconnect.error">

<assign name="ERROR_CODE" expr="28"/>

<goto next="#TrySubmit"/>

</catch>

<catch event="error.unsupported.language">

<assign name="ERROR_CODE" expr="30"/>

<if cond="DEBUG == '1'">

<log> Unsupported Language Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.com.cisco.media.resource.unavailable.asr">

<assign name="ERROR_CODE" expr="31"/>

<if cond="DEBUG == '1'">

<log> ASR Media Resource Unavailable Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.com.cisco.media.resource.unavailable.tts">

<assign name="ERROR_CODE" expr="32"/>

<if cond="DEBUG == '1'">

<log> TTS Media Resource Unavailable Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.com.cisco.media.resource.failure.asr">

<assign name="ERROR_CODE" expr="31"/>

<if cond="DEBUG == '1'">

<log> ASR Media Resource Failure Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.com.cisco.media.resource.failure.tts">

<assign name="ERROR_CODE" expr="32"/>

<if cond="DEBUG == '1'">

<log> TTS Media Resource Failure Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error.com.cisco.media.resource">

<assign name="ERROR_CODE" expr="33"/>

<if cond="DEBUG == '1'">

<log> General Media Resource Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

<catch event = "error">

<assign name="ERROR_CODE" expr="34"/>

<if cond="DEBUG == '1'">

<log> General Error: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="#TrySubmit"/>

</catch>

</form>

<form id="TrySubmit">

<var name="TryNum" expr="1" />

<var name="MaxTries" expr="1" />

<!--Event Handling -->

<catch event="error.badfetch">

<if cond="TryNum == MaxTries">

<if cond="DEBUG == '1'">

<log> Error: Exceeded Retries to Application Server.  Going to Recovery VXML: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="crtp:/SDocuments/Recovery.vxml"/>

</if>

<assign name="TryNum" expr="TryNum + 1"/>

<if cond="DEBUG == '1'">

<log> Retrying Application Server: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<submit next= "/CVP/Server"

namelist="MSG_TYPE CALL_ID CALL_SEQ_NUM ERROR_CODE CALLCED FROM_EXTVXML0 FROM_EXTVXML1 FROM_EXTVXML2 FROM_EXTVXML3 PODID" fetchtimeout="7s"/>

</catch>

<catch event = "error">

<if cond="DEBUG == '1'">

<log> General Error encountered when trying to contact Application Server.  Going to Recovery VXML: CallID: <value expr="CALL_ID"/>

: CallSeqNum: <value expr="CALL_SEQ_NUM"/>

</log>

</if>

<goto next="crtp:/SDocuments/Recovery.vxml"/>

</catch>

<catch event="telephone.disconnect.hangup">

<assign name="ERROR_CODE" expr="1"/>

<submit next= "/CVP/Server"

namelist="MSG_TYPE CALL_ID CALL_SEQ_NUM ERROR_CODE CALLCED FROM_EXTVXML0 FROM_EXTVXML1 FROM_EXTVXML2 FROM_EXTVXML3 PODID" fetchtimeout="7s"/>

</catch>

<catch event="connection.disconnect.hangup">

<assign name="ERROR_CODE" expr="1"/>

<submit next= "/CVP/Server"

namelist="MSG_TYPE CALL_ID CALL_SEQ_NUM ERROR_CODE CALLCED FROM_EXTVXML0 FROM_EXTVXML1 FROM_EXTVXML2 FROM_EXTVXML3 PODID" fetchtimeout="7s"/>

</catch>

<!--submit next block -->

<block>

<submit next= "/CVP/Server"

namelist="MSG_TYPE CALL_ID CALL_SEQ_NUM ERROR_CODE CALLCED FROM_EXTVXML0 FROM_EXTVXML1 FROM_EXTVXML2 FROM_EXTVXML3 PODID" fetchtimeout="7s"/>

</block>

</form>

</vxml>

Étape 4. Un nouveau TCP connecte VVB au serveur CVP VXML et appelle dans l'application CVP.

256573: Oct 23 10:10:36.871 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch:    http://10.66.75.48:7000/CVP/en-us/../Server?application=HelloWorld&callid=B42C46800001000000000065085143&_dnis=7001&_ani=60006099

Capture de paquet :    [PSH, ACK] VVB au port CVP [7000] :

GET /CVP/en-us/../Server?application=HelloWorld&callid=B42C46800001000000000065085143&_dnis=7001&_ani=60006099 HTTP/1.1

User-Agent: Cisco Voice Browser/1.0 (Cache activated)

Accept: text/vxml, application/vxml, application/vxml+xml, *; q=.2, */*; q=.2

Host: 10.66.75.48:7000

Connection: keep-alive

CVP envoie l'OK 200 à VVB :   [PSH, ACK] CVP (PORT 7000) à VVB

256576: Oct 23 10:10:36.881 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP 200 OK

Capture de paquet :

HTTP/1.1 200 OK

Server: Apache-Coyote/1.1

Set-Cookie: JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; Path=/CVP/; HttpOnly

Content-Type: text/xml;charset=UTF-8

Transfer-Encoding: chunked

Date: Sun, 22 Oct 2017 23:35:55 GMT

CVP envoie le document VXML : calling_into=HelloWorld

256581: Oct 23 10:10:36.881 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.01, URI: http://10.66.75.48:7000/CVP/en-us/../Server?application=HelloWorld&callid=B42C46800001000000000065085143&_dnis=7001&_ani=60006099

http://10.66.75.48:7000/CVP/en-us/../Server?application=HelloWorld&callid=B42C46800001000000000065085143&_dnis=7001&_ani=60006099

256582: Oct 23 10:10:36.881 AEST %MIVR-SS_VB-7-UNK:Content of VXML Document:

<?xml version="1.0" encoding="UTF-8"?>

<vxml version="2.0" application="/CVP/Server?audium_root=true&amp;calling_into=HelloWorld">

<catch event="error">

<var name="audium_action" expr="'custom_disconnect'" />

<var name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action" />

</catch>

<form>

<block>

<assign name="audium_vxmlLog" expr="''" />

<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog" />

</block>

</form>

</vxml>

Étape 5. VVB appelle dans l'application et obtient le document VXML.

256606: Oct 23 10:10:36.884 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Browser.makeRequest(): got encoded uri=http://10.66.75.48:7000/CVP/Server?audium_root=true&calling_into=HelloWorld

Capture de paquet :  [PSH, ACK] VVB à CVP (PORT 7000)

GET /CVP/Server?audium_root=true&calling_into=HelloWorld HTTP/1.1

Cookie: JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; HttpOnly=

User-Agent: Cisco Voice Browser/1.0 (Cache activated)

Accept: text/vxml, application/vxml, application/vxml+xml, *; q=.2, */*; q=.2

Host: 10.66.75.48:7000

Connection: keep-alive

CVP envoie l'OK 200

256613: Oct 23 10:10:36.896 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP 200 OK

Capture de paquet :   [PSH, ACK] CVP à VVB

HTTP/1.1 200 OK

Server: Apache-Coyote/1.1

Content-Type: text/xml;charset=UTF-8

Transfer-Encoding: chunked

Date: Sun, 22 Oct 2017 23:35:55 GMT

CVP envoie le document VXML :    [ACK] CVP (port 7000) à VVB

256617: Oct 23 10:10:36.896 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.012, URI: http://10.66.75.48:7000/CVP/Server?audium_root=true&calling_into=HelloWorld

256618: Oct 23 10:10:36.901 AEST %MIVR-SS_VB-7-UNK:Content of VXML Document:

<?xml version="1.0" encoding="UTF-8"?>

<vxml version="2.0">

<script><![CDATA[function getElapsedTime(startTime)

{

var numMilliseconds = new Date().getTime();

return numMilliseconds - startTime;

}]]></script>

<property name="universals" value="help" />

<var name="audium_vxmlLog" expr="''" />

<var name="audium_element_start_time_millisecs" expr="0" />

<var name="cisco_vxml_error_count" expr="0" />

<var name="audium_type" />

<catch event="vxml.session.error">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="telephone.disconnect.transfer">

<var name="audium_action" expr="'call_transfer'" />

<assign name="audium_type" expr="'telephone.disconnect.transfer'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="telephone.disconnect.hangup">

<var name="audium_action" expr="'hangup'" />

<assign name="audium_type" expr="'telephone.disconnect'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="telephone.disconnect">

<var name="audium_action" expr="'hangup'" />

<assign name="audium_type" expr="'telephone.disconnect'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="help">

<throw event="nomatch" />

</catch>

<catch event="error.unsupported.object">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.unsupported.language">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.unsupported.format">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.unsupported.element">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.unsupported.builtin">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.unsupported">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.semantic">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.noauthorization">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.eventhandler.notfound">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.connection.noroute">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.connection.noresource">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.connection.nolicense">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.connection.noauthorization">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.connection.baddestination">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.condition.baddestination">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.resource.failure.tts">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.resource.failure.asr">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.media.resource.unavailable">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.handoff.failure">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.callhandoff.failure">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.aaa.authorize.failure">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.com.cisco.aaa.authenticate.failure">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.badfetch.https">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.badfetch.http">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error.badfetch">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="error">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="disconnect.com.cisco.handoff">

<if cond=" ( cisco_vxml_error_count &gt;= 3 ) ">

<var name="caller_input" expr="'system_unavailable'" />

<return namelist="caller_input" />

</if>

<var name="audium_action" expr="'error'" />

<assign name="audium_type" expr="_event" />

<var name="audium_message" expr="_message" />

<assign name="cisco_vxml_error_count" expr="cisco_vxml_error_count + 1" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_message audium_action audium_vxmlLog" />

</catch>

<catch event="connection.disconnect.transfer">

<var name="audium_action" expr="'call_transfer'" />

<assign name="audium_type" expr="'connection.disconnect.transfer'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="connection.disconnect.hangup">

<var name="audium_action" expr="'hangup'" />

<assign name="audium_type" expr="'connection.disconnect'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="connection.disconnect">

<var name="audium_action" expr="'hangup'" />

<assign name="audium_type" expr="'connection.disconnect'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action audium_vxmlLog" />

</catch>

<catch event="com.audium.vxml.event">

<var name="audium_action" expr="'vxml_event'" />

<var name="audium_error" expr="_message" />

<assign name="audium_type" expr="_message" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_error audium_action" />

</catch>

<catch event="com.audium.error">

<var name="audium_action" expr="'custom_disconnect'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action" />

</catch>

<catch event="com.audium.disconnect">

<var name="audium_action" expr="'custom_disconnect'" />

<assign name="audium_type" expr="'disconnect.audium'" />

<submit next="/CVP/Server" method="post" namelist="audium_type audium_action" />

</catch>

</vxml

Étape 6. VVB envoie la requête de POST pour le fichier audio.

256695: Oct 23 10:10:36.914 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch:    http://10.66.75.48:7000/CVP/Server

256696: Oct 23 10:10:36.914 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Setting cookie : JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; HttpOnly=

Capture de paquet :   [PSH, ACK] VVB à CVP (port 7000)

POST /CVP/Server HTTP/1.1

User-Agent: Cisco Voice Browser/1.0

Accept: text/vxml, application/vxml, application/vxml+xml, *; q=.2, */*; q=.2

Content-Type: application/x-www-form-urlencoded

Cookie: JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; HttpOnly=

Host: 10.66.75.48:7000

Connection: keep-alive

Content-Length: 15

CVP envoie l'OK VVB 200

Capture de paquet :  [PSH, ACK] CVP à VVB

audium_vxmlLog=HTTP/1.1 200 OK

Server: Apache-Coyote/1.1

Content-Type: text/xml;charset=UTF-8

Transfer-Encoding: chunked

Date: Sun, 22 Oct 2017 23:35:55 GM

CVP envoie au résultat de requête de POST de contenu VVB avec le chemin sonore de nom du fichier et de source.

<audio src="https://www.cisco.com/CVP/audio/helloworld_audio.wav">You have successfully installed the Cisco Unified V X M L server.</audio>

Logs VVB :

256714: Oct 23 10:10:36.919 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.005, URI: http://10.66.75.48:7000/CVP/Server

256716: Oct 23 10:10:36.919 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Content of POST query:

audium_vxmlLog=

256717: Oct 23 10:10:36.920 AEST %MIVR-SS_VB-7-UNK:Content of VXML Document:

<?xml version="1.0" encoding="UTF-8"?>

<vxml version="2.0" application="/CVP/Server?audium_root=true&amp;calling_into=HelloWorld">

<form id="audium_start_form">

<block>

<assign name="audium_vxmlLog" expr="''" />

<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()" />

<goto next="#start" />

</block>

</form>

<form id="start">

<block>

<prompt bargein="true">

<audio src="https://www.cisco.com/CVP/audio/helloworld_audio.wav">You have successfully installed the Cisco Unified V X M L server.</audio>

</prompt>

<assign name="audium_vxmlLog" expr="audium_vxmlLog + '|||audio_group$$$' + 'initial_audio_group' + '^^^' + application.getElapsedTime(audium_element_start_time_millisecs)" />

<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog" />

</block>

</form>

</vxml>

Étape 7. VVB cherche le fichier audio et vérifie si le fichier audio est modifié.

Si-Aucun-correspondance : W/"68192-1468638242000" (de la capture de paquet)

Logs VVB :

256798: Oct 23 10:10:36.923 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch:    http://10.66.75.48:7000/CVP/audio/helloworld_audio.wav

Capture de paquet :  [PSH, ACK] VVB à CVP (port 7000)

GET /CVP/audio/helloworld_audio.wav HTTP/1.1

Cookie: JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; HttpOnly=

User-Agent: Cisco Voice Browser/1.0 (Cache activated)

Accept: *, */*

If-None-Match: W/"68192-1468638242000"

Cache-Control: max-age=0

Host: 10.66.75.48:7000

Connection: keep-alive

If-Modified-Since: Sat, 16 Jul 2016 03:04:02 GMT

Paquet de paquet :  CVP à VVB confirme le fichier audio n'a pas été modifié

HTTP/1.1 304 Not Modified (from packet capture)

HTTP Response is from Cache (VVB log )

Logs VVB :

256800: Oct 23 10:10:36.931 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP 200 OK

256801: Oct 23 10:10:36.931 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Browser.processHttpResponse() hc is CachedHttpURLConnection

256802: Oct 23 10:10:36.931 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP Response is from Cache

Capture de paquet :   [PSH, ACK] CVP à VVB

HTTP/1.1 304 Not Modified

Server: Apache-Coyote/1.1

ETag: W/"68192-1468638242000"

Date: Sun, 22 Oct 2017 23:35:55 GMT

Étape 8. VVB lit le fichier audio.

256805: Oct 23 10:10:36.931 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Play:     http://10.66.75.48:7000/CVP/audio/helloworld_audio.wav

Étape 9. VVB envoie la requête de POST après qu'OBTENIEZ avec succès le fichier audio et clôture cette session TCP.

256828: Oct 23 10:10:36.933 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Browser.makeRequest(): else branch

256829: Oct 23 10:10:36.934 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch:    http://10.66.75.48:7000/CVP/Server

Capture de paquet :   [PSH, ACK] VVB à CVP (port 7000)

POST /CVP/Server HTTP/1.1

User-Agent: Cisco Voice Browser/1.0

Accept: text/vxml, application/vxml, application/vxml+xml, *; q=.2, */*; q=.2

Content-Type: application/x-www-form-urlencoded

Cookie: JSESSIONID=32868A579F1F48F50A6CC362EBF3F256; HttpOnly=

Host: 10.66.75.48:7000

Connection: keep-alive

Content-Length: 74

audium_vxmlLog=%7C%7C%7Caudio_group%24%24%24initial_audio_group%5E%5E%5E11

CVP envoie à l'OK VVB 200

Capture de paquet : [PSH, ACK] CVP (port 7000) à VVB

200 OK

Server: Apache-Coyote/1.1

Content-Type: text/xml;charset=UTF-8

Transfer-Encoding: chunked

Date: Sun, 22 Oct 2017 23:35:55 GMT

256846: Oct 23 10:10:36.937 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Fetch: HTTP 200 OK

256848: Oct 23 10:10:36.937 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Successfully fetched bytes: 0, duration(s): 0.004, URI: http://10.66.75.48:7000/CVP/Server

256849: Oct 23 10:10:36.938 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] fetchVxmlDoc :: Closing output stream

CVP envoie à VVB :  Contenu de requête de POST de retours CVP :

256850: Oct 23 10:10:36.938 AEST %MIVR-SS_VB-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] Content of POST query:

audium_vxmlLog=%7C%7C%7Caudio_group%24%24%24initial_audio_group%5E%5E%5E11

256851: Oct 23 10:10:36.938 AEST %MIVR-SS_VB-7-UNK:Content of VXML Document:

<?xml version="1.0" encoding="UTF-8"?>

<vxml version="2.0" application="/CVP/Server?audium_root=true&amp;calling_into=HelloWorld">

<catch event="error.com.cisco.callhandoff.failure">

<cisco-typeaheadflush />

<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog" />

</catch>

<form id="audium_start_form">

<block>

<assign name="audium_vxmlLog" expr="''" />

<assign name="audium_element_start_time_millisecs" expr="new Date().getTime()" />

<goto next="#start" />

</block>

</form>

<form id="start">

<object name="dummyobj" classid="builtin://com.cisco.callhandoff">

<param name="return" expr="true" valuetype="data" />

<param name="app-uri" expr="'builtin://dummyobj'" valuetype="data" />

<filled>

<submit next="/CVP/Server" method="post" namelist="audium_vxmlLog" />

</filled>

</object>

</form>

</vxml>

Étape 10. VVB reçoit le BYE de CVP et termine cet appel.

256921: Oct 23 10:10:43.139 AEST %MIVR-JASMIN-7-UNK:[CALLID=B42C468000010000000000650851430A-150871535521622] SIP-ltp92-88881111*, State=CONNECTED: Processing BYE from remote party.