XCALLY Push Gateway
What’s about
XCALLY Push Gateway generates push notifications when XCALLY App is in background and it is necessary to advise agents about incoming calls to handle.
On this page, you can see how the push gateway works, while at this link you can explore how to configure your push gateway.
Requirements
For XCALLY App, you can use iOS or Android devices (by downloading app from Apple/Play Store)
You must enable on your license Mobile option
You need to configure your own push gateway (follow these guidelines at this link) and on XCALLY Firewall you must enable the incoming (IN) port 5060 (UDP) to push gateway IP or 5061 if you use TCP for TLS
You need to open port 443 and for Voice channel, to allow the voice connection, it is necessary to open RTP ports from 10000 to 20000. These ports are open publicly during the call but they are used by Asterisk only after having negotiated ports with external phones
How does XCALLY Push Gateway work?
XCALLY Push Gateway works as a push gateway and as an SIP Proxy which acts like a filter to accept just specific requests opening certain ports to agents registered to XCALLY machine. In this way, security can be guaranteed.
For Android, the connection is always active, also in background without push notifications, so agents can receive calls even if they close the app. Instead on IOS, when a new call arrives, it’s necessary to know if the agent’s App is in foreground or background.
Mobile App in foreground
This scenario shows you the steps of gateway operation if the agent has the XCALLY app in the foreground and receives a new incoming call.
To verify if the agent is active, the push gateway sends a ping to the Mobile App. If the app is in foreground, it sends a pong to confirm the active status
A new incoming call arrives to XCALLY (and generally XCALLY server sends the call to the specific agent, but in this case there is the Push Gateway). So XCALLY Push Gateway receives the request from the XCALLY server
XCALLY Push Gateway redirects the call to the agent who manages the call (in this process, the Push notification does not get involved)
Mobile App in background
This scenario shows you the steps of Push Gateway operation if agent has XCALLY app in background.
A new incoming call arrives to XCALLY (and generally XCALLY server sends the call to the specific agent, but in this case there is the Push Gateway). So XCALLY Push Gateway receives the request from XCALLY server
XCALLY Push Gateway recognizes that the App is in the background, therefore, it sends a push request to the Apple Push server
Apple server will forward the Push notification (VoIP type) to the App mobile of the relative agent to advise about the incoming call (app stays listening for possible push notifications)
With VoIP notifications, it’s possible to answer the call even if the app is in background and e.g. agent has locked the phone. In this way app is resumed, and it returns to foreground (you can see below screenshots about it).
So device receives the notification and the agent accepts it: in this way, the app mobile passes to foreground statusIn this way, XCALLY Push Gateway, which was waiting for forwarding the call, can now send the request of new incoming call to the agent
Example of iOS Push Notification
PN with locked phone → agent can slide to answer and manage the call
PN with background app → agent can accept or decline the call
When agent starts the call he can click on XCALLY button to open app or he can directly use speaker or keypad, set mute option or end the call