Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

In order to be flexible, Sync should provide the following variables in order to give implementers the flexibility to administer the Sync operations.

List of variables

Variable NameDescriptionDefault Value

The location of the Parent atom feed. Required to do any synchronization. If not set (but with Sync enabled), sync log warnings and not read the feeds.

Note. Parent instance should set the own URI address, otherwise the manual push and pull will be disabled.


sync.local.feedLocationThe location of the local event feed for this node. Generally should not change.The default address.
sync.localInstanceIdThe unique instance identifier.
sync.clientsThe map which contains clients configurations (more detail in the "Client Configuration" section below).Empty
sync.push.enabledBoolean - is pushing data to Parent enabled? If set to false, no data will ever be sent to Parent from this Child and the Child will not be reading its own feed.True
sync.push.scheduleCron schedule reading the local feed - controls how often data will be pushed to Parent.Hourly schedule
sync.push.{classname}.enabledBoolean - controls if the data for the given entity class is pushed to Parent from this node. Affects filtering of the local atom feed.True for classes we want to sync out of the box
sync.pull.enabledBoolean - is pulling data from Parent enabled? If set to false, no data will ever be retrieved from Parent and this Child will not follow the feed of its Parent.True
sync.pull.scheduleCron schedule reading the Parent feed - controls how often data will be pulled from Parent.Hourly schedule
sync.pull.{classname}.enabledBoolean - controls if the data for the given entity class is pulled from Parent to this node. Affects filtering of the Parent atom feed.True for classes we want to sync out of the box
sync.whitelist.enabledA boolean value which describes if the whitelist is enabled or is notFalse
sync.whitelist.instanceIdsAn array of identifiers which represent children instances (localInstanceId). If a child instance occurs on the list it will be allowed to push data to the parent. Please remember to share credentials with children in order to complete validation on the push endpoints.Empty


The whitelist section is not obligatory. If it won't be provided, a default whitelist configuration will be added automatically.

All configuration for error handling described in Auditing and error handling should also be included.

Client configuration

The section of the Sync 2 configuration.

Variable NameDescription

The specific value of client address.

Example value
  "general" : {
    "clients" : {
      "fhir": {
        "hostAddress" : "[specificAddress]"

Configuration UI

The Sync configuration from Sync 2.0 configuration variables should be easily configurable by administrators through the UI. The UI should validate the inputs and display errors to the administrators if he tries to submit invalid data. For now inputs can be fairly simple - i.e. we do not need a sophisticated cron picker for schedules, it is a nice to have of course.

  • No labels