Okay, so we’re hitting a weird one with RCS messaging - specifically, messages aren’t going through and it looks like a firewall issue, but not in the way you’d expect. We’re on CXone version 23.1.10.0, using the Webhooks integration to handle inbound RCS messages. The initial investigation points to the payload structure being altered before it hits our webhook - almost as if something is stripping out parts of the rcs-message object.
It’s honestly a bit strange; we’ve spent ages building the integration with the understanding that CXone’s webhook delivery is pretty straightforward - a POST to our endpoint with the full message payload. It’s a fundamentally different setup than what we’ve seen with Genesys Cloud, where the message structure is often pre-processed before even reaching the webhook.
The error we’re getting in our logs isn’t super helpful - it’s just a generic “Invalid message format” when trying to parse the incoming JSON. The CXone monitoring console doesn’t show any delivery failures at the platform level, it’s only our endpoint that’s rejecting the messages. We’ve tried enabling verbose logging on the Webhooks integration, but the logs only show a successful delivery to our URL. It’s as if something is inspecting the payload mid-flight.
Here’s a snippet of what we expect to receive, based on the RCS specification and documentation:
{
"event-type": "message",
"message": {
"id": "unique-message-id",
"timestamp": "2024-02-29T12:00:00Z",
"sender": "+15551234567",
"recipient": "+15557891234",
"rcs-message": {
"content": "Hello world!",
"suggestions": [
{
"reply": {
"text": "What's up?"
}
}
]
}
}
}
But what we’re actually getting looks like this:
{
"event-type": "message",
"message": {
"id": "unique-message-id",
"timestamp": "2024-02-29T12:00:00Z",
"sender": "+15551234567",
"recipient": "+15557891234",
"content": "Hello world!"
}
}
Notice the rcs-message object is completely gone. It’s like someone decided RCS-specific features weren’t important. Has anyone run into something similar, where a firewall or intermediary component is altering the RCS message payload? Is there a known configuration setting within CXone that handles RCS message formatting? We’re starting to suspect some kind of content filtering or security policy, but can’t pinpoint what’s causing it.