Versions Compared

Key

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

...

  • channel.externaldispositions.updated

...

interaction.request.incontact.

...

signal (InContact only)

Retrieves the list of scripts available for the channel. Scripts are limited by the channel type.Requests that a signal is sent to the active script for the interaction.

Request

Code Block
languagejson
{
  "command": "channelinteraction.request.incontact.getscriptssignal",
  "target": "<session-id>.<channel-id>.<interaction-id>" |
  "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",
  "data":
  {
    "p1": "<some_value>",
    <continued valaues for p2-p20.  Only those items that have values should be included>
  }
}

Success Response

Code Block
languagejson
{
  "command": "channelinteraction.request.incontact.getscriptssignal",
  "target": "<session-id>.<channel-id>.<interaction-id>" |
  "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",
  "result": "success",
  "data":
  {
    "scripts":
    [
      {
     }
}

Failure Response

Code Block
languagejson
{
  "scriptIdcommand": "<script_id>interaction.request.incontact.signal",
   
    "scriptNametarget": "<script_name>"
      }
    ]
  }
}

Failure Response

Code Block
languagejson
{
  "command": "channel.request.incontact.getscripts",
  "target": "<session-id>.<channel<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>
  }
}

Secondary Events

Placing an outbound call on a channel will generate the following secondary events:

  • channel.infochanged

  • state.updated (channel state event)

  • interaction.created

  • state.updated (interaction state event)

  • conversation.created

  • state.updated (conversation state event)

  • conversation.member.added

  • conversation.initialized

  • interaction.datachanged

  • interaction.preview

  • interaction.initialized

interaction.accept (Telephony and Multimedia)

Accepts an alerting interaction.  A new interaction, whether from an inbound call or multimedia contact, will generate an "interaction.preview" event.  However, Signaling a script can have any number of side-effects. There may be changes to the call state or the results might be completely hidden from the agent.

interaction.accept (Telephony and Multimedia)

Accepts an alerting interaction.  A new interaction, whether from an inbound call or multimedia contact, will generate an "interaction.preview" event.  However, the interaction is still not officially assigned to the agent.  The agent must accept the interaction before it is assigned.  Although this request can be used to accept in inbound phone call, it is recommended for clients to use the telephony specific "conversation.answer" request instead.  A failure is generated if the interaction cannot be assigned to the agent.

...

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

...

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

interaction.incontact.signaladded

Indicates the provided signal is now available to use with the referenced interaction. These signals are accessed through the incontact specific Launch functionality

Code Block
languagejson
{
  "messageType": "objectEvent",
  "target": "<session-id>.<channel-id>.<interaction-id>" | "<session-id>.<channel-group-id>.<channel-id>.<interaction-id>",
  "name": "interaction.incontact.signaladded",
  "data":
  {
    "name": "<signal name>",
    "tooltip": "<signal tooltip>",
    "p1": "<some value>",
    <continued values from p2-p20.  Only those properties with values will be present>
  }
}

interaction.incontact.signalremoved

Indicates the provided signal is no longer available to use with the referenced interaction.

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": "conversationinteraction.incontact.updatedsignalremoved",
  "data":
  {
    "name":  <platform-specific-conversation-data>"<signal name>"
  }
}