...
- Both Oscar sites periodically push data into Integrator, which stores it into its database.
- Patients have their demographics registered in both Oscar sites and "linked" through Integrator.
- When a patient's chart is opened in one Oscar site, Oscar will contact the integrator and pull his/her chart data from the other site(s).
- Chart data from remote site is shown with special indication.
integrator_install.sh
Use integrator_install.sh to do the basic setup for Integrator. Refer to "using_integrator_install.txt" for instructions.
It does most of the work in:
"Get Integrator"
"Setup Oscar/Integrator"
except: - oscar.properties -
Manual Setup for Oscar/Integrator
Prerequisites
Java version: openjdk-6
(linux command) sudo apt-get install openjdk-6-jre
...
2) /usr/share/tomcat6/ is a suggested path and can be changed.
Oscar version
Integrator works with Oscar release 12.1
Installation Via Script
We have created a script which will:
- create integrator_override.
...
3) For the use of integrator_override.xml refer to section - integrator_override.xml -
Oscar version
...
- xml
- prepare the caisi_integrator database
- download caisi_integrator.war file
It can be downloaded here: integrator_install.sh
Before running, edit the script and set the following variables:
Variable in script | Value |
---|---|
USER= | the mysql username you would like to use to access the database |
PASSWORD= | the password you would like to use to access the database |
DB_HOST= | 127.0.0.1 |
DB_PORT= | 3306 |
DATABASE_NAME= | caisi_integrator |
INTEGRATOR_HOST= | the external IP/hostname used to access the server |
INTEGRATOR_PORT= | the external port used to access the server |
After running, move override file and the war file to their directories:
Code Block | ||
---|---|---|
| ||
cp integrator_override.xml /usr/share/tomcat6/
cp caisi_integrator.war /var/lib/tomcat6/webapps/ |
Skip to oscar.properties and proceed from there.
Manual Setup for Oscar/Integrator
Get Integrator
Option 1: Get war file
...
Info |
---|
<require_consent_to_read_data>, <require_phi_filter_to_read_data>, and <log_performance> should all be set to false unless necessary. |
Integrator war file
...
- Rename the above acquired war file to "caisi_integrator.war"
...
- If you are running integrator in a dedicated server, put the war file into /var/lib/tomcat6/webapps/
...
- If you are running integrator alongside with Oscar, put the war file together with the Oscar war file.
Integrator database setup
...
- get sql script from
...
...
...
- create database:
(linux commands)
create database caisi_integrator | mysql -uroot -prootpass -h10.10.10.1 -P3306
grant all on caisi_integrator.* to root@localhost identified by "rootpass" | mysql -uroot -prootpass -h10.10.10.1 -P3306 caisi_integrator
- Note:
The above commands are only an example. All the databases, users, passwords, hosts, ports can be changed but keep them consistent along all setup. Same thing apply to the following steps.
...
- build database:
(linux command) mysql -uroot -prootpass -h10.10.10.1 -P3306 caisi_integrator < create_tables.sql
...
...
- prepare initial data:
Login to mysql and use the caisi_integrator database. Run the following commands:
insert into SiteUser (name,password) values ('admin',unhex(sha1('admin')));
create table CachedProviderRole (caisiItemId varchar(16) not null, integratorFacilityId int(11) not null, providerRole varchar(32) not null);
create table HomelessPopulationReportPrograms (configurationTime datetime not null, index(configurationTime), facilityId int not null, programId int not null);
oscar.
...
The following 3 properties must be present:
program=on
properties
Anchor | ||||
---|---|---|---|---|
|
Ensure these three properties are present in the oscar.properties file for each Oscar system you wish to connect to the integrator:
Variable | Value | Comment |
---|---|---|
program= | on | |
INTEGRATOR_UPDATE_PERIOD= | 1800000 | This value is in milliseconds. OMD requires sync within 30 minutes. |
ENABLE_CONFORMANCE_ONLY_FEATURES= | true |
Note:
1) INTEGRATOR_UPDATE_PERIOD is set in millisecond. OMD requires sync within 30 minutes.
2) If you have a large database the transfer time may exceed INTEGRATOR_UPDATE_PERIOD. In such case the update will be skipped.
...
Info |
---|
You must restart Oscar in order for changes to the oscar.properties file |
...
to take effect. |
Run Oscar/Integrator
Integrator 1st startup
- Run Integrator by starting tomcat
Open a web browser and go to: (url) http://integrator_server_name:8080/caisi_integrator
Info change "integrator_server_name" and port according to your own settings - Select "Integrator Site"
- Login as "admin", password: "admin"
- Select "Administration"
- Select "Manage Facilities"
- Select "Add New Facility", enter name a username and password and save. for each Oscar site to use on connecting to the integrator. The facility name username and password will be used in - Oscar 1st startup -the next section.
- Repeat step 7. Each facility represents one Oscar site.
Oscar 1st startup
- Run Start Oscar (if not already running)
- Login to Oscar with using an account which has with admin rights
- Select "Admin" in the top menu
- Select "Manage Facilities" under "Misc"
- Select "Edit"
Change "Name", "Description" to something of your choice.
Info The name field will be used to identify this Oscar instance at other facilities so we suggest using something short and identifiable.
For example, a name of "Fakestreet Family Health Team" is likely too long, whereas "FFHT" may not be unique or identifiable, but "Fakestreet" allows users at other sites to know what site information is coming from.- Enter "http://integrator_server_name:8080/caisi_integrator/ws" into "Integrator Url" (See - Integrator 1st startup - Step 2This should be the URL from step 2 in the previous section + "/ws")
- Enter "Integrator User" and "Integrator password" with the facility name and password from - Integrator 1st startup - Step 7)step 7 in the previous section
- Check "Enable Integrator"
- Save. You will be prompted with "Remove Demographic Identity NOT checked! Is it OK?". Select "OK".
...
Info |
---|
Oscar will now push data to Integrator once every INTEGRATOR_UPDATE_PERIOD. Note that the update period starts its count on Oscar startup, so you may not see any data push immediately after the above setup. A patients E-Chart Encounter notes do not abide by the syncing period set by 'INTEGRATOR_UPDATE_PERIOD'. Encounter notes update 60 minutes after the previous Encounter notes sync. |
Integrator Preference
The purpose of setting this is to allow all patients to be synced, or by default only Rostered patients will be synced.
...
2) On 1st push/pull of data to Integrator, Integrator Preference may be reset. Please re-apply the setting if this happens. (Bug to be fixed)
...
Adding a "
...
Linked"
...
Patient
Warning |
---|
Do NOT create the same patient demographic in different Oscar sites. The "linking" does not work this way. |
...
The new "Linker, Boy" is linked to "Linker, Boy" in Oscar site 1. All data created in one site will be shown in another.
Other issues
- Bug to be fixed -
...
Known Issues
Potential Incorrectly Formatted Data in Oscar's Program Table
For a newly created Oscar database, please check the "program" table:
select defaultServiceRestrictionDays from program;
If any one of the result results is NULL, run the following mysql command:
update program set defaultServiceRestrictionDays=0 where defaultServiceRestrictionDays is NULL;
Otherwise If this is not corrected, the integrator push will fail.