Commit 0607f2cb79 for asterisk.org
commit 0607f2cb79ce5c22eb191e503b6bbcda3389de2b
Author: Joe Garlick <joe@flipcx.com>
Date: Thu Jan 15 14:56:47 2026 +0000
chan_websocket: Fixed Ping/Pong messages hanging up the websocket channel
When chan_websocket received a Ping or a Pong opcode it would cause the channel to hangup. This change allows Ping/Pong opcodes and allows them to silently pass
diff --git a/channels/chan_websocket.c b/channels/chan_websocket.c
index ad4e694ccf..b86bac4c67 100644
--- a/channels/chan_websocket.c
+++ b/channels/chan_websocket.c
@@ -1116,6 +1116,10 @@ static int read_from_ws_and_queue(struct websocket_pvt *instance)
return process_text_message(instance, payload, payload_len);
}
+ if (opcode == AST_WEBSOCKET_OPCODE_PING || opcode == AST_WEBSOCKET_OPCODE_PONG) {
+ return 0;
+ }
+
if (opcode == AST_WEBSOCKET_OPCODE_CLOSE) {
ast_debug(3, "%s: WebSocket closed by remote\n",
ast_channel_name(instance->channel));