On this page |
|
\uD83D\
uDCCB What is a Push Gateway?Push gateways act as SIP proxies responsible for directing INVITE requests to the agents. If an agent fails to answer, the push gateway sends a push notification to inform him/her about the incoming call. So we have implemented a XCALLY Push Gateway to generateuDCCB 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
Panel | |
---|---|
|
|
|
☑️ For Alpha test, app can be used only for users enabled on our Apple account (it is not possible to use customer’s Apple account)
☑️ To install XCALLY Push Gateway you need our certificate, to use correctly VoIP push notification,by authenticating on our Apple's server only for our App💡 How XCALLY Push Gateway works
|
💡 How does XCALLY Push Gateway work?
XCALLY Push Gateway works both as a push gateway and as a 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.
Info |
---|
Coming soon: in phase test you must use our Push Gateway but when app will finish beta test, on XCALLY there will be a proxy configuration section used by Mobile App so if you desire to use your own proxy for Mobile App, it will be possible to configure it |
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.
Info |
---|
To verify if the agent is active, the push gateway sends a ping to the Mobile Appevery few seconds (configurable parameter). If the app is in foreground, it sends a pong to confirm the active status |
A new incoming call
XCALLY server receives an INVITE request addressed to a specific agentarrives 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 try to connect to the agent and if he/she is correctly registered, the INVITE request will be sent redirects the call to the agent which who manages the call (in this process, the Push notification does not get involved)
⚙️ Mobile App in background
Info |
---|
To verify if the agent is active, push gateway sends a ping to Mobile Appevery few seconds (configurable parameter) and when the app is in background , pong is not sent. So, by knowing that Agent’s app is in background, this information is saved on databasethe XCALLY Push Gateway does not receive a pong from the Mobile App. This information remains saved in cache. If a new call arrives it is necessary to resume the app (to understand if agent is really available) App by sending an iOS a push notification, as reported in the panel below. If the agent answers to the notification and push gateway sends another ping, app is now on foreground and it sends a pong. Let's see how below |
, the Mobile App goes automatically in foreground. Let’s see how: |
This scenario shows you the steps of gateway Push Gateway operation if agent has XCALLY app in background. When an agent, logged with the App mobile, receives a
A new incoming call
XCALLY server receives an INVITE request addressed to a specific agent
XCALLY Push Gateway will firstly try to directly connect to the agent but if the call fails because app is in background, the gateway send 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 belonging to 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 status and app sends new REGISTER to Gateway.
Register is essential to understand who is registered to the gateway and it verify if Agent’s IP address is the same or changed (if it is different, e.g. because the agent has moved from office to smart working by changing network connection, it is correctly REGISTER again). XCALLY Push gateway rebsumit INVITE through newly created connection and the inbound call is managed byIn 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