/
2.6.6 Calling Onnet and Offnet

2.6.6 Calling Onnet and Offnet

In the RCS services a call can be routed through the IP network directly to another RCS user or to the PSTN network (GSM or landline numbers). Calls to other users are  referred to as onnet while calls out to PSTN networks as offnet. The difference between these two services is in their cost to the user as onnet calls are free while offnet are charged according to the tariff imposed by the provider. Also the onnet calls offer more features which include video calling, hd audio and others described further.

For RCS contacts the user can select how we wants to connect, either onnet or offnet (if the RCS contact is registered with phone number). For non RCS contacts the only option is to use offnet routing.

Onnet calls (free users to user)

 

Calls among users remain within the provider’s network (Onnet). For the OTT providers the term Onnet refers to the communication which go through the network elements (softswitches, media servers etc.) of the provider. Therefore it is important to offload the provider’s side from the media traffic, especially with the rapid growth of video communication and wide band  (HD) codecs for voice. To address this issue we introduced the support for ICE mechanism in the dialers which allow for peer to peer communication.

For audio the OPUS codec is utilized which supports adjustable bitrate and several audio preprocessing algorithms which guarantee high quality in changing network conditions.

Video calling is based on VP8 code with congestion control mechanism.

ICE – peer to peer

 

The ICE framework provides a mechanism for finding the most efficient media path. The preference is set for direct peer to peer calls between users. Call request is sent from client A to B using SIP through the SIP server (Voipswitch). When answered by B both dialers start sending packets to one another trying direct path – to their NATs IP addresses, and the path via media relay server. In most cases (more than 95% of NATs) the peer to peer path will be established successfully. If for some reasons the direct path cannot be established the ICE framework will seamlessly connect through the server.

The ICE framework comprises a set of mechanisms which not only help to find the best route but also are the most efficient in NAT traversing. ICE has been selected also by the WebRTC  and is now obligatory in their standard.

Video calling

 

Video call can be initiated directly by clicking on the appropriate icon (the one with a camera icon) in the contact details view. The other side will get the call with an option to accept video or audio only.

The other method is to initiate audio only call and enable video later, during the call, by clicking on the video icon on the “in a call” screen.

During video call the control buttons disappear after two seconds and come back when you touch the screen, then goes off again after two seconds of inactivity.

During a call functions

 

While in a call the screen is composed of following elements (from the top):

  • quality indicator

  • avatar

  • name of the other party

  • active or on Hold information

  • mute microphone

  • speaker

  • record audio

  • hold

  • bottom bar with actions:

    • end call

    • send instant message

    • send attachment

    • turn on video

    • additional options menu

  • the additional options menu include following actions:

    • add call

    • transfer call

    • merge into conference (enabled if there are more than one call)

 

Quality indicator

The application controls the RTP (media) stream and measures various quality factors, the main being the lost packet count. The check is performed for both audio and video. When the measured quality of the stream drops below one of 3 predefined quality levels it will be signaled by changing the icon and displaying a popup with adequate text. The levels are excellent, good and poor. They are related to the MOS metrics (Mean Opinion Score).

Recording

Recording works only for audio. When in a call a user can press the record button and start recording the conversation. The recording will contain whole conversation i.e. combined streams of all parties. The recordings are stored in wav format, each recording in a separate file. The files can be retrieved from a device using iTunes/file sharing menu.

 

Bottom menu

 

Instant messaging in a call

Tapping the chat icon will open chat window where you can compose and send a text message.

When you receive a new message a badge will be shown on the message icon, also there is a short beep indicating its arrival.

Transfer

An active call can be transferred to some other number or another Callto.net user. The phone number can be typed from the dialpad or be selected from the Contacts list.

When you tap the transfer button the other party is put on hold. After selecting the number or Callto.net user the active call is disconnected from your dialer and then the server tries to connect to the new destination. As you do not know if this operation succeeded or not this type of transfer is called blind transfer.

Multiline support

The application supports up to 4 concurrent calls. You can switch between them by tapping on an avatar representing particular caller.

When there is a new call coming while you are in a call already, you will hear a beep and see the new avatar shown on the call view.

If you want to add a new call click on the plus icon. Similarly to the transfer feature you will be presented with an option to choose the number from dialpad or to choose an item from the contacts list.

Conference

Active calls can be merged into a conference. It works only for audio, the mixing is done on the application side hence the limit to 4 active callers. To start a conference tap the merge calls icon.

 

Offnet calls (RCS Out)

 

RCS Out is a service allowing users to place calls to PSTN numbers through the provider’s voip platform. Calls are sent over internet to the provider and from there to telephony network. Such calls are usually charged according to the tariff set by the provider.

The offnet calls can be initiated from:

  • Contacts by tapping on non RCS entry.
  • Contact view of non RCS contact
  • Contact view of RCS user by selecting the paid call button
  • From the dialpad menu

 

Calling from dialpad

 

Users must dial using the International Number Format (using 00 or +). The dialer will automatically recognize and display the flag of the country to which a user is calling.

 

Recents menu (call log)

The calls are grouped in threads by the caller ID. If more calls came subsequently from the same caller they will be grouped in one thread. Each thread or a single call entry has an arrow icon indicating whether it was incoming, outgoing or missed call.

Taping on the row in the call log list takes us to the call details view which shows more information on the caller and exact time of calls from and/or to him.

Related content