]> 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
--------------------------
+------------------------------------------------------
 
 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.
 
+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
--------------------------
+------------------------------------------------------
 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
--------------------------
+------------------------------------------------------
 
 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.
-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
@@ -42,8 +85,31 @@ are listed... :
 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)
+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 ...
+