Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Attempts to stop call recording.  If recording is already stopped, this should successfully return.

Request

{

Code Block
languagejson
{
  "command": "interaction.request.recording.stop",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "data": {}

...


}

Success Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.stop",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.stop",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Performing stop recording will generate the following secondary events:·      

  • state.updated (interaction state event)

interaction.request.recording.pause (Telephony only)

Attempts to pause call recording.  Not all platforms will support the pause operation and will return an unsupported error.

Request

{

Code Block
languagejson
{
  "command": "interaction.request.recording.pause",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "data": {}

...


}

Success Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.pause",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.pause",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Performing pause recording will generate the following secondary events:·      

  • state.updated (interaction state event)

interaction.request.recording.resume (Telephony only)

Attempts to resume call recording.  Not all platforms will support the resume operation and will return an unsupported error.

Request

{

Code Block
languagejson
{
  "command": "interaction.request.recording.resume",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "data": {}

...


}

Success Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.resume",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{

...


  "command": " interaction.request.recording.resume",

...


  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",

...


  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Performing resume recording will generate the following secondary events:·      

  • state.updated (interaction state event)

conversation.answer (Telephony only)

Answers an inbound phone call.  This request also assigns the interaction to the agent as if "interaction.accept" were used.  A failure is generated if the call cannot be answered.

Request

{

Code Block
languagejson
{
  "command": "conversation.answer",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "data": {}

...


}

Success Response

Code Block
languagejson
{

...


  "command": "conversation.answer",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block

{

languagejson
{
  "command": "conversation.answer",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Answering an inbound call will generate the following secondary events:·      

  • state.updated (conversation state event)

...

  • interaction.screenpop

...

  • state.updated (interaction state event)

conversation.release (Telephony only)

Disconnects the agent from an active phone call.  If a two-party call is released both the agent and other party are disconnected.  If a multi-party conference is released, only the agent is removed from conference while the remaining parties stay in conference.  A failure is generated if the call cannot be disconnected.

Request

{

Code Block
languagejson
{
  "command": "conversation.release",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "data": {}

...


}

Success Response

Code Block
languagejson
{

...


  "command": "conversation.release",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{

...


  "command": "conversation.release",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Releasing an active call will generate the following secondary events:·      

  • state.updated (conversation state event)

...

  • conversation.disposed

...

  • interaction.ended (if only conversation is released)

...

  • state.updated (interaction state event)

conversation.hold (Telephony only)

Places the target conversation on hold.  A failure is generated if the call cannot be held.

Request

Code Block
languagejson
{

...


  "command": "conversation.hold",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "data": {}

...


}

Success Response

{

Code Block
languagejson
{
  "command": "conversation.hold",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{

...


  "command": "conversation.hold",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Holding an active call will generate the following secondary events:·      

  • state.updated (conversation state event)

conversation.retrieve (Telephony only)

Retrieves the target conversation from hold.  A failure is generated if the call cannot be retrieved.

Request

{

Code Block
languagejson
{
  "command": "conversation.retrieve",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "data": {}

...


}

Success Response

{

Code Block
languagejson
{
  "command": "conversation.retrieve",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}

}

Failure Response

{


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block
languagejson
{
  "command": "conversation.retrieve",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Retrieving a held call will generate the following secondary events:·      

  • state.updated (conversation state event)

conversation.mute (Telephony only)

Places the target conversation on mute.  A failure is generated if the call cannot be muted.

Request

Code Block
languagejson
{

...


  "command": "conversation.request.mute",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "data": {}

...


}

Success Response

{

Code Block
languagejson
{
  "command": "conversation.request.mute",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "success",

...


  "data":

...

{

<Same data contents as original request>

}


  {
    <Same data contents as original request>
  }
}

Failure Response

Code Block

{

languagejson
{
  "command": "conversation.request.mute",

...


  "target": "<session-id>.<channel-id>.<interaction-id>.

...

<conversation.id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>.

...

<conversation.id>",
  "result": "failure",

...


  "failure":

...

{


  {
    "code": "<error-code-for-failure>",

...


    "message": "<error-message>",

...


    "context": "<stack-trace-if-applicable>"

...

}


  },
  "original":

...

<Contains the original request JSON structure>


  {
    <Contains the original request JSON structure>
  }
}

Secondary Events

Muting an active call will generate the following secondary events:·      

  • state.updated (conversation state event)

conversation.unmute (Telephony only)

...