ECHI Converter

Get Version

0.0.3

→ ‘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:

  1. Support of ActiveRecord (means you may use Oracle, MySQL, MS-SQL, Postgres, DB2, etc)
  2. Generate your schema via ActiveRecord Migrations
  3. Fetch Binary or ASCII CSV files from the Avaya CMS platform via FTP
  4. Convert from the defined Binary format to ASCII
  5. Insert the records into the defined database table
  6. Change schema structure via YML configuration file to accommodate various releases of the ECHI format

Requirements

  1. Ruby v1.8.6+
  2. Rubygems v0.9.4+

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 path_to_my_directory

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:

  1. config/application.yml
    1. Change each of the ‘echi’ settings for connecting to your local FTP server where the CMS puts the binary files
    2. Select which schema you would like to use (ie – extended_version12.yml) based on what you have in place
  2. config/database.yml
    1. 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:

  1. rake migrate (creates the tables required for the system)
  2. echi-converter (starts the server daemon, refer to its usage)

Usage

Usage: echi-converter command options

  1. where command is one of:
    1. start start an instance of the application
    2. stop stop all instances of the application
    3. restart stop all instances and restart them afterwards
    4. run start the application and stay on top
    5. zap set the application to a stopped state
  1. and where options may contain several of the following:
    1. -t,—ontop Stay on top (does not daemonize)
    2. -f,—force Force operation
  1. Common options:
    1. -h,—help Show this message
    2. —version Show version

Demonstration of usage

Start the daemon/service:

echi-converter start

Stop the daemon/service:

echi-converter stop

ToDo

Items to be done to move this out of alpha stage:

  1. ‘echi-converter-create’ works fine with OSX/Linux, need to test validate with a Win32 platform
  2. Determine what to do with the files on the FTP server of the Avaya CMS, delete them or leave them and add methods to ensure no duplication

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, 11th August 2007
Theme extended from Paul Battley