The EDI Translator is used to convert data into EDI format. It runs on localhost and listens on port 9191 by default. This is controlled via the edi_webrick.cnf file located in the edi_translator directory. It should not be necessary to edit this configuration if you install EDI Translator on the same server used for running Action/Triggers events.
If you are running Evergreen with a multi-server configuration, make sure to install EDI Translator on the same server used for Action/Trigger event generation.
Steps for Installing
As the opensrf user, copy the EDI Translator code found in Open-ILS/src/edi_translator to somewhere accessible (for example, /openils/var/edi):
cp -r Open-ILS/src/edi_translator /openils/var/edi
Navigate to where you have saved the code to begin next step:
cd /openils/var/edi
Next, as the root user (or a user with sudo rights), install the dependencies, via "install.sh". This will perform some apt-get routines to install the code needed for the EDI translator to function. (Note: subversion must be installed first)
./install.sh
Now, we’re ready to start "edi_webrick.bash" which is the script that calls the "Ruby" code to translate EDI. This script needs to be started in order for EDI to function so please take appropriate measures to ensure this starts following reboots/upgrades/etc. As the opensrf user:
./edi_webrick.bash
You can check to see if EDI translator is running.
Using the command "ps aux | grep edi" should show you something similar if the script is running properly:
root 30349 0.8 0.1 52620 10824 pts/0 S 13:04 0:00 ruby ./edi_webrick.rb
To shutdown EDI Translator you can use something like pkill (assuming no other ruby processes are running on that server):
kill -INT $(pgrep ruby)
The EDI scripts are "edi_pusher.pl" and "edi_fetcher.pl" and are used to "push" and "fetch" EDI messages for configured EDI accounts.
As the opensrf user, copy edi_pusher.pl and edi_fetcher.pl from Open-ILS/src/support-scripts into /openils/bin:
cp Open-ILS/src/support-scripts/edi_pusher.pl /openils/bin cp Open-ILS/src/support-scripts/edi_fetcher.pl /openils/bin
Setup the edi_pusher.pl and edi_fetcher.pl scripts to run as cron jobs in order to regularly push and receive EDI messages.
Add to the opensrf user’s crontab the following entries:
10 * * * * cd /openils/bin && /usr/bin/perl ./edi_pusher.pl > /dev/null 0 1 * * * cd /openils/bin && /usr/bin/perl ./edi_fetcher.pl > /dev/null
You may choose to run the EDI scripts more or less frequently based on the necessary response times from your vendors.