02-16-2022 02:50 PM
Hello everyone.
I am using Linphone for Android and trying to call Webex through SIP. I noticed that there are two SIP endpoints for each account: 1- <username>@<siteName>.webex.com 2- <username>@<sitName>.calls.webex.com. Calling either one will land on the same Webex account.
I can call from Linphone to Webex through "<username>@<siteName>.webex.com" and everything is fine. I have both video and audio.
But when calling from Linphone to Webex through "<username>@<sitName>.calls.webex.com", I just have audio. The video is missing. Digging more, I found out that Webex replies with an SDP with an empty video.
I would like to know what is difference between webex.com and calls.webex.com. Why I can just use the first one.
02-16-2022 03:44 PM - edited 02-16-2022 03:45 PM
Hello @mostafa.farzane,
there is a difference between the two call types. If you dial <username>@<Webex-Site-ID>.webex.com, then you are calling the personal room of a user on the Webex Meetings platform.
However, when you dial <username>@<Webex-SIP-Subdomain>.calls.webex.com, then you are calling the user in the Webex App (used to be Webex Teams), which in the backend is not the same platform (yet).
Since I do not know the exact infrastructure in the backend (only Cisco does that), I cannot tell why it behaves differently, but I could imagine that a different gateway service is used.
You could confirm that in your logs. If you compare the logs for both call attemts and take a look a the user agent header in the SIP signaling, you might be able to spot a difference.
If you are willing to share the logs, I can also have a look into.
Best regards,
Igor
02-16-2022 04:26 PM
Hi @Igor Lukic
Thanks for the quick reply.
Here are the two log files. One for meeting and one for call.
I turned on the Linphone debug so it put out some other stuff as well. Hope it is not confusing. Just look for INVITE messages and you can see the SDP after that.
Thanks
02-16-2022 05:43 PM
Hi @mostafa.farzane,
thanks for providing the logs.
As expected, in the SDP of your client is the same for both type of calls (except for different source port numbers). As I can see, you are offering OPUS, G.711 u-law / a-law for audio and VP8, H.264 for video.
Linphone SDP for the call to the Webex Meeting platform (<username>@meet93.webex.com):
v=0
o=linphone 146 2423 IN IP4 192.168.42.130
s=Talk
c=IN IP4 192.168.42.130
t=0 0
a=rtcp-xr:rcvr-rtt=all:10000 stat-summary=loss,dup,jitt,TTL voip-metrics
m=audio 7078 RTP/AVPF 96 0 8 97 101
a=rtpmap:96 opus/48000/2
a=fmtp:96 useinbandfec=1
a=rtpmap:97 telephone-event/48000
a=rtpmap:101 telephone-event/8000
a=rtcp-fb:* trr-int 5000
a=rtcp-fb:* ccm tmmbr
m=video 52187 RTP/AVPF 96 97
a=rtpmap:96 VP8/90000
a=rtpmap:97 H264/90000
a=fmtp:97 profile-level-id=42801F
a=rtcp:46113
a=rtcp-fb:* trr-int 5000
a=rtcp-fb:* ccm tmmbr
a=rtcp-fb:96 nack pli
a=rtcp-fb:96 nack sli
a=rtcp-fb:96 ack rpsi
a=rtcp-fb:96 ccm fir
a=rtcp-fb:97 nack pli
a=rtcp-fb:97 ccm fir
The Webex Meetings platform replies with audio and video capability as well:
SIP/2.0 200 OK
Via: SIP/2.0/TLS 192.168.42.130:33520;branch=z9hG4bK.Qb6W8H0zU;rport=4592
Record-Route: <sip:l2sip-aore-03.wbx2.com:5062;transport=tls;lr>
Record-Route: <sip:rr$n=net_me_tls_l2sip@209.197.207.52:5061;transport=tls;lr;bypassvcs=true>
To: <sip:pr1825787096@meet93.webex.com>;tag=2134184770
From: <sip:linphone@192.168.42.130>;tag=gx5b~hUz7
Contact: <sip:l2sip-UA@l2sip-aore-03.wbx2.com:5062;transport=tls>;isfocus
Call-ID: mgkh~BFlK5
CSeq: 20 INVITE
Content-Length: 615
Session-ID: 80c24874382b3dbec7e606025617c0b6;remote=d63d16b0f3c836d3becdf2f78ea1c6a4
Locus: 184d96d5-757a-3279-b289-16d139e9e35c
Locus-SessionId: 80c24874-382b-3dbe-c7e6-06025617c0b6
Locus-Type: MEETING
WebexMeetingNumber: 1825787096
User-Agent: Cisco-L2SIP
Accept: application/sdp
Allow: INVITE,ACK,CANCEL,BYE,REFER,INFO,OPTIONS,NOTIFY,SUBSCRIBE
Allow-Events: kpml
Supported: replaces
Content-Type: application/sdp
v=0
o=Calliope 120461589 0 IN IP4 170.72.100.63
s=-
i=MediaEngine
c=IN IP4 170.72.100.63
b=TIAS:8256000
t=0 0
m=audio 49644 RTP/AVPF 96 0 8 101
a=rtpmap:96 opus/48000/2
a=fmtp:96 useinbandfec=1
a=rtpmap:0 PCMU/8000/1
a=rtpmap:8 PCMA/8000/1
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
a=content:main
a=label:0
m=video 57604 RTP/AVPF 97
b=TIAS:4000000
a=rtpmap:97 H264/90000
a=fmtp:97 profile-level-id=42e016;max-mbps=244800;max-fs=8160;max-fps=3000;max-dpb=12240;max-rcmd-nalu-size=196608
a=rtcp-fb:* nack pli
a=rtcp-fb:* ccm fir
a=rtcp-fb:* ccm tmmbr
a=sendrecv
a=label:1
And here is the relevant output for the second call to your Webex App (<username>@meet93.calls.webex.com):
v=0
o=linphone 412 2957 IN IP4 192.168.42.130
s=Talk
c=IN IP4 192.168.42.130
t=0 0
a=rtcp-xr:rcvr-rtt=all:10000 stat-summary=loss,dup,jitt,TTL voip-metrics
m=audio 7078 RTP/AVPF 96 0 8 97 101
a=rtpmap:96 opus/48000/2
a=fmtp:96 useinbandfec=1
a=rtpmap:97 telephone-event/48000
a=rtpmap:101 telephone-event/8000
a=rtcp-fb:* trr-int 5000
a=rtcp-fb:* ccm tmmbr
m=video 34375 RTP/AVPF 96 97
a=rtpmap:96 VP8/90000
a=rtpmap:97 H264/90000
a=fmtp:97 profile-level-id=42801F
a=rtcp:47536
a=rtcp-fb:* trr-int 5000
a=rtcp-fb:* ccm tmmbr
Reply from the Webex (Teams) environment:
SIP/2.0 200 OK
CSeq: 20 INVITE
Call-ID: aHcegJH60a
From: <sip:linphone@192.168.42.130>;tag=2NGR2uapS
Via: SIP/2.0/TLS 192.168.42.130:54208;branch=z9hG4bK.4~W0E7pGp;rport=44704;received=10.254.40.48
To: <sip:farzanemostafa@meet93.calls.webex.com>;tag=1403110283
Session-ID: 954566c85176c6bb961dcd3e97925bd2;remote=00000000000000000000000000000000
Locus: 4267118a-8f87-11ec-bb68-02425a019dd4
Locus-SessionId: 954566c8-5176-c6bb-961d-cd3e97925bd2
Locus-Type: CALL
User-Agent: Cisco-L2SIP
Accept: application/sdp
Allow: INVITE,ACK,CANCEL,BYE,REFER,INFO,OPTIONS,NOTIFY,SUBSCRIBE
Allow-Events: kpml
Supported: replaces
Content-Type: application/sdp
Contact: <sip:l2sip-UA@l2sip-aore-03.wbx2.com:5061;transport=tls>
Content-Length: 385
v=0
o=linus 0 1 IN IP4 23.89.10.67
s=-
c=IN IP4 23.89.10.67
b=TIAS:64000
t=0 0
m=audio 52456 RTP/AVP 98 101
c=IN IP4 23.89.10.67
b=TIAS:64000
a=content:main
a=sendrecv
a=rtpmap:98 opus/48000/2
a=fmtp:98 maxplaybackrate=48000;maxaveragebitrate=64000;stereo=1
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp-fb:* ccm cisco-asn
a=label:100
m=video 0 RTP/AVPF *
As you have pointed out, in the latter scenario the Webex (Teams) plattform only accepts audio, but not video (m=video 0 RTP/AVPF *). If we compare the messages to the first call, we can see that the user agent is basically the same (Cisco-L2SIP), but the media "gateway" is different:
Webex Meetings environment: o=Calliope 120461589 0 IN IP4 170.72.100.63
Webex (Teams) environment: o=linus 0 1 IN IP4 23.89.10.67
So this at least confirms the assumption, that depending on the type of call, different media gateways are used. There is a slight chance that 23.89.10.67 has an issue, but we cannot confirm this, as only Cisco can look into the logging.
Three more questions:
Best regards,
Igor
02-16-2022 06:45 PM
Thanks, @Igor Lukic for taking the time.
After your explanation, it became more clear to me.
As for your questions:
1- Yes, I accepted the call on Webex App. Actually once I forgott to do so and the SDP negocition did not procceed.
2- No they are on different devices.
3- If the two parties are Webex, It is fine. I called one Webex profile from another Webex profile. Everything was fine. I received audio and video. But the problem is when I call Webex with a third party app/library like Linphone. I suspect that the Webex(call) does not support my H264 profile or something similar.
02-17-2022 03:39 AM
Hi @mostafa.farzane,
thanks for answering the questions. I agree with you, most probably it is an issue with the H.264 profile.
a=fmtp:97 profile-level-id=42801F -> 0x42 = Baseline Profile (66) / 0x80 = Constrained / 0x1F (31) -> 31 means Level 3.1, which supports 720p30, so it should be fine
Source: https://en.wikipedia.org/wiki/Advanced_Video_Coding
Basically this should be supported by the Webex (Teams) infrastructure (as it is the case for Webex Meetings), but maybe Webex (Teams) infrastructure is expecting some more parameters.
For example, if we take a look at the SDP that comes from the Webex Meetings media node, then we can see a different H.264 profile, but also some additional information:
a=fmtp:97 profile-level-id=42e016;max-mbps=244800;max-fs=8160;max-fps=3000;max-dpb=12240;max-rcmd-nalu-size=196608
However, without involving Cisco TAC here, there will be no chance for further troubleshooting. Since it is a free account that you are using, you will not get support from Cisco TAC.
Best regards,
Igor
02-17-2022 04:21 PM
Thnaks @Igor Lukic for the time.
I agree with you. Both Cisco and Linphone uses the Baseline profile. I even tried other things like AVPF, but no luck.
Best wishes,
Mostafa
02-18-2022 12:33 AM
Hi @mostafa.farzane,
you are more than welcome! Thanks a lot for sharing your own experience.
If you have a customer with a paid account, you could talk to them, try to recreate the issue and ask them to open a TAC case (if they are willing to).
Best regards,
Igor
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide