diff --git a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c
index e833ec29bc..550b2af5b3 100644
--- a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c
+++ b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c
@@ -565,10 +565,21 @@ SWITCH_STANDARD_API(event_sink_function)
if (!strcasecmp(wcmd, "filter")) {
- char *action = switch_event_get_header(stream->param_event, "action");;
- char *header_name = switch_event_get_header(stream->param_event, "header_name");;
- char *header_val = switch_event_get_header(stream->param_event, "header_val");;
-
+ char *action = switch_event_get_header(stream->param_event, "action");
+ char *header_name = switch_event_get_header(stream->param_event, "header-name");
+ char *header_val = switch_event_get_header(stream->param_event, "header-val");
+ char *id = switch_event_get_header(stream->param_event, "listen-id");
+ uint32_t idl = 0;
+
+ if (id) {
+ idl = (uint32_t) atol(id);
+ }
+
+ if (!(listener = find_listener(idl))) {
+ stream->write_function(stream, "Invalid Listen-ID\n");
+ goto end;
+ }
+
if (switch_strlen_zero(action)) {
stream->write_function(stream, "Invalid Syntax\n");
goto end;