Flexisip group chat server integration with third party SIP servers

Last modified by Simon Morlat on 2018/06/20 18:32

Current state

The Flexisip group chat feature can be deployed into an existing SIP network running with third party SIP servers provided that the conditions listed below are met:

  1. The SIP network must comprise one or more SIP proxies connected directly with SIP clients. Typical SIP proxy software are: kamailio, opensips, ser.
  2. The third party SIP proxy must perform authentication, push notification (when applicable) and routing of SIP messages.
  3. The third party SIP proxy must forward the accepted REGISTER requests from clients to the Flexisip machine, even if it directly responds to clients. In practice, it means that it should duplicate REGISTER received from clients and expedite them to the Flexisip server. It can ignore the 200 OK response made by the Flexisip server.
  4. The third party SIP proxy must have a routing rule so that all requests targeted to "sip:conference-factory@sip-domain" or matching the pattern "sip:chatroom-***@sip-domain" are forwarded to the Flexisip server.
  5. The third party SIP proxy must allow all requests coming from the Flexisip machine (without authentication challenge).
  6. The machine on which Flexisip is deployed must run flexisip conference and proxy services, with REDIS backend configured.

Future evolutions

In a second step, we will make the requirements listed above evolve, in order to have a more standard way of interoperating with third party equipments.

Requirement 3 will be replaced by:

The third party SIP proxy must support the event package for registrations (RFC3680 https://tools.ietf.org/html/rfc3680 ) in order to respond to SIP SUBSCRIBE coming from the Flexisip server. This is necessary for the Flexisip server get a realtime information of current registrations of SIP clients.

Requirement 6 will be replaced by:

The machine on which Flexisip is deployed must run flexisip conference service only. The REDIS backend can remain disabled.

 

Tags:
Created by Simon Morlat on 2018/06/20 18:32