We’ve integrated the Genesys Cloud Web Messaging Guest API into our custom portal. The goal is to push custom typing indicators and read receipts to the agent console to improve UX metrics, which we then track in New Relic.
The issue is that while the API returns a 200 OK for the typing indicator call, the agent never sees the ‘customer is typing’ status. The read receipt works fine, but typing is dead.
Here’s the snippet sending the typing indicator:
const response = await fetch(`https://${environmentId}.api.mypurecloud.com/api/v2/guest-messaging/conversations/${conversationId}/typing`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
typingState: 'typing'
})
});
The response is clean 200. No errors. I’ve checked the NRQL for the webhook ingestion, and the event is hitting our system, so the token is valid.
Is there a specific delay or batching mechanism on the GC side that swallows rapid typing states? Or do I need to include a specific timestamp format in the payload? The docs are vague on the payload structure for this specific endpoint.
We’re on the latest JS SDK for auth, but hitting the REST endpoint directly for the messaging actions. Any pointers?