[Freeswitch-users] Microsoft Teams integration

Stefan Kainz s.kainz at wnt.at
Wed Sep 23 07:56:37 UTC 2020


Thank you for your Answer!

May I ask what kind of SBC you are using?
We also use Audiocodes SBC’s, which are working great, but even those send Record-Route Headers.

Maybe I need to explain the szenario a little better…
In the teams client I dial an external number ( my mobile phone for example )
I pick up, and then push hold in the teams client. ( So far so good )
When I try to unhold, of course also in teams, it becomes silent on both ends. ( even the moh stops )

And then as I said I see a few OK Messages being retransmitted to the Microsoft servers.

Its funny that you say you don’t need Record-Route Headers at all, because without setting those, I cant even make incoming calls work.
With those headers, everything works perfectly except for the thing explained above.
Even when trying to get incoming calls back from hold on teams. ( PSTN – freeswitch – teams, hold / unhold on teams )

I also found a tutorial from kamailio on how to connect it to teams.
There they also state that the record-route headers a needed.
https://skalatan.de/en/blog/kamailio-sbc-teams

Thank you again David!

Regards,
Stefan


From: David Horton <daveh at drachtio.org>
Sent: Montag, 21. September 2020 22:36
To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
Cc: Stefan Kainz <s.kainz at wnt.at>
Subject: Re: [Freeswitch-users] Microsoft Teams integration

It has not been my experience that Microsoft Teams direct routing requires a Record-Route header on requests / responses you send to it (though their requests will have an RR and you must Route accordingly)

Here is a sip trace showing a successful on-hold / off-hold scenario from one of my servers (not a freeswitch server).  This is an on-hold triggered from the MS teams client, not sure if you are trying to do the reverse.

One thing: make sure the Contact header in your INVITEs resolve to a single server, otherwise (if you have mutiple A records for the DNS name) you will find that MS Teams will gladly respond to a reINVITE to a completely different server than you sent from — this will manifest as not seeing the 200 OK to a re-INVITE you send, or not seeing the ACK when you respond 200 OK to a re-INVITE.

daveh

One thing to make sure of is that

On Sep 20, 2020, at 12:05 PM, Stefan Kainz <s.kainz at wnt.at<mailto:s.kainz at wnt.at>> wrote:

Hello,

we're trying to use Freeswitch as a Microsoft Teams direct routing SBC.

So far everything works perfectly, except getting the call back from hold on an outbound call.
The Problem is that Microsoft expects a Record-Route Header in every Request and every Response.
I have been able to set/rewrite this Record-Route header with sip_h_ and sip_rh_ in most szenarios, but like i said - unhold on an outgoing call does not work.

The hold is initiated with a reinvite with a=inactive in sdp, which does work.
However, the unhold - also a reinvite with a=sendrecv in sdp does not work correctly.
In the sip-trace i see that the OK ( in response to the INVITE for unhold ) gets retransmitted a couple of times, because the ACK from microsoft isn't received.

This is due to the missing Record-Route Header in the OK Message.
I have seen this behavior on inbound calls too, when i didnt set the Record-Route Header.

Now my question:
Is there any way to add the Record-Route Header to every Message on a sip-profile or gateway?
Or if not, is it possible to handle a reinvite in dialplan so i could set the header manually?
Maybe there is somebody who already has this working that could point me in the right direction.

I know freeswitch isn't a SBC, but it would be nice to be able to use freeswitch as a Teams-SBC without Kamailio or something similar.

Any help is very much appreciated 🙂

regards,
Stefan







_________________________________________________________________________

The FreeSWITCH project is sponsored by SignalWire https://signalwire.com<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<https://signalwire.community/>

Professional FreeSWITCH Services
sales at freeswitch.com<mailto:sales at freeswitch.com>
https://freeswitch.com<https://freeswitch.com/>

Official FreeSWITCH Sites
https://freeswitch.com/oss
https://freeswitch.org/confluence
https://cluecon.com<https://cluecon.com/>

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org<mailto: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<https://freeswitch.com/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20200923/44aa11bf/attachment-0001.html>


More information about the FreeSWITCH-users mailing list