One of our sister companies decided not to jump on the Cisco UC bandwagon the rest of the group is happily using and instead went for a very cheap solution that involved an used Avaya IPoffice 500 v2 PABX and a mix of Avaya 16xx (H.323) and J129 (SIP) phones.
I will not discuss voice quality or other stuff here – my post is all about the phonebook and as usual I’m only doing it because of the scarcity of information available.
At startup the Avaya phones request their IP address via DHCP and some parameters as well; beside the classic network stuff (mask, router, etc.) and accessories (NTP, syslog…) itlooks for Options 55 and 242 which are two strings. Option 55 is a list of comma-separated number of options to request from DHCP (wicked!) and option 242 is a string with the basic L2 and L3 parameters (VLAN separation, HTTP server, et al).
Once started the J129 asks the host specified as HTTPSRVR for the J100Supgrade.txt file, which generally includes a reference to the settings file – by default J100settings.txt
Our problem, as I said, is the phonebook. Avaya 16xx phones use the H.323 protocol to manage phonebooks, while the cheap, SIP-only J129 does an HTTP request every time the “Contacts” softkey is pressed at the URL //personal_dir – where is defined in the J100settings.txt as USER_STORE_URI (the default is http://:80/user) and is a long hash (apparently) of something. The file must be an XML file with a very simple structure:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <personal_dir xmlns="http://www.avaya.com/ipoffice/personaldirectory" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.avaya.com/ipoffice/personaldirectory personal_dir.xsd"> <data_source>IPOFFICE/10.1.0.0.0 build 237 x.x.x.x</data_source> <GUID>HASHINALLCAPS</GUID> <modified>2017-11-23T15:13:15</modified> <list> <name>Contact Name</name> <numb>number</numb> <sdial>speed dial key</sdial> </list> </personal_dir>