]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_pjsip_session: Always bundle streams if WebRTC is enabled.
authorJoshua Colp <jcolp@digium.com>
Mon, 8 Jan 2018 16:54:00 +0000 (16:54 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 9 Jan 2018 10:42:36 +0000 (04:42 -0600)
Some WebRTC clients can't handle renegotiation with the addition of
streams that include an offer to bundle. They instead expect the
newly added streams to already be bundled. This change does such a thing
if WebRTC support is enabled on an endpoint.

ASTERISK-27566

Change-Id: I7fe9b7ac35a2798627d9c2c8369129f407af6461

res/res_pjsip_session.c

index c3393823e95a75eb552d401cdd7f4b3e94a1641c..53f60cc3bc98e00344cad2d0b7c82c07407a08a8 100644 (file)
@@ -456,6 +456,12 @@ struct ast_sip_session_media *ast_sip_session_media_state_add(struct ast_sip_ses
                                return NULL;
                        }
                        session_media->bundle_group = 0;
+
+                       /* Some WebRTC clients can't handle an offer to bundle media streams. Instead they expect them to
+                        * already be bundled. Every client handles this scenario though so if WebRTC is enabled just go
+                        * ahead and treat the streams as having already been bundled.
+                        */
+                       session_media->bundled = session->endpoint->media.webrtc;
                } else {
                        session_media->bundle_group = -1;
                }