]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
mod_skinny: make 7925g work
authorSimon Wunderlich <sw@simonwunderlich.de>
Fri, 28 Feb 2014 12:59:31 +0000 (13:59 +0100)
committerNathan Neulinger <nneul@neulinger.org>
Mon, 10 Mar 2014 20:25:36 +0000 (15:25 -0500)
Cisco 7925G seem to work only with the correct conference_id2 and
rtptimeout set, so add protocol 11 definition fields and set
conference_id2 correctly.

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Nathan Neulinger <nneul@neulinger.org>
src/mod/endpoints/mod_skinny/skinny_protocol.c
src/mod/endpoints/mod_skinny/skinny_protocol.h
src/mod/endpoints/mod_skinny/skinny_server.c

index 5498e5ebee9de6306b233d7a9f7072fcef2eca2a..ee8c8b73e3592649917f2ecb925fba0a15f78731 100644 (file)
@@ -911,6 +911,7 @@ switch_status_t perform_send_open_receive_channel(listener_t *listener,
        message->data.open_receive_channel.echo_cancel_type = echo_cancel_type;
        message->data.open_receive_channel.g723_bitrate = g723_bitrate;
        message->data.open_receive_channel.conference_id2 = conference_id2;
+       message->data.open_receive_channel.rtptimeout = htonl(0x0a);
        /*
           message->data.open_receive_channel.reserved[0] = reserved[0];
           message->data.open_receive_channel.reserved[1] = reserved[1];
index 5687744ec0f8f5c42a46923f1971a493d5fdceaa..4ea82ec057d71fbffd1e346bc25db737083c2131 100644 (file)
@@ -683,7 +683,9 @@ struct PACKED open_receive_channel_message {
        uint32_t echo_cancel_type;
        uint32_t g723_bitrate;
        uint32_t conference_id2;
-       uint32_t reserved[10];
+       uint32_t reserved[14];
+       uint32_t rtpdtmfpayload;
+       uint32_t rtptimeout;
 };
 
 /* CloseReceiveChannelMessage */
index 4a69786abb26254ecf846536ff2b48b6d6965960..3aeb5e1379d2e3ffab7c2c6ba486f899e4bf6ebe 100644 (file)
@@ -802,7 +802,7 @@ switch_status_t skinny_session_start_media(switch_core_session_t *session, liste
                                SKINNY_CODEC_ULAW_64K, /* uint32_t payload_capacity, */
                                0, /* uint32_t echo_cancel_type, */
                                0, /* uint32_t g723_bitrate, */
-                               0, /* uint32_t conference_id2, */
+                               tech_pvt->call_id, /* uint32_t conference_id2, */
                                0 /* uint32_t reserved[10] */
                                );
        }
@@ -868,7 +868,7 @@ switch_status_t skinny_session_unhold_line(switch_core_session_t *session, liste
                SKINNY_CODEC_ULAW_64K, /* uint32_t payload_capacity, */
                0, /* uint32_t echo_cancel_type, */
                0, /* uint32_t g723_bitrate, */
-               0, /* uint32_t conference_id2, */
+               tech_pvt->call_id, /* uint32_t conference_id2, */
                0 /* uint32_t reserved[10] */
                );