Visual Voicemail  |  Android Open Source Project

android 6.0 (marshmallow) brought an implementation of visual voicemail (vvm) support built into the dialer, allowing supported carrier vvm services to connect to the dialer with minimal configuration. visual voicemail allows users to easily check voicemail without making any phone calls. users can view a list of messages in an inbox-like interface, listen to them in any order, and delete them as desired.

Android 7.0 added the following configuration parameters to Visual Voicemail:

  • voicemail prefetch controlled by key_vvm_prefetch_boolean
  • control whether a cellular data connection is required by key_vvm_cellular_data_required_boolean
  • voicemail transcription fetch
  • voicemail quota search

This article provides an overview of what is provided, how operators can integrate it, and some implementation details.

visual voicemail (vvm) client

android 6.0 and higher includes a vvm omtp client, which (when provided with the correct configuration) will connect to carrier vvm servers and populate visual voicemail messages within the open source project (aosp) dialer ) from android. the vvm client:

  • handles the sms messages used to activate/deactivate/query service status and the sms messages used to notify the device of events in the subscriber’s mailbox
  • synchronizes the mailbox with imap server
  • downloads voicemails when user chooses to listen to them
  • gets voicemail transcripts
  • gets voicemail quota details voice (total mailbox size and busy size)
  • is integrated into the dialer for user functionality such as call back, view unread messages, delete messages, etc.

integrate with vvm client

implementation

The operator must provide a visual voicemail server that implements the omtp vvm specifications. current implementation of aosp vvm client supports core functions (read/delete voicemails, download/sync/listen) but additional tui functions (password change, voicemail greeting, languages) are not implemented. At this time, we only support omtp version 1.1 and do not use encryption for imap authentication.

See Also:  Htc desire 12

To support transcripts, carriers must support the transcript attachment format (plain/text mime type) specified in the omtp 1.3 specification, item 2.1.3.

note: SMS messages originating from the server to the device (for example, status or synchronization) must be data SMS messages.

settings

For a carrier to integrate with the vvm service, the carrier must provide configuration details to the platform that the omtp client can use. these parameters are:

  • destination number and port number for sms
  • the package name of the visual voicemail application provided by the operator (if one is provided), so that the implementation of the platform can be disabled if that package is installed

These values ​​are provided through the carrier configuration api. This functionality, released in Android 6.0, allows an application to dynamically provide telephony-related settings to the various platform components that need them. in particular, the following keys must have values ​​defined:

  • key_vvm_destination_number_string
  • key_vvm_port_number_int
  • key_vvm_type_string
  • key_carrier_vvm_package_name_string
  • key_vvm_prefetch_boolean
  • key_vvm_mobile_data_required_boolean

see the carrier configuration article for more details.

implementation

vvm omtp client is implemented inside packages/services/telephony, in particular inside src/com/android/phone/vvm/

settings

  1. vvm client listens for #action_sim_state_changed or carrierconfigmanager#action_carrier_config_changed telephony intents.
  2. when adding a sim that has the correct carrier configuration values ​​(key_vvm_type_string set to telephonymanager.vvm_type_omtp or telephonymanager.vvm_type_cvvm), the vvm client sends an activation sms to the value specified in key_vvm_destination_number_string.
  3. the server activates the visual voicemail service and sends the omtp credentials via status sms. when the vvm client receives the status sms, it registers the voicemail source and displays the voicemail tab on the device.
  4. omtp credentials are saved locally and the device begins a full sync, as described below.
See Also:  Tạo yahoo mail không cần số điện thoại

synchronizing

There are a variety of ways the vvm client can sync with the operator’s server and vice versa.

Leave a Reply

Your email address will not be published. Required fields are marked *