# Cisco 79xx phone directory Is now composed of several entities: * The script which is generating the CSV file based on externals provider. * The second one is the "Cisco 79xx phone directory" which is taking a csv and transform it to a Cisco 79xx phone directory. * The last one is the Asterisk AGI phone directory resolver which is taking a csv and is setting the CALLERID for incoming call. ==== Contact Backup ==== Copyright (C) 2012 Psychedelys <psychedelys@gmail.com> http://github.com/psychedelys/cisco79xx_phone_directory # Usage Backup your Google Contacts, own cloud contact, LDAP stuff is one csv file. The resulting CSV file is named 'contacts_extract.csv' and located in the current directory of the script. ==== Cisco 79xx phone directory ==== A Flask app to use Google Contacts as the phone directory for the Cisco 79xx IP phones. Copyright (C) 2012 Psychedelys <psychedelys@gmail.com> http://github.com/psychedelys/cisco79xx_phone_directory based on Copyright (C) 2010 Francois Lebel <francoislebel@gmail.com> # Pre-step The resulting CSV file should be named 'contacts_extract.csv' and located in the directory where the phone directory script resides. # Usage If you haven't already, install the Flask Python Microframework using "easy_install Flask", or visit http://flask.pocoo.org for more information. The Flask built-in webserver can be used for testing purposes from your browser. However, this webserver uses HTTP/1.0 by default, which is not supported by the Cisco 79xx IP phones. Therefore, it is recommended that you use a production-safe webserver, such as Apache + mod_wsgi. For more information on WSGI deployment, such as the required Apache configuration, read the official Flask documentation at: http://flask.pocoo.org/docs/deploying/mod_wsgi/ If needed, review the variables at the top of the script and set them according to your needs. You will also need to edit the SIPDefault.cnf file located at the root of your TFTP server to add a line such as this one: directory_url: "http://192.168.178.20:5006/directory.xml" You will need to edit the script file HOST variable to reflect your change also. # Limitations The Cisco 79xx IP phones support up to 32 entries per directory page. This is the motivation behind having a contacts search page since most people have more than 32 contacts on their {Google|ownCloud|LDAP|Phone} Contacts account. # Config to be added in the Cisco tftpboot file SIP.....cnf The directory_url is enougth if beeing set: directory_url: "http://192.168.178.20:5006/directory.xml" On some dummy firware, the services_url need also to be set. services_url: "http://192.168.178.20:5006/directory.xml" ==== Asterisk AGI phone directory resolver ==== Copyright (C) 2012 Psychedelys <psychedelys@gmail.com> http://github.com/psychedelys/cisco79xx_phone_directory This is using the same csv generated by the previous step. The copy procedure of the csv file is not documented (scp, rsync,...). If needed, review the variables at the top of the script and set them according to your needs (Locqtion of the CSV file). # Config to be added in the Asterisk In the file extensions.conf, in the incoming call section, need to add something like that: exten => _X.,1,noop(incoming call) same => n,AGI(csvsearch.agi,${CALLERID(num)})
psychedelys/phone_directory
An app to use Contacts as the phone directory for the asterisk, the Cisco 79xx IP phones and the Gigaset phones.
Python