ECHI Converter
Get Version
0.0.5→ ‘echi-converter’
The ECHI (External Call History Interface) Converter
Provides a Ruby based utility for fetching Avaya CMS / ECHI files in binary form from an FTP server, converting them to ASCII and then inserting them into a database via ActiveRecord.
Status
This is the initial alpha release that will under go extensive testing in the coming weeks. Therefore it is recommended to wait for version 0.1.0 before any production use.
Features
The utility provides the following capabilities:
- Support of ActiveRecord (means you may use Oracle, MySQL, MS-SQL, Postgres, DB2, etc)
- Generate your schema via ActiveRecord Migrations
- Fetch Binary or ASCII CSV files from the Avaya CMS platform via FTP
- Convert from the defined Binary format to ASCII
- Insert the records into the defined database table
- Change schema structure via YML configuration file to accommodate various releases of the ECHI format
- Table names:
- echi_records – stores all ECHI data
- echi_logs – stores a log entry for each file processed
Requirements
Installing
sudo gem install echi-converter
or
gem install echi-converter
Setup
First, create the directory with all of the project files where you will run this application from:
echi-converter create myproject
Once you have installed a project into your preferred directory, you then need to configure for your environment. The first step is to modify each of these files:
- config/application.yml
- Change each of the ‘echi’ settings for connecting to your local FTP server where the CMS puts the ASCII/binary files
- Select which schema you would like to use (ie – extended_version12.yml) based on what you have in place
- config/database.yml
- Change to match your local database and database login credentials, full ActiveRecord support
Once this is complete, then simply run these commands from the project directory:
- rake migrate (creates the tables required for the system)
- echi-converter (starts the server daemon, refer to its usage)
Usage
- echi-converter create myproject – create the local project to run the ECHI converter from
- echi-converter upgrade myproject – location of project to upgrade after a new gem is installed
- echi-converter run myproject – Run the ECHI converter interactively from the location given
- echi-converter start myproject – Start the ECHI converter in daemon mode from the location given
- echi-converter stop myproject – Stop the ECHI converter daemon
- echi-converter restart myproject – Restart the ECHI converter
- echi-converter zap myrpoject – If there has been an unexpected close and the system still thinks the converter is running, clean up the pid files
Demonstration of usage
Start the daemon/service:
echi-converter start myproject
Stop the daemon/service:
echi-converter stop myproject
ToDo
Items to be done to move this out of alpha stage:
- ‘echi-converter-create’ works fine with OSX/Linux, need to test validate with a Win32 platform
Forum
Google Groups – ECHI Converter
How to submit patches
Read the 8 steps for fixing other people’s code and for section 8b: Submit patch to Google Groups, use the Google Group above.
The trunk repository is svn://rubyforge.org/var/svn/echi-converter/trunk
for anonymous access.
License
This code is free to use under the terms of the LGPL license.
Contact
Comments are welcome. Send an email to jason [at] goecke.net.
Dr Nic, 17th August 2007
Theme extended from Paul Battley