I am working to integrate 3rd party chat with genesys cloud using open messaging.
Am I correct on below wrt my understanding?
I see we have mechanism for reflecting typing event from 3rd party but we do not have genesys event when agent is typing.
If customer on 3rd party disconnects - I think only way is to inform agent that customer has disconnected through a message?
I see below options but not sure if they are ok ?
POST /api/v2/conversations/{conversationId}/disconnect (the info already states - this is not intenden way)
PATCH /api/v2/conversations/messages/{conversationId} (Update a conversation by disconnecting all of the participants - Not sure if this is better way?)
If Agent disconnects - we do not get any webhook message rather we should use event bridge or other mechanisms for integration?
Wat about contact matching? (I think I can identify the external contact using search and the associate the same with conversation - Are there any other ways?)
Are there any more limitations and challenges we are aware of when developers are trying to integrate using open messaging ? - do we have any articles published on the same ?
Generally with digital messaging, the Genesys Cloud Conversation and the external 3rd party message transcripts, are pretty unrelated things. Conversations have a TTL and are different than most 3rd parties would store their message transcript history, and that is fine and shouldn't cause any issues. Most 3rd party messaging apps (Whatsapp, sms, etc) don't even have a "connect/disconnect" terminology. So to answer your question, there is no built in way to signal your 3rd party "disconnect" with open messaging. You might want to consider using web messaging https://developer.genesys.cloud/commdigital/digital/webmessaging/ instead of open messaging for your use case.
Correct you will not get a webhook message when agent disconnects, see point #2 for some reasons why that is the case today
I'm not sure I follow what you want/need here. But if you are using the same 3rd party user identifier in the inbound message, in Genesys Cloud you should be able to have an external contact associated with that user.
Note: For open messaging interactions, Genesys Cloud does not currently automatically search for existing external contacts or provide journey information. You can manually search and link open messaging interactions to contacts.
so for open message conversation either agent who answer can search using names shown on screen and assign the contact. Or I was thinking if I can associate an external contact with conversation at the back end.