Outbound campaign calls and extension point SaveLog interface

We have implemented the GenCloud outbound campaign functionality with the salesforce installed package Genesys Cloud for Salesforce, version 4.11. We have configured the package to use the Lightning Message Channel Events as well as the Extension Point logic. And we have written an APEX class that performs the SaveLog and ScreenPop functions.

We are using the Preview Dialing mode for the Genesys campaign and we are allowing the agent to skip the preview of that call. Genesys routes the preview call to the agent. At that point, an event is also sent and the SendLog code is executed to write a salesforce task log for that outbound call.
If the agent chooses to 'skip' that call, that event has already logged a task record to that customer as having an outbound call placed. Which is not entirely accurate and the outbound call was never placed to the client.

What events can I use or what attributes can I evaluate and only write that task record when the agent actually places the call to the client? Some attributes I see that might be considered are: isDialerPreview, isDialer, direction, state. But these don't seem to allow me to recognize that the agent has placed the call and its not just that the agent is connected to the preview call.

Any suggestions would be greatly appreciated. Thanks. Marlys Sindelar. Principal Financial Group. sindelar.marlys@principal.com

Here's what I get from a preview campaign, from the time the callback comes in until the call is placed (emphasis added in bold for the line to pay attention to):

###{"category":"connect","data":{"id":"29ab52c9-43fa-405a-98dd-6e164e5a010b","connectedTime":"2022-09-19T20:26:52.700Z","name":"Customer","isConnected":true,"isDisconnected":false,"isDone":false,"state":"CONNECTED","isCallback":true,"isDialer":true,"isChat":false,"isEmail":false,"isMessage":false,"isVoicemail":false,"remoteName":"Customer","recordingState":"none","displayAddress":"","queueName":"RichardQueue","totalAcdDurationSeconds":3,"direction":"Outbound","isInternal":false,"startTime":"2022-09-19T20:26:49.493Z","isDialerPreview":true,"dialerContactId":"dc719a6e4f46bf696e6224fba03af1fb","dialerContactListId":"664149e9-d368-43ac-ae36-943a7b68b985","dialerCampaignId":"dad086fd-9e72-4ccb-b8fc-f8b9aba68a47","callbackNumbers":["+13172222222"]},"type":"Interaction"}
###{"category":"view","data":"Callback","type":"UserAction"}
###{"category":"routingStatus","data":"INTERACTING","type":"UserAction"}
###{"category":"view","data":"InteractionList","type":"UserAction"}
###{"category":"callbackPlaced","data":"29ab52c9-43fa-405a-98dd-6e164e5a010b","type":"Interaction"}
###{"category":"change","data":{"old":{"id":"29ab52c9-43fa-405a-98dd-6e164e5a010b","connectedTime":"2022-09-19T20:26:52.700Z","name":"Customer","isConnected":true,"isDisconnected":false,"isDone":false,"state":"CONNECTED","isCallback":true,"isDialer":true,"isChat":false,"isEmail":false,"isMessage":false,"isVoicemail":false,"remoteName":"Customer","recordingState":"none","displayAddress":"","queueName":"RichardQueue","ani":"Internal","totalAcdDurationSeconds":3,"direction":"Outbound","isInternal":false,"startTime":"2022-09-19T20:26:49.493Z","isDialerPreview":true,"dialerContactId":"dc719a6e4f46bf696e6224fba03af1fb","dialerContactListId":"664149e9-d368-43ac-ae36-943a7b68b985","dialerCampaignId":"dad086fd-9e72-4ccb-b8fc-f8b9aba68a47","callbackNumbers":["+13172222222"]},"new":{"id":"29ab52c9-43fa-405a-98dd-6e164e5a010b","connectedTime":"2022-09-19T20:26:52.700Z","name":"Customer","isConnected":false,"isDisconnected":false,"isDone":false,"state":"CONTACTING","isCallback":true,"isDialer":true,"isChat":false,"isEmail":false,"isMessage":false,"isVoicemail":false,"remoteName":"Customer","recordingState":"none","displayAddress":"","queueName":"RichardQueue","ani":"Internal","totalAcdDurationSeconds":3,"direction":"Outbound","isInternal":false,"startTime":"2022-09-19T20:26:49.493Z","isDialerPreview":true,"dialerContactId":"dc719a6e4f46bf696e6224fba03af1fb","dialerContactListId":"664149e9-d368-43ac-ae36-943a7b68b985","dialerCampaignId":"dad086fd-9e72-4ccb-b8fc-f8b9aba68a47","callbackNumbers":["+13172222222"]}},"type":"Interaction"}

This should be able to be used to identify those scenarios where the call was actually placed, rather than skipped by the user.

thank you Richard. I will give this a try.

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