01. Installation Guide

Noojee Provision Installation guide

The following provides a brief guide to installing and using Noojee Provision for Asterisk.

Requirements

Noojee Provision has the following requirements:

  • Asterisk 1.2 or above ( Noojee Provision may work with earlier version but it has not been tested).
  • Java runtime environment (JRE) 1.6
  • MySQL 5.23 or above
  • Asterisk realtime SIP
  • DHCP service

Package based Installation

A debian (Ubuntu) package exists for Noojee Provision. Follow the instructions for installing NJ Admin via its debian package as the NJ provision package is dependant on the NJ Admin package.

Simply run the following command:

sudo apt-get install njprovision


You will be prompted to enter a number of parameters such as the asterisk servers ip address, mysql server IP address, username and password.

Note: I've attached the package to this page until it is placed into our repository. You can install it from a local directory by running:

dpkg -i *.deb

Manual Installation of Noojee Provision 

  1. Install Asterisk 1.2 or above
  2. Install MySQL 5.23 or above
  3. Install Java Runtime Environment (JRE) 1.6 or above
  4. Install Noojee Provision from the deb package
  5. Edit the mysql config file /etc/my.cnf and make certain it contains the following line in section [mysqld]
    lower_case_table_names = 1
  6. Start MySQL
    1. Run 'mysql' from the command prompt, e.g. >mysql
    2. Type 'show databases;' in the mysql shell
    3. If 'asterisk' is listed as one of the databases then skip to step 7 otherwise do step 6
  7. Create the Asterisk database
    1. java -jar NoojeeProvision.jar --initDB
  8. Create a user account on MySQL with permissions to create a database
    1. grant create, insert, update, select on asterisk.* to asterisk@localhost identified by 'asterisk'
    2. flush privileges
  9. From the /opt/njprovision directory:
  10. Edit the file config/NoojeeProvision.xml
    1. Update the AsteriskServer Update the TFTP and HTTP sections with the Asterisk Server IP address
    2. Update the entry MySQLServer ENTITY with the IP address of your MySQL server
    3. Update the entry MySQLDatabase ENTITY with the name of the asterisk database (usually 'asterisk').
    4. Update the MySQLUsername ENTITY entry with the name of the MySQL account you created above
    5. Update the MySQLPassword ENTITY entry with the MySQL password for the above account
  11. Update the Country, AreaCode and Timezone entries according to your requirements.
  12. Create the asterisk realtime SIP table (sip_buddies) by running:
    1. java -jar NoojeeProvision.jar --initSIP
  13. Create the asterisk relatime voicemail table (voicemail_users) by running:
    1. java -jar NoojeeProvision.jar --initVM
  14. Create the Noojee Provision specific tables by running:
    1. java -jar NoojeeProvision.jar --init
  15. Configure Asterisk realtime SIP
  16. Start Asterisk
  17. Add an option tftp-server-name entry to your dhcp service and restart it. (see the sample dhcpd.conf file in the config directory).
  18. Deploy the the script njprovision into /etc/init.d/njprovision
  19. Register the startup script by running:
    1. update-rc.d njprovision defaults
  20. Create the log directories as follows
    1. sudo mkdir /var/log/njprovision
  21. Start the njprovision service
    1. sudo /etc/init.d/njprovision start
  22. Test the system by plugging a phone into the LAN.
  23. Test that NJ Provision starts after a reboot.

Configuring Noojee Provision

NoojeeProvision.xml

The configuration of Noojee Provision is controlled by the configuration file NoojeeProvions .xml. The NoojeeProvision.xml is stored in the config directory e.g. /opt/njprovision/config/NoojeeProvision.xml

Database.jocl

The file config/database.jocl controls how NJ Provision access the My SQL database.

Log4j.xml

The log4j.xml file control the log level of NJ Provision.