Versions Compared

Key

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

...

Unmutes the target conversation.  A failure is generated if the call cannot be unmuted.

Request

{

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

...


  "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.unmute",

...


  "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.unmute",

...


  "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

Unmuting a call will generate the following secondary events:·      

  • state.updated (conversation state event)

conversation.senddtmf (Telephony only)

Generates DTMF tones to the other parties on a call.  The request is used to produce DTMF tones for navigating automated systems using the client interface.  A failure is generated if DTMF cannot be sent.

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>

}


  {
    <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

Sending DTMF tones does not generate any secondary events.

...

Attempts to transfer the call to the given destination.  The call will be disconnected from the agent regardless of whether it is successful.  A failure is generated if the call cannot be transferred.

Request

Code Block
languagejson
{

...


  "command": "conversation.blindtransfer",

...


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

...

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

...

<conversation.id>",
  "data":

...

{


  {
    "destination": "[number-to-dial]"

...


  }

...


}

Success Response

Code Block
languagejson
{

...


  "command": "conversation.blindtransfer",

...


  "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.blindtransfer",

...


  "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

Performing a blind transfer will generate the following secondary events:·      

  • state.updated (conversation state event, original call)

...

  • conversation.disposed (original call)

...

  • interaction.focuschanged

...

  • interaction.ended (if only one call was active)

conversation.blindconference (Telephony only)

Attempts to conference the party at the given destination into the original call.  If successful, both parties will be in conference together.  A failure is generated if the call cannot be conferenced.

Request

Code Block
languagejson
{

...


  "command": "conversation.blindconference",

...


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

...

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

...

<conversation.id>",
  "data":

...

{


  {
    "destination": "[number-to-dial]"

...


  }

...


}

Success Response

Code Block
languagejson
{

...


  "command": "conversation.blindconference",

...


  "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
language

{

...

json
{
  "command": "conversation.blindconference",

...


  "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

Performing a blind conference will generate the following secondary events:·      

  • conversation.memeber.added (original call, destination party)

...

  • state.updated (conversation state event, original call)

Telephony and Multimedia Events

...

Indicates a new interaction has been created.  The target property identifies the channel associated with the interaction.  This event will appear during session initialization if the agent is already logged into the channel (recovering an active session or through some other mechanism).  It will also be raised in response to a successful session.addchannel or session.addchannelgroup request.

Code Block
{

...


  "messageType": "objectEvent",

...


  "target": "<session_id>.<channel-id>" | "<session_id>.<channelgroup_id>.<channel-id>",

...


  "name": "interaction.created",

...


  "data":

...

{


  {
    "interaction":

...

{


    {
      "id": "<interaction_id>",

...


      "nativeId": "<interaction_native_id>",

...


      "type": "TELEPHONY" | "EMAIL" | "CHAT" | "CALLBACK" | "<custom_type>",

...


      "modelType": "TELEPHONY" | "EMAIL" | "CHAT" | "CALLBACK" | "<custom_type>"

...


      <platform-or-type-specific-interaction-properties>

...

},

}


    }
  }
}

PureCloud Callback interactions will have an additional property "callbackNumbers" that is an array of string values representing the phone numbers that will be used to initiate outbound callbacks.

...

Indicates the allowable set of interaction dispositions for a channel have changed.  It will be raised in response to a successful channel.request.externaldispositions request.

Code Block
languagejson
{

...


  "messageType": "objectEvent",

...


  "target": "<session_id>.<channel-id>" | "<session_id>.<channelgroup_id>.<channel-id>",

...


  "name": "channel.externaldispositions.updated",

...


  "data":

...

{


  {
    "dispositions":

...

[

{


    [
      {
        "interactionDispositionId":"<disposition-id>",

...


        "value":"<disposition-value>",

...


        "extensions":[],

...


        "labels":

...

[

{


        [
          {
            "language":"en",

...


            "country":"US",

...


            "name":"<disposition-name>",

...


            "description":"<disposition-description"

...

},

]

},

]

}


          },
          …
        ]
      },
      …
    ]
  }
}

conversation.updated

Indicates the data associated with a conversation has changed.  The most common use of this event is to notify the client that the native id for the conversation has changed.

Code Block
languagejson
{

...


  "messageType": "objectEvent",

...


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

...

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

...

<conversation.id>",
  "name": "conversation.updated",

...


  "data":

...

{


  {
    <platform-specific-conversation-data>

...


  }

...


}