Third Party email object routing - email conversation "attributes" property within architect -

Hi everyone:

How can we get in architect a Third party chat/email object to obtains its "attributes" property and their Properties Map<string,string>?
For example: I POST a new email conversation with custom "attributes" and want to execute a PureCloud Data Action to lookup if the customer exists in External Contacts and want to display in a Script all the "attributes" properties Map in order to allow to the agent to know the customer information.

I appreciate your help!

I did not incorporate a data action, but I submitted the following 3rd party email item:

{
"queueId": "",
"flowId": "4670ef9a-fc13-4aac-b3f8-5ef61f1c709e",
"provider": "Jim Crespino Dev Tools",
"skillIds": [],
"languageId": "",
"priority": 0,
"attributes": {
"AccountNumber": "123456789",
"attr1": "value1",
"attr2": "value2"
},
"toAddress": "",
"toName": "",
"fromAddress": "jim.crespino@genesys.com",
"fromName": "Jim Crespino",
"subject": "Test2",
"direction": "INBOUND",
"htmlBody": "",
"textBody": "Test Body"
}

My Architect Email flow first uses “Get Participant Data” to read the “AccountNumber” attribute that I pass in and puts it into a variable called “State.AcctNbr” that I can then access in any other block in this block in this state of the flow. I use that variable in the “Set Attribute Data” block to reverse the account number and to add an additional attribute of “NewAttribute” that didn’t exist when I submitted the email. If you want to call a data action using attributes that you submit you can do that after the “Get Participant Data” block and based on the values you receive back from your data action you can add those as additional attributes using the “Set Participant Data”.

If I observe the Conversation after it runs through the flow and lands in the “Inbound Email” queue, you will see that the account number is reversed and it has the “NewAttribute” also:

{
"id": "e3557a1b-eb5e-4f84-8a34-42c964f148fe",
"startTime": "2019-09-26T20:03:06.711Z",
"participants": [
{
"id": "61d53acc-1319-4c10-b319-18064799c769",
"startTime": "2019-09-26T20:03:06.711Z",
"connectedTime": "2019-09-26T20:03:06.711Z",
"name": "Jim Crespino",
"queueId": "32c7466d-a6bf-4081-af0d-3e468831b471",
"queueName": "Inbound Email",
"purpose": "customer",
"address": "jim.crespino@genesys.com",
"wrapupRequired": false,
"attributes": {
"NewAttribute": "Jim",
"attr2": "value2",
"attr1": "value1",
"AccountNumber": "987654321"
},
"calls": [],
"callbacks": [],
"chats": [],
"cobrowsesessions": [],
"emails": [
{
"state": "connected",
"id": "fc9217a9-8bff-46a1-82f9-37390a34caea",
"held": false,
"subject": "Test2",
"messagesSent": 1,
"segments": [
{
"startTime": "2019-09-26T20:03:06.711Z",
"type": "Interact",
"howEnded": "Disconnect"
}
],
...

I hope that helps.

1 Like

Thank you so much Jim!
I will configure it in that way.

It works!
Thank you so much!

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.