]> git.defcon.no Git - hermes/blobdiff - doc/README
toot to test location data to see if sip subscriber is online
[hermes] / doc / README
index 8af719fd37fa7aa651d0b5b023fe44095521444d..58f574c5c02a171115f68cbf1c66530fbfefe5d3 100644 (file)
@@ -1,5 +1,5 @@
 ABOUT HERMES
 ABOUT HERMES
--------------------------
+------------------------------------------------------
 
 Hermes is a framework for managing a Kamailio SIP VoIP infrastructure.  It is
 designed to manage user accounts, SIP aliases, E164 phone number aliases and
 
 Hermes is a framework for managing a Kamailio SIP VoIP infrastructure.  It is
 designed to manage user accounts, SIP aliases, E164 phone number aliases and
@@ -9,13 +9,60 @@ implemented as HTTP-REST using JSON.  The user interface focuses on dayly
 administration tasks (user management, alias handling, phone registration) and
 not on Kamailio server management.
 
 administration tasks (user management, alias handling, phone registration) and
 not on Kamailio server management.
 
+LICENSE
+------------------------------------------------------
+  Copyright (c) 2012, Gjøvik University College
+  All rights reserved.
+
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions are met:
+      * Redistributions of source code must retain the above copyright
+        notice, this list of conditions and the following disclaimer.
+      * Redistributions in binary form must reproduce the above copyright
+        notice, this list of conditions and the following disclaimer in the
+        documentation and/or other materials provided with the distribution.
+      * Neither the name of the Gjøvik University College nor the
+        names of its contributors may be used to endorse or promote products
+        derived from this software without specific prior written permission.
+       
+  THIS SOFTWARE IS PROVIDED BY Gjøvik University College ''AS IS'' AND ANY
+  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+  DISCLAIMED. IN NO EVENT SHALL Gjøvik University College BE LIABLE FOR ANY
+  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 
 CONFIGURING THE FRONTEND/UI
 
 CONFIGURING THE FRONTEND/UI
--------------------------
+------------------------------------------------------
 TBD
 
 TBD
 
+DATABASE PREREQUESTITES FOR THE API
+------------------------------------------------------
+
+Hermes expects that Kamailio is installed and configured to use MySQL backing,
+with teh Siremis SQL structure, with subscribers in a 'subscribers' table, and
+aliases stored in 'dbaliases'. An SQL structure script for the tables used by
+Hermes is included in doc/sql-data/structure-kamailio.sql That file is included
+as a guide to verify the Kamailio configuration, and as a structure to use in
+development/testing as a replacement for a real Kamailio installation.
+
+Hermes itself requires a MySQL database on the same MySQL server, with the
+structure defined in doc/sql-data/structure-hermes.sql
+A database must be created, and the structure loaded prior to configuring
+the API.
+
+
+You may also choose to load the sample data. Note that the sample data does
+include a R/W API key, tied to the host 10.0.2.5. Replacing the IP
+address of that key may be used to boot-strap authorizations...
+
 CONFIGURING THE API
 CONFIGURING THE API
--------------------------
+------------------------------------------------------
 
 The API needs to be configured separately from the UI.
 API configuration is done by creating the PHP file
 
 The API needs to be configured separately from the UI.
 API configuration is done by creating the PHP file
@@ -29,11 +76,7 @@ sql_username -> Username for MySQL access
                Needs RW access to kamailio and provision db's
 sql_password   -> Password for the above username
 kamailio_db    -> Database name of kamailio db.
                Needs RW access to kamailio and provision db's
 sql_password   -> Password for the above username
 kamailio_db    -> Database name of kamailio db.
-provision_db   -> Database name of provision db.
-
-standard_dialplan -> Dialling pattern to use for new users
-default_domain   -> What domain should always be listed first
-permit_multiple_e164alias -> Currently not used ...
+hermes_db      -> Database name of hermes db.
 
 The following configuration options define SQL table names
 for respective data-sets, values for the sample-data.sql
 
 The following configuration options define SQL table names
 for respective data-sets, values for the sample-data.sql
@@ -42,8 +85,31 @@ are listed... :
 kamailio_domain_table          (domain)
 kamailio_subscriber_table      (subscriber)
 kamailio_alias_table           (dbaliases)
 kamailio_domain_table          (domain)
 kamailio_subscriber_table      (subscriber)
 kamailio_alias_table           (dbaliases)
-provision_users_table          (users)
-provision_phones_table         (phones)
-provision_servers_table                (servers)
+kamailio_domain_table          (domain)
+hermes_users_table             (users)
+hermes_phones_table            (phones)
+hermes_servers_table           (servers)
 numbers_table                  (numbers)
 numbers_table                  (numbers)
+apikeys_table                  (apikeys)
+authorizations_table           (authorizations)
+sessionkeys_table              (sessionkeys)
+
+Configuration parameters not related to database:
+
+auth_backend
+ -> Backing store plugin for API user auth.
+
+sessionkey_lifetime
+ -> The amount of time an auth_key is valid in an API session. 
+    Aka max ping-interval.
+
+standard_dialplan 
+ -> Dialling pattern to use for new users
+
+default_domain   
+ -> What domain should always be listed first
+
+permit_multiple_e164alias -
+ -> Currently not used ...
+