[Freeswitch-users] mod_verto, verto communicator working only with chromium-based browsers

Stefan gidoramothra at gmail.com
Sun Feb 7 10:44:10 UTC 2021


OK, thx, the codec at least doesn't seem to be the problem sice, as you
can see from the log in my previous mail, firefox and freeswitch find a
match in G722, but it can still be the codec that makes the key
negotiation somehow failing, so I'll try as soon as I can.

@ Christopher: The problem seems to be that somehow the Crypto is not
negotiated with firefox, here the SDP from a failed firefox call to a
conference:

```
v=0
o=mozilla...THIS_IS_SDPARTA-85.0 5850506564681204176 0 IN IP4 0.0.0.0
s=-
t=0 0
a=sendrecv
a=fingerprint:sha-256 D7:49:52:46:C7:03:BB:AA:00:51:A6:3A:87:3E:39:87:7B:11:BC:88:48:AB:69:52:1F:38:A7:AF:FE:B9:AB:A5
a=group:BUNDLE 0 1
a=ice-options:trickle
a=msid-semantic:WMS *
m=audio 49081 UDP/TLS/RTP/SAVPF 109 9 0 8 101
c=IN IP4 93.104.26.144
a=candidate:0 1 UDP 2122252543 192.168.178.102 49081 typ host
a=candidate:2 1 UDP 2122187007 192.168.178.101 38136 typ host
a=candidate:4 1 TCP 2105524479 192.168.178.102 9 typ host tcptype active
a=candidate:5 1 TCP 2105458943 192.168.178.101 9 typ host tcptype active
a=candidate:0 2 UDP 2122252542 192.168.178.102 52162 typ host
a=candidate:2 2 UDP 2122187006 192.168.178.101 38972 typ host
a=candidate:4 2 TCP 2105524478 192.168.178.102 9 typ host tcptype active
a=candidate:5 2 TCP 2105458942 192.168.178.101 9 typ host tcptype active
a=candidate:1 1 UDP 1686052863 93.104.26.144 49081 typ srflx raddr 192.168.178.102 rport 49081
a=candidate:3 1 UDP 1685987327 93.104.26.144 38136 typ srflx raddr 192.168.178.101 rport 38136
a=candidate:1 2 UDP 1686052862 93.104.26.144 52162 typ srflx raddr 192.168.178.102 rport 52162
a=candidate:3 2 UDP 1685987326 93.104.26.144 38972 typ srflx raddr 192.168.178.101 rport 38972
a=sendrecv
a=end-of-candidates
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1; stereo=1; sprop-stereo=1
a=fmtp:101 0-15
a=ice-pwd:cb982c1b6798dbb33f8b657af28ac2f2
a=ice-ufrag:1cc0dc33
a=mid:0
a=msid:{285f57af-e709-46c6-9c82-ad85bd0c13fe} {3fbe4a7a-d3a8-4c46-9902-c2375d4c3d25}
a=rtcp:52162 IN IP4 93.104.26.144
a=rtcp-mux
a=rtpmap:109 opus/48000/2
a=rtpmap:9 G722/8000/1
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=setup:actpass
a=ssrc:384906769 cname:{650dc0fe-0f89-4fa7-80c3-ad3a466120db}
m=video 48855 UDP/TLS/RTP/SAVPF 120 124 121 125
c=IN IP4 93.104.26.144
a=candidate:0 1 UDP 2122252543 192.168.178.102 48855 typ host
a=candidate:2 1 UDP 2122187007 192.168.178.101 48484 typ host
a=candidate:4 1 TCP 2105524479 192.168.178.102 9 typ host tcptype active
a=candidate:5 1 TCP 2105458943 192.168.178.101 9 typ host tcptype active
a=candidate:0 2 UDP 2122252542 192.168.178.102 33147 typ host
a=candidate:2 2 UDP 2122187006 192.168.178.101 60540 typ host
a=candidate:4 2 TCP 2105524478 192.168.178.102 9 typ host tcptype active
a=candidate:5 2 TCP 2105458942 192.168.178.101 9 typ host tcptype active
a=candidate:1 1 UDP 1686052863 93.104.26.144 48855 typ srflx raddr 192.168.178.102 rport 48855
a=candidate:3 1 UDP 1685987327 93.104.26.144 48484 typ srflx raddr 192.168.178.101 rport 48484
a=candidate:1 2 UDP 1686052862 93.104.26.144 33147 typ srflx raddr 192.168.178.102 rport 33147
a=candidate:3 2 UDP 1685987326 93.104.26.144 60540 typ srflx raddr 192.168.178.101 rport 60540
a=recvonly
a=end-of-candidates
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:5 urn:ietf:params:rtp-hdrext:toffset
a=extmap:6/recvonly http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:7 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=fmtp:120 max-fs=12288;max-fr=60
a=fmtp:124 apt=120
a=fmtp:121 max-fs=12288;max-fr=60
a=fmtp:125 apt=121
a=ice-pwd:cb982c1b6798dbb33f8b657af28ac2f2
a=ice-ufrag:1cc0dc33
a=mid:1
a=rtcp:33147 IN IP4 93.104.26.144
a=rtcp-fb:120 nack
a=rtcp-fb:120 nack pli
a=rtcp-fb:120 ccm fir
a=rtcp-fb:120 goog-remb
a=rtcp-fb:120 transport-cc
a=rtcp-fb:121 nack
a=rtcp-fb:121 nack pli
a=rtcp-fb:121 ccm fir
a=rtcp-fb:121 goog-remb
a=rtcp-fb:121 transport-cc
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:120 VP8/90000
a=rtpmap:124 rtx/90000
a=rtpmap:121 VP9/90000
a=rtpmap:125 rtx/90000
a=setup:actpass
a=ssrc:1996378200 cname:{650dc0fe-0f89-4fa7-80c3-ad3a466120db}
```

The call failes after that. Here the way to the failure, there is no
change in the SDP description in between:

```
Dialplan: verto.rtc/31000 parsing [team->enable_srtp] continue=true
Dialplan: verto.rtc/31000 Regex (PASS) [enable_srtp] destination_number(31000) =~ /.*/ break=on-false
Dialplan: verto.rtc/31000 Action set(rtp_secure_media=mandatory)
Dialplan: verto.rtc/31000 Action export(rtp_secure_media=mandatory)
Dialplan: verto.rtc/31000 parsing [team->teamusers_extension] continue=false
Dialplan: verto.rtc/31000 Regex (FAIL) [teamusers_extension] destination_number(31000) =~ /^(20[0-9][0-9][0-9])$/ break=on-false

...

EXECUTE [depth=0] verto.rtc/31000 set(rtp_secure_media=mandatory)
2021-02-07 09:33:56.077134 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 export(rtp_secure_media=mandatory)
2021-02-07 09:33:56.077134 [DEBUG] switch_channel.c:1310 EXPORT (export_vars) [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 set(codec_string=G722)
2021-02-07 09:33:56.077134 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [codec_string]=[G722]
EXECUTE [depth=0] verto.rtc/31000 answer()

...

2021-02-07 09:33:56.077134 [WARNING] switch_core_media.c:5667 Crypto not negotiated but required.
2021-02-07 09:33:56.077134 [DEBUG] switch_core_media.c:5911 verto.rtc/31000 Set 2833 dtmf send payload to 101 recv payload to 101
2021-02-07 09:33:56.077134 [DEBUG] switch_core_media.c:6239 No matches with FTMP, fallback to ignoring FMTP
2021-02-07 09:33:56.077134 [DEBUG] switch_core_media.c:6247 No matches with inherit_codec, fallback to ignoring PT
2021-02-07 09:33:56.077134 [WARNING] switch_core_media.c:6253 Crypto not negotiated but required.
2021-02-07 09:33:56.077134 [NOTICE] switch_channel.c:3908 Hangup verto.rtc/31000 [CS_EXECUTE] [INCOMPATIBLE_DESTINATION]
```

In contrast, the SDP from a successful call with Microsoft edge:

```
v=0
o=- 1501624953028608797 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
a=msid-semantic: WMS UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21
m=audio 55788 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 110 112 113 126
c=IN IP4 93.104.26.144
a=rtcp:9 IN IP4 0.0.0.0
a=candidate:1683339660 1 udp 2122260223 172.26.240.1 55787 typ host generation 0 network-id 1
a=candidate:617392483 1 udp 2122194687 192.168.1.112 55788 typ host generation 0 network-id 2 network-cost 10
a=candidate:2776936407 1 udp 1685987071 93.104.26.144 55788 typ srflx raddr 192.168.1.112 rport 55788 generation 0 network-id 2 network-cost 10
a=candidate:718685564 1 tcp 1518280447 172.26.240.1 9 typ host tcptype active generation 0 network-id 1
a=candidate:1783584147 1 tcp 1518214911 192.168.1.112 9 typ host tcptype active generation 0 network-id 2 network-cost 10
a=ice-ufrag:gbag
a=ice-pwd:SF5HWmdFQndyPQ2lRmuDYEOp
a=ice-options:trickle
a=fingerprint:sha-256 CE:30:A5:80:39:1D:88:B4:82:C8:CB:E3:8D:2D:31:57:35:6E:4A:B0:20:D5:7E:0A:0E:8E:CF:82:B0:DD:D0:0C
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:3 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1; stereo=1; sprop-stereo=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:112 telephone-event/32000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
a=ssrc:1934233218 cname:rqfJ84fHxVg6HTKI
a=ssrc:1934233218 msid:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21 1896f7b1-ca03-46dd-ae93-3e74dc3baa0f
a=ssrc:1934233218 mslabel:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21
a=ssrc:1934233218 label:1896f7b1-ca03-46dd-ae93-3e74dc3baa0f
m=video 55790 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 102 121 127 120 125 107 108 109 124 119 123 118 114 115 116
c=IN IP4 93.104.26.144
a=rtcp:9 IN IP4 0.0.0.0
a=candidate:1683339660 1 udp 2122260223 172.26.240.1 55789 typ host generation 0 network-id 1
a=candidate:617392483 1 udp 2122194687 192.168.1.112 55790 typ host generation 0 network-id 2 network-cost 10
a=candidate:2776936407 1 udp 1685987071 93.104.26.144 55790 typ srflx raddr 192.168.1.112 rport 55790 generation 0 network-id 2 network-cost 10
a=candidate:718685564 1 tcp 1518280447 172.26.240.1 9 typ host tcptype active generation 0 network-id 1
a=candidate:1783584147 1 tcp 1518214911 192.168.1.112 9 typ host tcptype active generation 0 network-id 2 network-cost 10
a=ice-ufrag:gbag
a=ice-pwd:SF5HWmdFQndyPQ2lRmuDYEOp
a=ice-options:trickle
a=fingerprint:sha-256 CE:30:A5:80:39:1D:88:B4:82:C8:CB:E3:8D:2D:31:57:35:6E:4A:B0:20:D5:7E:0A:0E:8E:CF:82:B0:DD:D0:0C
a=setup:actpass
a=mid:video
a=extmap:14 urn:ietf:params:rtp-hdrext:toffset
a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:13 urn:3gpp:video-orientation
a=extmap:3 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:5 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-space
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 VP8/90000
a=rtcp-fb:96 goog-remb
a=rtcp-fb:96 transport-cc
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=rtpmap:97 rtx/90000
a=fmtp:97 apt=96
a=rtpmap:98 VP9/90000
a=rtcp-fb:98 goog-remb
a=rtcp-fb:98 transport-cc
a=rtcp-fb:98 ccm fir
a=rtcp-fb:98 nack
a=rtcp-fb:98 nack pli
a=fmtp:98 profile-id=0
a=rtpmap:99 rtx/90000
a=fmtp:99 apt=98
a=rtpmap:100 VP9/90000
a=rtcp-fb:100 goog-remb
a=rtcp-fb:100 transport-cc
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=fmtp:100 profile-id=2
a=rtpmap:101 rtx/90000
a=fmtp:101 apt=100
a=rtpmap:102 H264/90000
a=rtcp-fb:102 goog-remb
a=rtcp-fb:102 transport-cc
a=rtcp-fb:102 ccm fir
a=rtcp-fb:102 nack
a=rtcp-fb:102 nack pli
a=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f
a=rtpmap:121 rtx/90000
a=fmtp:121 apt=102
a=rtpmap:127 H264/90000
a=rtcp-fb:127 goog-remb
a=rtcp-fb:127 transport-cc
a=rtcp-fb:127 ccm fir
a=rtcp-fb:127 nack
a=rtcp-fb:127 nack pli
a=fmtp:127 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001f
a=rtpmap:120 rtx/90000
a=fmtp:120 apt=127
a=rtpmap:125 H264/90000
a=rtcp-fb:125 goog-remb
a=rtcp-fb:125 transport-cc
a=rtcp-fb:125 ccm fir
a=rtcp-fb:125 nack
a=rtcp-fb:125 nack pli
a=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f
a=rtpmap:107 rtx/90000
a=fmtp:107 apt=125
a=rtpmap:108 H264/90000
a=rtcp-fb:108 goog-remb
a=rtcp-fb:108 transport-cc
a=rtcp-fb:108 ccm fir
a=rtcp-fb:108 nack
a=rtcp-fb:108 nack pli
a=fmtp:108 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01f
a=rtpmap:109 rtx/90000
a=fmtp:109 apt=108
a=rtpmap:124 H264/90000
a=rtcp-fb:124 goog-remb
a=rtcp-fb:124 transport-cc
a=rtcp-fb:124 ccm fir
a=rtcp-fb:124 nack
a=rtcp-fb:124 nack pli
a=fmtp:124 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d001f
a=rtpmap:119 rtx/90000
a=fmtp:119 apt=124
a=rtpmap:123 H264/90000
a=rtcp-fb:123 goog-remb
a=rtcp-fb:123 transport-cc
a=rtcp-fb:123 ccm fir
a=rtcp-fb:123 nack
a=rtcp-fb:123 nack pli
a=fmtp:123 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=64001f
a=rtpmap:118 rtx/90000
a=fmtp:118 apt=123
a=rtpmap:114 red/90000
a=rtpmap:115 rtx/90000
a=fmtp:115 apt=114
a=rtpmap:116 ulpfec/90000
a=ssrc-group:FID 850477237 3405802114
a=ssrc:850477237 cname:rqfJ84fHxVg6HTKI
a=ssrc:850477237 msid:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21 557fc3d7-46b4-4f5b-81ff-7aa9f69022be
a=ssrc:850477237 mslabel:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21
a=ssrc:850477237 label:557fc3d7-46b4-4f5b-81ff-7aa9f69022be
a=ssrc:3405802114 cname:rqfJ84fHxVg6HTKI
a=ssrc:3405802114 msid:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21 557fc3d7-46b4-4f5b-81ff-7aa9f69022be
a=ssrc:3405802114 mslabel:UhrKcrZiGH1JculGLi7sf3qZxcpdua5AvC21
a=ssrc:3405802114 label:557fc3d7-46b4-4f5b-81ff-7aa9f69022be
```

No failure occurs, and without any change in the SDP description the
Crypto seems to work:

```
Dialplan: verto.rtc/31000 parsing [team->enable_srtp] continue=true
Dialplan: verto.rtc/31000 Regex (PASS) [enable_srtp] destination_number(31000) =~ /.*/ break=on-false
Dialplan: verto.rtc/31000 Action set(rtp_secure_media=mandatory)
Dialplan: verto.rtc/31000 Action export(rtp_secure_media=mandatory)
Dialplan: verto.rtc/31000 parsing [team->teamusers_extension] continue=false
Dialplan: verto.rtc/31000 Regex (FAIL) [teamusers_extension] destination_number(31000) =~ /^(20[0-9][0-9][0-9])$/ break=on-false

...

EXECUTE [depth=0] verto.rtc/31000 set(rtp_secure_media=mandatory)
2021-02-07 10:18:42.577108 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 export(rtp_secure_media=mandatory)
2021-02-07 10:18:42.577108 [DEBUG] switch_channel.c:1310 EXPORT (export_vars) [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 set(codec_string=G722)
2021-02-07 10:18:42.577108 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [codec_string]=[G722]
EXECUTE [depth=0] verto.rtc/31000 answer()

...

2021-02-07 10:18:42.577108 [DEBUG] switch_core_media.c:8885 Activating RTCP PORT 55788
2021-02-07 10:18:42.577108 [DEBUG] switch_rtp.c:4848 RTCP send rate is: 1000 and packet rate is: 20000 Remote Port: 55788
2021-02-07 10:18:42.577108 [INFO] switch_core_media.c:8896 Skipping RTCP ICE (Same as RTP)
2021-02-07 10:18:42.577108 [INFO] switch_rtp.c:3764 Activate RTP/RTCP audio DTLS client
2021-02-07 10:18:42.577108 [INFO] switch_rtp.c:3927 Changing audio DTLS state from OFF to HANDSHAKE
2021-02-07 10:18:42.577108 [DEBUG] switch_core_media.c:2554 Setting Jitterbuffer to 20ms (1 frames) (50 max frames)
2021-02-07 10:18:42.577108 [DEBUG] switch_core_media.c:8977 verto.rtc/31000 Set 2833 dtmf send payload to 126
2021-02-07 10:18:42.577108 [DEBUG] switch_core_media.c:8984 verto.rtc/31000 Set 2833 dtmf receive payload to 126
2021-02-07 10:18:42.577108 [DEBUG] switch_core_media.c:8645 Audio params are unchanged for verto.rtc/31000.
2021-02-07 10:18:42.577108 [DEBUG] mod_verto.c:2518 Local SDP verto.rtc/31000:
v=0
o=FreeSWITCH 1612661558 1612661559 IN IP4 46.4.114.220
s=FreeSWITCH
c=IN IP4 46.4.114.220
t=0 0
a=msid-semantic: WMS GnrX0xb28nF71JDGAWtDzqu8kW1fLUQi
m=audio 31564 UDP/TLS/RTP/SAVPF 9 126
a=rtpmap:9 G722/8000
a=rtpmap:126 telephone-event/8000
a=silenceSupp:off - - - -
a=ptime:20
a=sendrecv
a=fingerprint:sha-256 5B:B0:37:08:CA:B3:02:48:CB:B6:1C:9C:A0:C9:66:1C:1D:A2:5F:25:95:59:25:6D:92:A5:80:6C:FB:79:EA:72
a=setup:active
a=rtcp-mux
a=rtcp:31564 IN IP4 46.4.114.220
a=ice-ufrag:H2Q7ja6tXXyzHfHG
a=ice-pwd:dDuyAcSLpaObWmotf4qo5mHT
a=candidate:4541172879 1 udp 659136 46.4.114.220 31564 typ host generation 0
a=end-of-candidates
a=ssrc:1210358074 cname:875Yv7RukmscWVIm
a=ssrc:1210358074 msid:GnrX0xb28nF71JDGAWtDzqu8kW1fLUQi a0
a=ssrc:1210358074 mslabel:GnrX0xb28nF71JDGAWtDzqu8kW1fLUQi
a=ssrc:1210358074 label:GnrX0xb28nF71JDGAWtDzqu8kW1fLUQia0
m=video 0 UDP/TLS/RTP/SAVPF 19

2021-02-07 10:18:42.577108 [NOTICE] mod_dptools.c:1406 Channel [verto.rtc/31000] has been answered
2021-02-07 10:18:42.596994 [DEBUG] switch_channel.c:3865 (verto.rtc/31000) Callstate Change RINGING -> ACTIVE
EXECUTE [depth=0] verto.rtc/31000 conference(friends_16kHz at 16kHz-novideo+2357+flags{moderator|mute-detect})
```

Perhaps I'm missing a setting in mod_verto, to force firefox or all
clients to negotiate the srtp-key earlier? I'm not sure, because asd you
can see here:

https://github.com/gidmoth/freeswitch-container/blob/main/etc-freeswitch/dialplan/team.xml

I setup the required srtp in the dialplan, that should be after the
profiles (sofia/verto) configs. Is that the right way to do it?

thx for the help so far,

__
s.




On Fri, Feb 05, 2021 at 03:41:56PM +0100, Gregor Nanger wrote:
> Just for info. We are using verto and it works in Chrome, Edge and Firefox.
> Out of the box.
> 
> INCOMPATIBLE_DESTINATION could be because of codecs. Try to allow only
> pcma, pcmu in verto config. Just a thought to test it...
> 
> 
> 
> 
> On Fri, Feb 5, 2021, 15:34 Stefan <gidoramothra at gmail.com> wrote:
> 
> > Hello, I asked that before, but perhaps the question was somehow wrong
> > formulated or I didn't provide the right details. My Problem is the
> > following:
> >
> > I have a freeswitch 1.10 installation, you can find the container I
> > use, including a configuration similar to mine, here:
> >
> > https://github.com/gidmoth/freeswitch-container
> >
> > (The readme in the etc-freeswitch folder is the one provided by the
> > freeswitch-minimal config package in debian, but please look at the files
> > themselfes, because I took that only as a startingpoint).
> >
> > I have mod_verto enabled and try to connect clients with verto
> > communicator, build from the sources in the 1.10 release branch on
> > signalwire/freeswitch (https://github.com/signalwire/freeswitch).
> >
> > It works perfectly well with chomium-based browsers, but with firefox it
> > does not work.
> >
> > From the logs it is clear, that firefox seems not to start the
> > negotiation of a key for srtp, and then mod_verto refuses to execute the
> > call, because the dialplan requires srtp. Here the relevant log, a
> > failed attemt to call a conference with firefox/verto communicator as a
> > client:
> >
> > ```
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:287
> > (verto.rtc/31000) State Change CS_ROUTING -> CS_EXECUTE
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:644
> > (verto.rtc/31000) State ROUTING going to sleep
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:585
> > (verto.rtc/31000) Running State Change CS_EXECUTE (Cur 1 Tot 1)
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:651
> > (verto.rtc/31000) State EXECUTE
> > 2021-01-21 15:36:48.773228 [DEBUG] mod_rtc.c:120 verto.rtc/31000 RTC
> > EXECUTE
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:329
> > verto.rtc/31000 Standard EXECUTE
> > EXECUTE [depth=0] verto.rtc/31000 set(rtp_secure_media=mandatory)
> > 2021-01-21 15:36:48.773228 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000
> > [rtp_secure_media]=[mandatory]
> > 2021-01-21 15:36:48.773228 [CONSOLE] sofia_presence.c:1619 Event Thread
> > Started
> > EXECUTE [depth=0] verto.rtc/31000 export(rtp_secure_media=mandatory)
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_channel.c:1310 EXPORT
> > (export_vars) [rtp_secure_media]=[mandatory]
> > EXECUTE [depth=0] verto.rtc/31000 set(codec_string=G722)
> > 2021-01-21 15:36:48.773228 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000
> > [codec_string]=[G722]
> > EXECUTE [depth=0] verto.rtc/31000 answer()
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec
> > Compare [opus:109:48000:20:0:2]/[G722:9:8000:20:64000:1]
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec
> > Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5649 Audio Codec
> > Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec
> > Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec
> > Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5510 Set
> > telephone-event payload to 101 at 8000
> > 2021-01-21 15:36:48.773228 [WARNING] switch_core_media.c:5667 Crypto not
> > negotiated but required.
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5911
> > verto.rtc/31000 Set 2833 dtmf send payload to 101 recv payload to 101
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:6239 No matches
> > with FTMP, fallback to ignoring FMTP
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:6247 No matches
> > with inherit_codec, fallback to ignoring PT
> > 2021-01-21 15:36:48.773228 [WARNING] switch_core_media.c:6253 Crypto not
> > negotiated but required.
> > 2021-01-21 15:36:48.773228 [NOTICE] switch_channel.c:3908 Hangup
> > verto.rtc/31000 [CS_EXECUTE] [INCOMPATIBLE_DESTINATION]
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_session.c:2905
> > verto.rtc/31000 skip receive message [APPLICATION_EXEC_COMPLETE] (channel
> > is hungup already)
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:651
> > (verto.rtc/31000) State EXECUTE going to sleep
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:585
> > (verto.rtc/31000) Running State Change CS_HANGUP (Cur 1 Tot 1)
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:848
> > (verto.rtc/31000) Callstate Change RINGING -> HANGUP
> > 2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:850
> > (verto.rtc/31000) State HANGUP
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:60
> > verto.rtc/31000 Standard HANGUP, cause: INCOMPATIBLE_DESTINATION
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:850
> > (verto.rtc/31000) State HANGUP going to sleep
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:620
> > (verto.rtc/31000) State Change CS_HANGUP -> CS_REPORTING
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:585
> > (verto.rtc/31000) Running State Change CS_REPORTING (Cur 1 Tot 1)
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:936
> > (verto.rtc/31000) State REPORTING
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:174
> > verto.rtc/31000 Standard REPORTING, cause: INCOMPATIBLE_DESTINATION
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:936
> > (verto.rtc/31000) State REPORTING going to sleep
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:611
> > (verto.rtc/31000) State Change CS_REPORTING -> CS_DESTROY
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_session.c:1726 Session 1
> > (verto.rtc/31000) Locked, Waiting on external entities
> > 2021-01-21 15:36:48.793250 [NOTICE] switch_core_session.c:1744 Session 1
> > (verto.rtc/31000) Ended
> > 2021-01-21 15:36:48.793250 [NOTICE] switch_core_session.c:1748 Close
> > Channel verto.rtc/31000 [CS_DESTROY]
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:739
> > (verto.rtc/31000) Running State Change CS_DESTROY (Cur 0 Tot 1)
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:749
> > (verto.rtc/31000) State DESTROY
> > 2021-01-21 15:36:48.793250 [DEBUG] mod_rtc.c:132 verto.rtc/31000 RTC
> > DESTROY
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:181
> > verto.rtc/31000 Standard DESTROY
> > 2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:749
> > (verto.rtc/31000) State DESTROY going to sleep
> > 2021-01-21 15:36:48.833246 [DEBUG] mod_verto.c:607 WRITE
> > 93.104.1.138:42084 [{
> >         "jsonrpc":      "2.0",
> >         "id":   2,
> >         "method":       "verto.bye",
> >         "params":       {
> >                 "callID":       "360828a2-046a-0c70-8e20-8e23a5418cdf",
> >                 "causeCode":    88,
> >                 "cause":        "INCOMPATIBLE_DESTINATION"
> >         }
> > ```
> >
> > My question is: is there anything I can change to make it work with
> > firefox. Any hints welcome.
> >
> > __
> > s.
> >
> >
> > _________________________________________________________________________
> >
> > The FreeSWITCH project is sponsored by SignalWire https://signalwire.com
> > Enhance your FreeSWITCH install with disruptive priced SMS and PSTN
> > services.
> > Build your next product on our scalable cloud platform.
> >
> > Join our online community to chat in real time
> > https://signalwire.community
> >
> > Professional FreeSWITCH Services
> > sales at freeswitch.com
> > https://freeswitch.com
> >
> > Official FreeSWITCH Sites
> > https://freeswitch.com/oss
> > https://freeswitch.org/confluence
> > https://cluecon.com
> >
> > FreeSWITCH-users mailing list
> > FreeSWITCH-users at lists.freeswitch.org
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> > https://freeswitch.com

> _________________________________________________________________________
> 
> The FreeSWITCH project is sponsored by SignalWire https://signalwire.com
> Enhance your FreeSWITCH install with disruptive priced SMS and PSTN services.
> Build your next product on our scalable cloud platform.
> 
> Join our online community to chat in real time https://signalwire.community
> 
> Professional FreeSWITCH Services
> sales at freeswitch.com
> https://freeswitch.com
> 
> Official FreeSWITCH Sites
> https://freeswitch.com/oss
> https://freeswitch.org/confluence
> https://cluecon.com
> 
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> https://freeswitch.com




More information about the FreeSWITCH-users mailing list