Type: Genesys LiveChat Worker
A Genesys LiveChat worker will route a conversation to a live agent in a Genesys chat Workspace. This uses Genesys' Chat API Version 2.
Note: Genesys LiveChat workers cannot be interacted with directly by users, they must be transferred to an agent on Genesys LiveChat through a flow worker first.
To connect your Genesys LiveChat to ServisBOT you will need two things:
Using these you can use the cli to create a new worker with a configuration like this:
{
"Data": {
"GenesysUrl": "https://core.demo.genesys.com",
"GenesysServiceName": "customer-support",
"SlashCommands": {}
},
"Config": {},
"Enabled": true,
"Description": "Live chat for genesys",
"Type": "genesys-livechat-v2-worker",
"Name": "GenesysLivechatAlpha"
}
Before you can transfer to a Genesys LiveChat agent you must set some variables that Genesys requires to start a chat. This information should relate to the user.
Use the setContext node to set these values in the flow context.
Depending on your Digital Channel configuration the emailAddress field might be required and be a configured in Genesys to be allowed make chat requests.
Once these values are set use the pushBotSoStack node and select a bot configured with a your Genesys LiveChat worker
When you return to the original Bot after being transferred to a bot containing an Genesys LiveChat Worker there are certain items available in context
Contains the reason the session with the connect worker has ended. Current values:
Contains the last known agent in the conversation in the form of
{ AgentName: "Agent" }
This requires the customer email to be set in context.
The example slash command would be:
"SlashCommands": {
"/email": {
"description": "Send an email to the customer",
"actions": [
{
"type": "executeApi",
"value": "sendEmail"
}
]
}
}
Baas Example:
{
"Persona": "/images/blueprints/Amazon-Simple-Email-Service-SES.png",
"Organization": "shane",
"Description": "!Ref:::Parameters.baasDescription",
"RequestMapping": {
"Email": {
"type": "requestBody",
"requestBodyPath": "$.Destination.ToAddresses[0]",
"inputPath": "$.email"
}
},
"ResponseMapping": {},
"Type": "aws-sdk",
"Body": {
"Message": {
"Body": {
"Text": {
"Data": "body of the email"
}
},
"Subject": {
"Data": "Subject here"
}
},
"Source": "YOUR_SOURCE@EMAIL.HERE"
},
"Created": 1585815972627,
"Credentials": "srn:vault::YOURORG:cross-account-role:somesecret",
"Method": "sendEmail",
"Endpoint": "SES",
"Alias": "sendEmail",
"Updated": 1585818222020,
}