Skip to end of metadata
Go to start of metadata


Digium Phones provide a Contacts application that integrates speed-dial, device busy-lamp field and user presence. The Contacts application is related to the Status application in that both are concerned with presence. The Status application is concerned only with setting the local user's presence. The Contacts application is concerned with the presence status of other users - those to which it's been programmed to subscribe.

Contacts without presence subscriptions may be loaded locally onto the phone by the phone's user. Most deployments of Digium phones will see the administrator specifying XML lists of contacts to load onto phones. Here, we will discuss the methods to direct the phone to load contacts as well as the contents of the contacts XML files.

Loading a Contact List

Contacts files that the phone should load are defined in the phone's configuration XMl file and are served up by the DPMA. Contact file are specified for a phone configuration using the phone configuration parameter:

  • contact

as noted above. Multiple "contact" lines may be used for each phone configuration.

Rapid Dial Keys

Rapid Dial, or BLF, keys are set using the phone configuration parameter:

  • blf_contact_group

The order of the contacts in this group is important. Those contacts fill in the BLF-keys in the same order as given in the xml, and those contacts are subscribed to, in order, up to a maximum of 40.

Contacts XML skeleton

A basic Contacts XML structure is defined here:

Contactx XML Structure example

And, a more fleshed-out example looks like:

XML Contact Example

Make sure to include definitions for both first_name and last_name in your contacts XML file, even if one of them is to be blank. Failure to do so will lead to irregular sorting inside the phone's Contacts application.

Subscription URI


When using the DPMA, the subscribe_to parameter should point to a special hint automatically created by the DPMA. This hint is in the format "auto_hint_<peer>," e.g.:

In this case, it is not necessary to create a dialplan hint, as it is automatically created by the DPMA

When not using the DPMA, the subscribe_to parameter should instead point to a regular SIP URI, e.g.:

or, simply to an extension, where the phone will automatically subscribe to the registered server, e.g.:

Also, when the DPMA is not used, it is necessary to create a dialplan hint, e.g.:

exten => 1234,hint,SIP/mypeer
exten => 1234,1,NoOp()
exten => 1234,n,Dial(SIP/mypeer,20)

In both cases, use of the DPMA or not, the callcounter sip.conf parameter is still necessary.



Definition of a primary number for a contact, e.g.:

is mandatory if that contact is attached to a Rapid Dial key. This number is the dialed number when the Rapid Dial key is pressed.

  • No labels