GVC32XX Series - XML Based Phonebook Guide

  • Updated on February 21, 2024

The Grandstream GVC32XX Full HD Video Conferencing System supports XML based downloadable phonebook for users to share and maintain a phonebook remotely with ease. Besides directly importing VCard/CSV format contacts, loading contacts from synced-up accounts and manually editing from LCD or web UI, the GVC32XX offers this XML API as a user-friendly download method via the GVC32XX’s LCD and web UI.

For the ease of efficient deployment and management, the XML phonebook file could be stored on a web server for the SIP endpoints to download. There are also applications that require a centralized directory server and have all SIP endpoints synchronized with the server periodically.

This document specifies the Grandstream XML based downloadable phonebook configuration that will be applied to GVC32XX. An example XML phonebook file is provided at the end of this guide. Users could start a phonebook by adding contacts to the example file or exporting the existed phonebook file from its LCD or web UI.

What is XML

XML (eXtensible Markup Language) is a markup language* for documents and applications containing structured information. This information contains both content (text, pictures, input box and etc.) and an indication of what role that content plays (e.g. contents in a section header is different from contents in a footnote). Almost all documents are structured.

*A markup language is a mechanism to identify structures in a document. The XML specification defines a standard way to add markup to documents.

XML API Architecture

The XML based phonebook downloading for the GVC32XX could use HTTP or TFTP as the transport protocol. The following figure shows how it works via HTTP as an example.

First, the GVC32XX initiates the HTTP GET Request to the HTTP server and waits for the response. Once the device receives the response with XML content in BODY, it displays the information.

Figure 1: GVC32XX XML API via HTTP

Two types of XML API architecture are introduced below, depending on whether the transaction is via LAN or Internet.

  1. A transaction in the LAN may exchange information in the following manner. The GVC32XX sends a request to the web server via HTTP/TFTP and waits for a response with the XML contents. The web server will handle the request and communicate with the application server to get the information for the XML phonebook content display. The following figure shows downloading XML phonebook file via HTTP within a LAN.
Figure 2: GVC32XX XML API Structure 1
  1. If the above Web Server accesses Internet, it could interact with outside web server and respond with real-time content to the GVC32XX.
Figure 3: GVC32XX XML API Structure 2

As illustrated above, all the logic lies within the server side of the architecture. The GVC32XX just receives the XML documents and displays it accordingly.

XML PHONEBOOK CONFIGURATION

Firmware

Before the XML phonebook is used on GVC32XX, please make sure the firmware on the device is upgraded to the latest version. Please refer to the following link for firmware upgrading information:

https://www.grandstream.com/support/firmware

Web Configuration

To configure XML phonebook file download, go to web UI -> Contacts, click on “More” icon on the bottom and select “Download” on GVC3200/3202/3210. This will open the XML Phonebook download interface in a new window.

Figure 4: Contacts->More->Download on GVC3200/3202/3210

Figure 5: XML Phonebook Download on GVC3200/3202/3210

For the GVC3220 go to web UI -> Call -> Contacts, click on “More” icon on the bottom and select “Download”.

Figure 6: Contacts->More->Download on GVC3220

Figure 7: XML Phonebook Download GVC3220
  • Clear The Old List

If this option is set to “ON”, all the existed entries in the GVC32XX Contacts will be automatically removed when the XML phonebook is downloaded to the device. The default value is “OFF”.

  • Clear The Old List Mode

If set to “Clear All”, the device will delete all previous records before downloading the new records. If set to “Keep Local Contacts”, manually added local contacts will not be deleted when downloading new records.

Note:

This is only available on the GVC3220.

  • Replace Duplicate Entries/Items

If this option is set to “ON”, the duplicate entries in the GVC32XX Contacts will be automatically replaced with the ones in the downloaded XML phonebook. The default value is “OFF”.

  • Replace Duplicate Entries Mode

If set to “Replace by Name”, records of the same name will be replaced automatically when downloading new records. If set to “Replace by Number”, records of the same number will be replaced when downloading new records.

Note:

This is only available on the GVC3220.

  • Download Mode

The phonebook XML file could be downloaded via HTTP/TFTP/HTTPS. Users could also set it to “OFF” to disable phonebook download.

  • File Encoding

This option specifies the encoding format for the XML phonebook file. Users could select “UTF-8”, “GBK” (for Chinese characters), “UTF-16”, “UTF-32”, “Big5”, “Big5-HKSCS”, “SHIFT-JIS”, “ISO8859-1”, “ISO8859-15” and “Windows-1251”. The default value is “UTF-8”.

  • Download Interval/Automatic Download Interval

This specifies the phonebook automatic download time interval. The available intervals are 2 hour, 4 hour, 6 hour, 8 hour and 12 hour. If it’s set to “None”, automatic download will be disabled.

  • Download Server

This specifies the path where the device is going to download the XML phonebook file. Since download method is already specified in the previous selection, users do not have to provide this information in the server path. The accepted format is as follows:

IP_address[:port]/dir

Hostname[:port]/dir

Examples:

192.168.40.10/XMLphonebookdir

192.168.40.10:443/XMLphonebookdir

service.mycompany.com/XML/phonebook

mycompany.com:8080/phonebook

  • HTTP/HTTPS Username

If the HTTP/HTTPS server has access control set up that requires HTTP/HTTPS authentication, the user needs to fill up the HTTP/HTTPS username here.

  • HTTP/HTTPS Password

If the HTTP/HTTPS server has access control set up that requires HTTP/HTTPS authentication, the user needs to fill up the HTTP/HTTPS password here.

Note:

  1. If “[:port]” is not specified, port 80 will be used as default for HTTP, port 8089 will be used as default for HTTPS, and Port 69 will be used as default for TFTP.
  2. The GVC32XX always looks for the phonebook file phonebook.xml for downloading if no file name is specified in the server path. Users could also change the phonebook name if desired. In this case, the phonebook file name needs to be specified in the server path. For example, if the phonebook file name is GVC320xcontacts.xml and the server directory is 192.168.40.10/XML, the download server path should be 192.168.40.10/XML/GVC320xcontacts.xml.

After the above configuration, click on “Save” to save the changes. Users could click on “Download” to start the downloading process.

Figure 8: Download XML Phonebook on GVC3200/3202/3210
Figure 9: Download XML Phonebook on GVC3220

LCD Configuration on GVC3200/3202/3210

Besides using the web UI to configure XML phonebook download, the users could also achieve the same configuration via GVC3200/3202/3210 LCD display using the GVC remote control.

  1. On the GVC3200/3202/3210 LCD main screen, click on “Contacts”.
Figure 10: LCD Main Screen –> Contacts
  1. Press button on the remote control and select “Download”.
Figure 11: Contacts –> Download
Figure 12: XML Phonebook Download Configurations in LCD
  1. Use the remote control to configure phonebook download parameters, which are the same as described in section Web Configuration.
  2. Press the yellow shortcut key on the GVC remote control or press –> Save to save the configuration.
Figure 13: Save Configuration
  1. The users can press the red shortcut key on the GVC remote control or press –> Download Now to download the phonebook XML immediately. Or the users can wait for the next downloading interval (if configured) for the phonebook to be downloaded to GVC3200/3202/3210.
Figure 14: Download Now

Note:

LCD configuration is not possible on the GVC3220.

Provisioning

Users may also use the config file to provision GVC32XX with the above XML phonebook downloading options. The corresponding P values are as shown below:

  • P330: Download Mode. Possible values: 1 (TFTP) / 2 (HTTP) / 3 (HTTPS) / 0 (OFF); other values are ignored. The default value is 0.
  • P1435: Clear the Old List. Possible values: 0 (No) / 1 (Yes); other values are ignored. The default value is 0.
  • P1436: Replace Duplicate Entries. Possible values: 0 (No) / 1 (Yes); other values are ignored. The default value is 0.
  • P1681: File encoding. Possible values: UTF-8, GBK, UTF-16, UTF-32, Big5, Big5-HKSCS, SHIFT-JIS, ISO8859-1, ISO8859-15, Windows-1251. The default value is UTF-8.
  • P331: Download Server. This is a string for the path to download the phonebook.xml file. It MUST be in the host/path format.
  • P332: Download Interval (in minutes). Possible values: 0 – “None”, 120 – “2 hour”, 240 – “4 hour”, 360 – “6 hour”, 480 – “8 hour”, and 720 – “12 hour”; other values are ignored. The default value is 0 (automatic download disabled).
  • P6713: HTTP/HTTPS Username for phonebook downloading
  • P6714: HTTP/HTTPS Password for phonebook downloading

GVC32XX will be set up with the P values when the provisioning routine is completed. It will attempt to download the phonebook XML file specified in “Download Server” with configured interval and process it. If the “Download Interval” is set to a non-zero value, a recurring timer will be activated periodically to check the phonebook file in the server and the device will repeat this process automatically.

Note:

  1. As you may know, it is also possible to enter the XML phonebook file server path into a web browser. In this way you’ll be able to see the exact XML document on your PC that your phone will be receiving.
  2. The downloaded XML phonebook file can be displayed but it won’t be saved internally on the device. It is recommended to save the XML phonebook file externally on your PC or server for your reference and future use.

Import/Export Phonebook

Besides downloading phonebook file from remote server, users could also directly import phonebook.xml to the GVC32XX from the web UI. If there is an existing phonebook in the device’s Contacts already, users may export the phonebook file to PC as well. The “Import” and “Export” settings are under web UI–> Contacts: More on the GVC3200/3202/3210 or under web UI –> Call –> Contacts: More on the GVC3220.

Figure 15: Import/Export Phonebook on GVC3200/3202/3210
Figure 16: Import/Export Phonebook on GVC3220
  • Import

Click on “Import” and the following figure will show:

Figure 17: Import Phonebook XML File: Settings on GVC3200/3202/3210
Figure 18: Import Phonebook XML File: Settings on GVC3220

Configure import options “Clear The Old List”, “Replace Duplicate Entries”, “File Encoding” format and select “File Type” as “XML” (with “Clear The Old List Mode” and “Replace Duplicate Entries Mode” on the GVC3220 only). Then, click on “Browse” button to specify the path where the phonebook.xml is located in the PC.

Figure 19: Importing Phonebook XML
Figure 20: Import Phonebook XML Successfully

After selecting the file, GVC32XX will start importing and finish importing (see figure above) automatically. If the file fails to be imported, please check the format and syntax of the phonebook xml file.

  • Export

Click on “Export” and the following figure will show:

Figure 21: Export Phonebook XML File: Settings

Select “File Encoding” format and select “File Type” as “XML”. Then, click on “Export” to download phonebook.xml, this file will be saved in PC, under the default downloading directory.

Figure 22: Exporting Phonebook XML File

Note:

  1. The Import/Export options are also available in GVC3200/3202/3210 LCD main screen 🡪 Contacts. Click on 🡪 select Import/Export.
  1. For “Import”, the phonebook file needs to be located in GVC3200/3202/3210 file system or SD card/USB storage plugged into the GVC for selection; for “Export”, choose the GVC file system directory for the phonebook xml file to be saved to.
  2. The users could manually add contacts to GVC3200/3202/3210 via web UI or LCD first, and then export the phonebook XML file, which can be used as a template of phonebook xml file to import or download.

XML PHONEBOOK SYNTAX

In the first line of the XML document, the following header can be set as XML declaration. It defines the XML version and encoding. On the GVC32XX, UTF-8, GBK, UTF-16, UTF-32, Big5, Big5-HKSCS, SHIFT-JIS, ISO8859-1, ISO8859-15 and Windows-1251 can be used as encoding method for correct display. Example:

<?xml version=”1.0″ encoding=”UTF-8″?>

Phonebook XML Structure

An XML phonebook example for GVC32XX can be found in the last section of this document. The main structure is represented as below. (Some of the elements are optional).

Figure 23: Phonebook XML Structure

Phonebook XML Element

This section describes details of the XML element used in GVC32XX XML phonebook file. Please note that the element name is case-sensitive when being used in XML document.

ROOT Element <AddressBook>

<pbgroup> Element

<pbgroup>

<id>Enter group id here</id>

<name>Enter group name here</name>

<ringtones>Enter ring tone URL for the group</ringtones>

</pbgroup>

Object

Position

Type

Values

Comments

pbgroup

Element

Optional

Each pbgroup is a group. More than 1 group can be defined.

id

Child element

Optional

Number

To specify group ID

name

Child element

Mandatory

String

Group name

ringtones

Child element

Optional

String

The directory/path to the ring tone file stored in the GVC32XX.

Table 1: <pbgroup> Element

<Contact> Element

<Contact>

<FirstName>Enter first name here</FirstName>

<LastName>Enter last name here</LastName>

<Phone type=”Specify phone type here“>

<phonenumber>Enter phone number here</phonenumber>

<accountindex>Enter account index here</accountindex>

</Phone>

<Mail type=”Specify mail type here“>Enter email address here</Mail>

<Group>Enter group ID here</Group>

</Contact>

Object

Position

Type

Values

Comments

Contact

Element

Mandatory

-

Each contact is an entry.

FirstName

Child element

Optional

String

Specify first name and last name. At least one of them has to be specified.

LastName

Child element

Optional

String

Phone

Child element

Optional

-

Phone number information

Mail

Child element

Optional

String

Specify email address. It has attribute "type". Type: Work/Home/Others

Group

Child element

Optional

Number

Specify group ID for this contact.

Table 2: <Contact> Element

<Phone> Element

<Phone type=”Specify phone type here“>

<phonenumber>Enter phone number here</phonenumber>

<accountindex>Enter account index here</accountindex>

</Phone>

Object

Position

Type

Values

Comments

Phone

Element

Mandatory

It has attribute “type”.

Type: Work/Home/Mobile/Fax/Others

Phonenumber

Child element

Mandatory

Number

Phone number

accountindex

Child element

Mandatory

Number

From 0 to 5 for account 1 to account 6

Table 3: <Phone> Element

<?xml version=”1.0″ encoding=”UTF-8″?>

<AddressBook>

<version>1</version>

<pbgroup>

<id>1</id>

<name>Work</name>

<ringtones/>

</pbgroup>

<Contact>

<FirstName>Jane</FirstName>

<LastName>Doe</LastName>

<Phone type=”Work”>

<phonenumber>81234567</phonenumber>

<accountindex>1</accountindex>

</Phone>

<Mail type=”Other”>JaneDoe@mycompany.com</Mail>

<Group>1</Group>

</Contact>

<Contact>

<FirstName>Alex</FirstName>

<LastName>Smith</LastName>

<Phone type=”Home”>

<phonenumber>1234567890</phonenumber>

<accountindex>1</accountindex>

</Phone>

<Mail type=”Other”>smith.alex@mycompany.com</Mail>

</Contact>

<Contact>

<FirstName>John</FirstName>

<LastName>Williams</LastName>

<Phone type=”Mobile”>

<phonenumber>5432154321</phonenumber>

<accountindex>1</accountindex>

</Phone>

<Mail type=”Home”>Johnwilliams@mycompany.pbx.com</Mail>

</Contact>

</AddressBook>

SUPPORTED DEVICES

Following table shows Grandstream products supporting xml phonebook protocol.

Model

Firmware

GVC3200/3202

1.0.1.74 or higher

GVC3210

1.0.1.69 or higher

GVC3220

1.0.1.24 or higher

Table 4: List of Supported Products

Was this article helpful?

Related Articles

Need Support?
Can’t find the answer you’re looking for? Don’t worry we’re here to help!
Contact Support

Leave a Comment