Reference9:Concept Reporting: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
Line 119: Line 119:
===Installed Debian Packages===
===Installed Debian Packages===
===Configuration Files===
===Configuration Files===
pg_hba.conf is the client authentication configuration file and controls which hosts are allowed to connect, how clients
are authenticated, which PostgreSQL user names they can use and which databases they can access.
postgresql.conf is the PostgreSQL configuration file
===Data Files===
===Data Files===
===Report XML===
===Report XML===

Revision as of 19:02, 9 March 2011

Requirements

It is needed to have the application platform installed and running.

Installation

Download the latest version of innovaphone reporting.

Log into the application platform, go to the Applications tag, click on Upload/Update and upload the downloaded file. The installation will start automatically and the page will refresh every two seconds showing the installation process. If there is no error during the installation you will see at the end "Installation was succesfull". Otherwise, you will get "installation failed" and the reason why it went wrong.

Configuration

Device

It is required to have a Reporting license installed on your device. Check under General/License if you already have one.

Any innovaphone device which sends CDRs to the reporting application must have at least one CDR interface configured. Log into your device, click on Gateway and use the following options for the configuration of the CDR interface:

- Type: HTTP/HTTPS

- Address: ip address of the application platform

- Port: 80

- Method: POST/GET

- Path: ap/cdr.fcgi

The application platform is by default password protected and will drop the received CDRs. There are two ways to have the CDRs written in the database, either the innovaphone Application platform URL/username/password is configured in your device under Services/HTTP/Client or you configure the "ap/cdr.fcgi" path as public in the application platform (see explation below, 3.2)

innovaphone Application Platform

If the reporting URL/user/password is not configured in your device, you should then define this URL as public in the application platform under Administration/Web Server (this option is however not recomended)

Database

reporting installs postgreSQL version 8.3 as database management system and creates the innovaphone-reporting database to store CDRs sent from any innovaphone devices (appendix 7.6 explains the database structure). PostgreSQL is also available for other applications and any of them could create its own database.

Password

reporting creates the database user "innovaphone-reporting" with default password "reporting". This password may be changed at the innovaphone reporting page under Config/Database.

Remote Access

there are tools (PgAdmin III) that allow to connect to application databases remotely. It is first needed to configure the IP you are connecting from under Config/Database at the innovaphone reporting page.

Filters

General

Conditions

Report Creation

General

Web Interface

Remote Interface

Backup and Restore

You can both manually and automatically backup the database and configuration files for reporting under Administration/Backup in the application platform. Configuration details for the update server can be found here.

Configuration Files

saveinnovaphone-reportingcfgs is the command used to save configuration files

Data

reporting only defines the database as application data and the "saveinnovaphone-reportingdb" command will backup it

Logs

use saveinnovaphone-reportinglogs to save log files

Appendix

innovaphone Reporting XML

   <?xml version="1.0" encoding="utf-8"?>
   <application>
   <name>innovaphone Reporting</name>
   <desc>Reporting software</desc>
   <directory>innovaphone-reporting</directory>
   <href>report.php</href>
   <linux-username>innovaphone-reporting</linux-username>
   <packages>
       <package>php5-pgsql</package>
       <package>php5-gd</package>
       <package>postgresql-8.3</package>
       <package>postgresql-common</package>
   </packages>
   <database name="innovaphone-reporting" username="innovaphone-reporting"/>
   <log-files>
       <log title="Postgresql-8.3">/var/log/postgresql/postgresql-8.3-main.log</log>
       <log title="Reporting cleanup">/var/www/innovaphone/apps/innovaphone-reporting/log/reporting_cleanup.log</log>
       <log title="innovaphone Reporting">/var/www/innovaphone/apps/innovaphone-reporting/log/innovaphone-reporting.log</log>
   </log-files>
   <config-files>
       <conf>/etc/postgresql/8.3/main/pg_hba.conf</conf>
       <conf>/etc/postgresql/8.3/main/postgresql.conf</conf>
   </config-files>
   <backup>
       <command title="Save innovaphone Reporting configuration files" cmd="saveinnovaphone-reportingcfgs" script=""/>
       <command title="Save innovaphone Reporting database" cmd="saveinnovaphone-reportingdb" script=""/>
       <command title="Save innovaphone Reporting log files" cmd="saveinnovaphone-reportinglogs" script=""/>
   </backup>
   <restore>
       <command title="Restore innovaphone Reporting configuration files" cmd="restoreinnovaphone-reportingcfgs" script="">
           <action>/etc/init.d/postgresql-8.3 restart</action>
       </command> 
       <command title="Restore innovaphone Reporting database" cmd="restoreinnovaphone-reportingdb" script=""/>
   </restore>
   <uninstall/>
   </application>

Installed Debian Packages

Configuration Files

pg_hba.conf is the client authentication configuration file and controls which hosts are allowed to connect, how clients are authenticated, which PostgreSQL user names they can use and which databases they can access.

postgresql.conf is the PostgreSQL configuration file

Data Files

Report XML

 <report>
   <record>
     ....
     <remote name="saturn" number="101" dn="Saturn"/>
     <status>co</status>
     <type>ct</type>
     <dir>i</dir>
     <billing-duration seconds="40">0:40</billing-duration>
     <call-duration seconds="40">0:40</call-duration>
     <conn-duration seconds="20">0:20</conn-duration>
   </record>
 </report>
  • remote: outgoing calls -> dialed endpoint
  • remote: incoming calls -> first ep2 above entry event or entry event if this is the first one
  • remote: incoming calls with incoming transfer after entry event -> transfer target
  • status: outgoing calls -> best found status in call flow
  • status: incoming calls -> status of entry event
  • type: the type of the entry event or, if not set, the type of the next event, if given
  • dir: o (outgoing) if the first event is the entry event and the caller is ep1
  • dir: i (incoming) if not o
  • billing-duration: outgoing call -> duration from the first event until the last event in the flow
  • billing-duration: incoming call -> duration from the first transfer/forward event until the last event in the flow
  • call-duration: duration of the whole call
  • conn-duration: duration from the entry event until the event, where the local endpoint isn't connected any more

Database Structure

Remote Interface

Tools