XCALLY MOTION Open Channel allows you to interact with your customers using potentially any channel.
You can interact with a chat, messaging system, video or any other application: in fact, a received interaction can be routed inside a queue and the agents belonging to it can reply to messages through the Motion OmniDesktop interface.
The integration allows you to exchange or text or attachments. To send both text and attachments, you must send more messages
Build your own Channel service
In this section you find how to build your own Open Channels.
Follow the next steps to learn:
- how to receive messages from Motion to your Open Channel service
- how to send messages to Motion from your Open Channel service
Receive messages from Motion
The API URL that Motion application uses to send a message is decided by you and it’s written in Reply URL parameter.
The HTTP POST method must be used.
Example If you create a PHP file to handle the communication between XCALLY Motion and your desired service, remember that you can't access directly in $_POST but you need to add the following row in your code: $_POST = json_decode(file_get_contents('php://input'), true);
The system will request your API endpoint adding the following parameter in the body request:
|body||Text of the message sent by Motion|
|Contact||CM Contact details:|
○ date Of Birth
|Attachment Id||Attachment id (attachment filename is written in the body parameter)|
Download attachments from Motion
The API returns a file stream and requires authentication
If the message contains an attachment (AttachmentId parameter is different by NULL) you can download the file using the following API:
Send messages to Motion
The API URL is auto-generated when you create a new Open Channel account and you can retrieve it from Settings tab.
The HTTP POST method must be used.
In the following table you can find the default parameters that you can use in the body of the request:
|from||mandatory Customer Identifier (this paramenter will be use for contact search by the system)|
|body||mandatory Text of the message|
|mapKey||mandatoryContact Manager contact field where the system will perform the search|
|Attachment Id||Attachment id|
In addition to default parameters, you can insert Contact fields as extra parameters in body request:
If you want to link a file to an incoming Open Channel message, remember first to upload the file and set the AttachmentId in the request body
For each message sent to Motion, the system will search the contact in the Contact Manager List and associate it to the Open Channel interaction. If the contact is not found, the system will create a new contact in the selected Contact Manager list, having the following properties:
- Contact field value written in mapKey is equal to from request parameter
- Contact firstName is equal to from request parameter
- Contact phone is equal to from request parameter
- All extra parameters (Contact field) written in the request will be set in the new Contact
Upload attachments to Motion
In order to upload a file, you need to use the following API:
As response body, the system will return the object just created and you can use the property id in the body of the request for creating a new Open Channel message.
The API requires a file stream and authentication
Open Channel Accounts
In the Open Channel Accounts section, you can create, edit or delete Open Channel Accounts. This step is mandatory for configuring a new channel.
In the accounts list view, filter, delete (one or many accounts) and export the list in CSV format.
Create a new Account
Use the New Account button and insert the following information:
- Reply URL (HTTP endpoint that Motion will use to send a new message)
- List name (choose one)
You can also add an optional description and at the end confirm creation.
About Reply URL If the Reply URL field is empty, the Agent will not be able to create interactions or to reply to them (the text area is disabled).
When the Account is created you can edit it and change the configuration parameters.
On the Open Channel Accounts list click on related to the one you want to edit/modify in order to:
- Edit the OC Account
- Go to Interactions list for the Account
- Add Agent to OC Account
- Delete OC Account
In the Settings Section you can see and change all the information you inserted during the account creation.
Moreover, you have the Receive URL field that you will use (you can copy it clicking on the button on the left of the pathname) in the configuration later: it is the auto-generated API URL you need to use to receive the messages inside your Open Channel from your external application (POST method must be used).
You can assign a field contained in the list as a Map Key and describe it: when you start an interaction addressing any member of the list using this open channel account, the value you insert as interaction receiver will be searched in this field in the CM.
About the new field: Wait for the Assigned Agents It is the default time in seconds any new interaction belonging to an existing conversation waits for the same agent that is currently managing it, when the agent is not available on the system (paused or logged out). The allowed values range is 1-2147483 (default is 10 seconds)
The Administrator can customize the notification of a new interaction in order to show to the Agent information about the source, the sender, the recipient queue and so on.
The Setting section of the Notification is under the general settings of a channel account and allows to:
- enable/disable the notification sound
- enable/disable the notification shake effect
- define notification contents and style in the Template section (here you can define which information to show about the specific interaction using XCALLY Motion variables)
Toggle to enable/disable the Agent transfer to a queue or to another agent and set the specific timeout (the time in seconds the message will wait to be accepted before returning back as unread).
If this switch is on, the Agent will be able to Transfer an interaction, like in the following example (queue): click on and then Transfer
If you want to use proxy to access the open channel service from an application, you can use the token written in this section:
For any further information, please contact XCALLY Team at firstname.lastname@example.org.
Mandatory Disposition: enable it you want the Agent to be forced to dispose the interactions managed and set the Agent pause status to be automatically applied during this operation (default=NO).
When you enable this feature a new field will be displayed: click on the field to view all the available pauses and select one.
The Disposition is a label (or a set of labels, maximum in a three level hierarchy) that can be applied to each interaction record in order to better describe it.
For example, an Agent who has managed a call can use a disposition in order to indicate the type or resolution of the call itself, but this can be done for any type of interaction (as email, chat, sms, whatsapp messages, and so on) when this is closed.
By default, the following dispositions are usually available on your system (if your Administrator has not deleted one or more of them) :
- Answer Machine
- Not Interested
but new Dispositions which are more suitable to your organization can be easily created. In the Tools- Dispositions section the Administrator can add global dispositions available for all the environment, in addition to specific dispositions that can be created for specific environments (as lists, channel accounts and websites).
To create a specific environment disposition, click on New Disposition and enter the details:
- Name: name of the disposition that will be displayed for agents managing contacts in this list
- Description (optional)
- First Level Disposition (optional): choose, from among the dispositions already present on the system, a disposition to which this refers in a two-level hierarchical relationship
- Second Level Disposition (Optional): choose, from among the dispositions already present on the system, a disposition to which this refers in a three-level hierarchical relationship
Click Save to confirm. After the disposition is created, you can view, edit or delete it (in the List of Dispositions)
Multi level dispositions You have the possibility to create multiple level (maximum 2) for each disposition: In the example shown in the image above, when Agents close and dispose an interaction they can choose a single level or a multi-level disposition (for example the combination # 1 # 5 # 7 or the combination # 1 # 5 # 6)
Here you can set a list of canned answers that will be available only when the interaction comes from that Account.
Click on to find a specific item from the list:
or click on to add a new one:
Canned Answers can be deleted or edited and modified: click on and choose the command you want to start:
General (marked by a icon) and Local (specific for Account and marked by the Channel type icon) Canned Answers will be available in a blended list when editing messages in the Agent interface
In this section you can define the applications that will be executed when there is an incoming message in the Open channel account:
Drag and drop the application you want to add and edit it clicking on the bar to show the command menu:
and insert your configuration parameters and intervals.
You can, for example:
- route the incoming message to a particular agent (application Agent)
- set an automatic answer to a message (application Auto Reply)
- queue an incoming message in a particular Open Channel queue (Application Queue)
- skip to another application (Application Gotop)
- conditional skip to another application (Application Gotoif)
- add a log for debugging (Application Noop)
- close the interaction (Application Close)
Remember application execution depends on: ○ the position of the application in the actions table. If you add multiple applications, execution starts from the top application and continues until the bottom. ○ the time interval that defines when an application can be executed (by default, it’s set to always).
This section shows the list of all interactions occurred for the specific channel Account:
You can filter the interaction list by Start Date, Read/Unread, Status (Open/Closed), Website, Agent, Tags:
or use the button to activate the Advanced Search and select a field to be matched with a value among a list of all those available.
When you click this button, the system will show you the following form:
- Select the Field (scroll the list of all the available search fields)
- Select the Operator among those available (eg.: equals, contains, starts with, and so on)
- Select or insert the Value
Add the Condition (click on )
To add more conditions repeat the operation, like in the following example:
and choose whether the conditions must all be met:
or at least one of them:
When you finish, click on the button in order to start the search: the query is executed and all the items that match the conditions inserted are shown.
If you want to delete the advanced search condition inserted click on the single search condition button to delete it or click on the button in order to delete all the conditions set at once.
On this form it is possible to:
- modify a condition set: click on a set condition and press Edit
now change the condition as you like(field, operator, value)
- temporarily disable the search condition: click on the set condition and press Disable:
and enable it again
When an advanced search selection is active As long as the search conditions are operational, the Advanced Search button will notify it by changing its color (light blue on a white background) and blinking The Advanced Search conditions will search all the List of the available entries, regardless of any filter applied to the list view using the above mentioned filters:
On this list, you can select one or many mail interactions and download the information about them in a CSV file (click on the corresponding checkbox and then on the icon ) or delete them (click on the corresponding checkbox and then on the trash bin ):
The Supervisor can activate the three dots command menu on a single interaction:
The commands available here operate as follows:
- Spy the contents of an interaction thread. Here the Supervisor can add an internal note (this will not be viewed by customers but only by internal agents), like in the following example:
- Download with Attachments downloads a zip file containing all the messages (text messages and attachments) exchanged in the interaction
- Download without Attachments downloads a zip file containing all the messages (just text messages without the attachments) exchanged in the interaction
- Delete Interaction permanently (a confirmation is required)
Interactions log files Interactions history is saved in files which are specific per channel.
Add Agent to Open Channel Account
On the OC Accounts list you can add Agents in two ways:
- select the OC Account and click on , than choose the menu entry Add Agent to Open Cahnnel Account:
- edit the OC Account and than click on the add menu button:
and select the agents from the list:
If the agents are not added to the OC Account, they will not be able to see the interactions exchanged in this account interactions list.
Add Agents Remember to add the selected Agents to any new OC Account you create!
Open Channel Queues
In the Open Channel Queues section, you can create, edit, delete or associate agents/teams to an Open Channel queue.
In the list view, you can sort, filter or export the lists in CSV format.
Create a new Queue
To create a new queue click on the add Button and insert the following values:
- Name: queue name
- Strategy: choose between Beepall or RRMemory
- Agent Timeout: timeout in seconds for waiting the agent to accept the interaction on the queue
and Add the OC Queue
You can edit a queue in order to change the Strategy or Timeout set during creation.
Add Agents/Teams to Queues
Click on the of the queue you want to add Agents and choose the proper command (Add Agent):
and choose the Agents to add:
Remember all changes are immediately effective.
The same operation can be done adding Lists to a Queue.