- Push Notifications
The XiVO mobile application should be used with at least the IZAR version of XiVO. The XiVO must contain an EGDE infrastructure allowing teleworkers or travelling workers to be able to access XiVO from outside. Follow the official documentation on required ports : See https://documentation.xivo.solutions/en/2022.10/edge/architecture.html#id3
When the user receives an incoming call, we use Firebase to wake up the mobile application by sending a push notification. The official firebase documentation describes the required ports and firewall configuration. See https://firebase.google.com/docs/cloud-messaging/concept-options#messaging-ports-and-your-firewall
XiVO mobile application is not functional on Realme smartphones because of phone accounts which can not be activated.
The tests are performed on Android 9, 10 and 11. Previous versions are not supported. Officially supported devices :
- Samsung :
- Galaxy Note 9 (Android 10)
- Galaxy A8 (Android 9) e
- Galaxy A40 (Android 11)
- Fairphone : FP3 (Android 11)
- Xiaomi : Note 9
The tests are performed on the version 15.5. The supported version is IOS version 15. Previous versions are not supported. On the following mobiles :
- Iphone 11
- Iphone XR
- Iphone 13
Manufacturer’s software layer may create unattended behavior on unsupported devices. Please open a ticket to describe device - with OS version and the bug.
It is imperative t make preliminary tests on the mobiles which would not be compatible.
If you encounter problems, you can send an email to the support directly via the mobile application. It is however important to have configured on your mobile an application to send emails. The logs of the mobile application are sent in an attached file in this email.
Push notification is a technology used in the XiVO server and the mobile application.
Since the Izar version, you can ring multiple devices at the same time. When you choose to ring the mobile application and the UCAssistant, the system will know when the devices are both ready to receive the incoming call.
As the UC assistant is connected directly to the server via the web interface, this will be relatively quick.
For the mobile application, the operating systems (Android and IOS) are using a “DOZE” mode. This mode closes the application when it has not been used for some time, to reduce the consumption of the battery. To wake up the application, we use the push notification that goes through a public push server. It will send a notification to the mobile to wake up the XiVO mobile application.
You might need to wait a certain time after you launched the call for the mobile application to wake up. This time can vary from one to ten seconds, depending on the push servers and the network quality. Once the mobile application responds, we start ringing the available devices.
Ringing device selected:
- UC Assistant: Fast ringing on the UC direct connection to the web browser or desktop
- Mobile application: Launching the ringtone on the mobile application when it will be awakened. The mode of operation used is the push notification. There can be a waiting time.
- UC + Mobile Application: There is a delay before launching the ringtone on both devices, the time for the mobile application to wake up.
Error codes will be displayed in case of a problem on the application while trying to make an outgoing call :
- Error code 1:
This error code means the application is not receiving or sending the SIP signal, and that the user is not REGISTER in the asterisk.
- Error code 2:
You will get this error code if the application is able to receive or send the SIP signal, but the user is not REGISTER in the asterisk.
If the user looses access to the Internet, the application switches to a non-usable mode until access is regained (see screenshot below). This display is removed when there is an internet access.
If you encounter an unsual behaviour and you manage to reproduce it on your application, you can send the logs directly via the configuration and click on Send logs to support.
Warning: The logs are sent by email, you must therefore have a messaging system configured on your phone.
If you didn’t give all the authorizations needed to use the mobile app, this error message will be displayed the next time you open the application. This means the XiVO phone account is not active.
In this case, you should click the OK button and will be redirected to the settings.
If the phone is a “Samsung”, the phone accounts settings will be opened. You just have to activate the check mark next to XiVO.
If the phone is not a Samsung, you will be redirected to the wrong settings. You will need to search in your phone settings where to activate the XiVO phone account.
You can change the value of XIVO_MAPP_WAIT_WITH_MUSIC in the file
/etc/xivo/asterisk/xivo_globals.conf to customize the ringtone behavior.
If the value is set to True, you will hear the default music on hold while attempting to reach to a user with a mobile application. Otherwise, you will hear a regular ringtone.
XIVO_MAPP_WAIT_WITH_MUSIC = "True"
Before calling a user with a Mobile App, we wait for the mobile app to wake up (and (re)register (SIP level)). By default we wait 15s: 3 loops of 5s.
If the Mobile App never wakes up (or never (re)registers) the call will continue depending on the callee ringing device:
- if it was Mobile application: it will end up in user’s no answer scenario
- if it was UC Assistant + Mobile application: it will call the UC Assistant
The time we wait for the Mobile App to wake up is configurable by configuring the number of loops.
To do so, adjust the following two variables in the file
XIVO_MAPP_LOOPS_MOBILEAPP = 3 XIVO_MAPP_LOOPS_WEBAPPANDMOBILEAPP = 3
XIVO_MAPP_LOOPS_MOBILEAPPconfigures the number of loops if the callee ringing device is Mobile application
XIVO_MAPP_LOOPS_WEBAPPANDMOBILEAPPconfigures the number of loops if the callee ringing device is UC Assistant + Mobile application
Therefore you might, for example, want to:
- lower the number of loops when ringing device is UC Assistant + Mobile application: in order to fallback more quickly on the UC Assistant if the Mobile App does not wake up
- and increase the number of loops when ringing device is Mobile application: in order to give more time to the Mobile App to wake up before going to the callee no answer scenario