Skip to content

Cloud Softphone Provider FAQ

Push Notifications

How do Push Notifications work? Do we need to do anything to make them work?

Push Notifications allow users to receive calls or messages when the app is in the background or closed while using almost no battery. When the app goes to the background, or is closed completely, Acrobits' SIPIS server registers the SIP account and starts listening for incoming calls. Any incoming call or message then comes to the server, allowing the app to sleep while consuming almost no battery power. When an incoming event is received, SIPIS wakes up the app by using Apple Push Notification Service (APNS) or Google Cloud Messaging (GCM). The user can then accept the incoming call as if it came to the device itself.

SIPIS was designed to be compatible with SIP proxies that follow SIP standards, so no additional provider-side changes are required. Turning the option on should be all that is needed to make Push Notifications work with your service.

How secure are Push Notifications?

To use Push Notifications, Acrobits' SIPIS server must be able to register for incoming calls and therefore needs to know the user's SIP credentials. These credentials are transferred over an encrypted connection and stored securely at the time Push Notifications are enabled. When the user disables Push Notifications or deletes the account completely, the SIP credentials are immediately deleted. If we do not hear from the device for over 7 days, which may happen if the device was destroyed, fully reset, or simply not opened, the credentials are deleted as well and Push Notifications are disabled.

The security concerns around storing SIP user credentials can be eliminated by installing SIPIS on the provider's own premises. If you host your own SIPIS server for your customers, having access to their SIP credentials is not an issue because you control the whole security chain anyway. Using External Provisioning also lets you create SIP usernames and passwords for your users and provision the app without giving them those details. By combining these features, Push Notifications can be made fully secure.

What is the difference between Acrobits SIPIS and our own SIPIS server?

SIPIS servers are components that make Push Notifications work. They register SIP accounts and listen for incoming calls when the mobile app is not running. Acrobits hosts a cloud of SIPIS servers that are immediately available and all you have to do to use them is turn the feature on.

The Push Notification design requires that SIPIS knows the SIP credentials of users. If that is a concern, you can decide to host your own SIPIS server. We provide SIPIS binary packages for Debian Linux, and with some effort it should also be possible to install them on other Linux distributions. You can then install, configure, and maintain your own SIPIS server for your users.

Provisioning

What is external provisioning? Do I need it?

With normal provisioning, the user enters SIP username and SIP password during provisioning, either by scanning a QR code or entering them manually. External provisioning allows you to define a web service that provides the actual SIP credentials. When the user enters username and password, this web service is called and passes this information as parameters. The web service then returns the real SIP credentials, which are used for SIP registration.

The user will not be able to see the actual SIP credentials, so you can also use External Provisioning to prevent users from using those credentials in other SIP clients or devices.

External provisioning also gives you more control over the provisioning process. You can provision other information as well, for example the account title on a per-user basis or feature flags for specific users. See the production docs for Cloud Softphone account configuration.

Because sensitive information such as passwords is transferred, the web service must use the https: URI scheme with a valid SSL certificate.

Detailed information on configuring External Provisioning is available in the Cloud Softphone web portal in the provisioning options once you sign up for the feature. Like all Cloud Softphone features, it can be tested before you spend anything on the service.

Which ways are possible for incoming calls?

iOS

Push Notifications

We send Push Notifications on incoming calls, allowing the app to sleep in the background or even be closed completely and still be able to receive calls. This option is the most battery-efficient if you want to always be available for calls.

Keep Device Awake

The application is always running and registered, even in the background. The device is prevented from sleeping. This option is the most demanding on battery life.

Backgrounding

The application sleeps in the background and wakes only for significant events such as incoming calls, re-registering, or network changes. This option requires TCP as the transport protocol and a registration period of 600 seconds or longer. It is not as battery-efficient as Push Notifications but is much better than Keep Device Awake. If you support TCP or TLS, this may still be your preferred option because it does not rely on SIPIS for incoming call notifications.

Foreground Only

The app registers and receives calls only when in the foreground.

Android

Push Notifications

We send Push Notifications on incoming calls, allowing the app to sleep in the background or even be closed completely and still be able to receive calls. This option is the most battery-efficient if you want to always be available for calls.

Keep Device Awake

The application is always running and registered, even in the background. The device is allowed some sleep but is woken up periodically. This option is the most demanding on battery life.

Foreground Only

The app registers and receives calls only when in the foreground.

These buttons can be fully customized by you. You enter the button title and URL in Provisioning options and you can have up to two buttons on the new account page and up to two different buttons on the edit account page. Clicking on these buttons opens an embedded browser within the application and shows whichever page you configure. Typical examples are password reset, customer support, or buy-more-credit links.

Customization

What customization is required? Where will I see the logo image?

Cloud Softphone comes with a default neutral graphics theme. If you provide your own graphics assets, they replace the default ones. The logo image is shown in Settings on the page where the user can edit SIP account details. This is the only graphics asset that must be provided by you; the rest can remain default.

As for SIP parameter customization, this depends on how many features you want enabled for your app. In the simple case, you should only need to provide the SIP domain.

Does it mean that I will have my own application on App Store / Google Play?

No. Your users will download the Cloud Softphone application from the App Store and Google Play. Only after provisioning, either by QR code or by entering the Cloud ID, username, and password manually, will the graphics design and provisioning options be downloaded and the app branded for your service.

You can customize most of the graphics in our web-based GUI editor. The elements that cannot be changed are the application name, icon, and splash screen.

If you want to have your own application in App Store or Google Play, we also offer a white-label program. If you already have a Cloud Softphone application, we deduct the Cloud Softphone setup fee from the white-label price. For more info, contact sales@acrobits.cz.

What if I change settings on the web portal? Will my users get the update?

After the app is approved, it changes its state to Live. You are not allowed to make changes to live applications directly; they must stay exactly as approved. However, you can create an editable copy of the live application and make your changes there. You can also test changes on mobile devices by provisioning the apps using EXAMPLE QR codes or by entering your Cloud ID followed by an asterisk.

After you finish the changes, submit the app for review again. Once approved, the previously live version is replaced by the new settings and all users are automatically updated. The app checks for a new update on startup and then once every hour. If an update is available, the new settings are applied automatically with no user intervention. Basic settings and theme changes are included; only adding paid features that you did not already have requires additional payment.

Going Live

Can I test before I pay? What are the limitations?

All features of your app can be fully tested before payment on both iOS and Android devices. Before you submit the app for review, you can use QR codes with EXAMPLE stamps printed over them, or you can manually enter the Cloud ID of your app followed by an asterisk. For example, if your Cloud ID is VOIP, you can enter VOIP* to load the draft editable version of your provisioning settings onto your device and test it.

The only limitation of the testing version of your provisioning settings is call duration, which is limited to 40 seconds. After 40 seconds, the call is terminated and an explanatory message is shown.

Why do I need to submit the app for review?

We want to make sure that Cloud Softphone apps are configured correctly, work reliably with the provider's backend, and offer a good customer experience. Our review team can often spot minor issues that are easy to fix and can also suggest improvements.

During review, we scan through the app, make sure that provisioning works correctly, and try a few short test calls between the two test accounts or to a landline number. This helps validate codecs, NAT traversal, and other components. If your app cannot be tested like this, for example because you use a private PBX not accessible from the outside, leave a note in the comments section at the bottom of the app page after submission.

The review process should typically not take more than 24 hours on business days.

Extra Features

How do I generate the QR codes? Do I need your help to generate them?

QR codes are defined by a standard and anyone can create them, so you do not need our help. We do, however, have a specific QR format for messages stored in the QR code.

There are several ways to create the QR codes, depending on your needs:

  1. If you only need a QR code for your Cloud ID and do not want username and password provisioning via QR code, you can simply download the QR code visible on your app detail page in the Download to device box.
  2. We provide a simple form which creates Cloud Softphone-branded QR codes. If you need a quick way to create several QR codes, this is the best option. The drawbacks are that creating a large number of QR codes is inconvenient and, when you use QR codes with usernames and passwords, you send them over an encrypted connection to an Acrobits server.
  3. You can use one of the many free online QR code generators. They will work as well, but the QR codes will not be Cloud Softphone-branded. The same drawbacks apply as in the previous point.
  4. If you want to create QR codes on your own premises, you will need some QR code generator and probably a script which will get the usernames and passwords and use them in the process. There are many good libraries for various programming languages, for example phpqrcode for PHP and qrcode for Python.
  5. There are also some apps for both Mac and Windows that can generate QR codes. Search the app stores.
  6. We have also created a free PHP library which can create Cloud Softphone-branded QR codes. Post a comment under your app for more information.

How do I offer users the G.729 codec?

There are two ways to enable support for the G.729 codec in the app:

In-app purchase

The codec is initially locked, but the user can purchase it within the app. After the payment is completed, the codec is unlocked. With this option, there is no charge for the provider; end users pay the codec price.

Post-paid licensing

In this case, the codec is available and unlocked for all users of the app. Acrobits counts licenses for unique users who used the codec at least once in a given month and sends an invoice at the end of that month. Unique users are determined by unique SIP usernames. With this option, end users do not have to pay anything and the provider pays the codec price.

Security

Do you offer secure (encrypted) calls?

Yes, we support secure calls via SRTP/SDES. We do not currently offer ZRTP for Cloud Softphone, but it is available for white-label applications. If you are interested in details, contact sales@acrobits.cz.

How secure are Push Notifications?

See How secure are Push Notifications?.

Desktop Apps - Distribution and Installation

Can I distribute my Windows application through Microsoft Store?

Yes, you can distribute your application through Microsoft Store. However, a developer account is required. Go to partner.microsoft.com for more information.

Can Microsoft Intune or a third-party store be used?

Yes, you can use Microsoft Intune and APPX distribution to distribute your Windows applications. APPX distribution is used for sideloading and requires a developer account. Go to partner.microsoft.com for more information.

Is Microsoft Installer (MSI) distribution method supported?

Yes, MSI distribution is supported for native Windows apps. See Windows App Silent and Bulk Installation for more details on MSI installation options.

Do you support bulk or silent installation? How can I do it?

See Windows App Silent and Bulk Installation for more information.

Can I use headsets with CloudSoftphone on Windows and Mac?

Yes. Supported headsets include:

  • EPOS/Sennheiser: EPOS Connect software must be installed.
  • Jabra: No third-party software is required.
  • Poly (formerly Plantronics): Requires Plantronics Hub. Running Plantronics Hub and Poly Lens at the same time is not recommended.
  • Snom: No third-party software is required.
  • Yealink: No third-party software is required.