Contacts without presence subscriptions may be loaded locally onto the phone by the phone's user; however, this is not recommended. 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.
Beginning with the DPMA 1.3, Digium phones can support storing phone-added contacts on the Asterisk server. To support server-side storage of contacts that are added, by the user, locally on the phone, the editable option for a phonebook must be set to 1 and an identifier, as set by the id option must be unique for the phonebooks loaded by that phone.
Though it is possible to add server-side contacts from the phone, those contacts are not editable from the phone, deletable from the phone, or configurable with a subscription URI. Digium thus advises that the best practice is to only edit contacts from the server side, not from the phone.
Loading a Contact List
Contacts files that the phone should load are separate files, defined by DPMA or configured in the phone's main configuration XML file. For DPMA, Contacts files are specified for a phone configuration using the phone configuration parameter:
Defines the name of a contacts group. This name is used in the Contacts application to organize contacts by group
Sets whether or not the group can be editable from the phone. If the phone is configured for server-side contacts storage and the editable option is set for a group, a contact may be added to that group from the phoneDefaults to 0. Not currently supported.
Unique identifier for a group