Equipment synchronization

Back to integration overview

The maintenance system is the lifecycle master. Provider equipment is synchronized with OT Backup equipment at the configured interval.

Process

flowchart TD
  Start[Scheduled synchronization run] --> ReadOtb[Read OT Backup equipment]
  ReadOtb --> ReadProvider[Read selected maintenance-system equipment]
  ReadProvider --> ReadOk{Provider read successful?}
  ReadOk -- No --> LogReadError[Log failure and leave OT Backup equipment unchanged]
  ReadOk -- Yes --> Filter[Apply query, location system, and selection]
  Filter --> Process[Process each accepted provider item]
  Process --> Match{Match ExternalId or configured name adoption?}
  Match -- No --> Create[Create OT Backup equipment]
  Match -- Yes --> Restore{Equipment marked removed?}
  Restore -- Yes --> RestoreItem[Restore OT Backup equipment]
  Restore -- No --> Map[Apply field mappings by authority]
  RestoreItem --> Map
  Map --> UpdateProvider[Write OT Backup-authoritative changes to maintenance system]
  Map --> UpdateOtb[Write maintenance-system-authoritative changes to OT Backup]
  Create --> Next{More provider items?}
  UpdateProvider --> Next
  UpdateOtb --> Next
  Next -- Yes --> Process
  Next -- No --> Empty{Source empty and RequireNonEmptySource enabled?}
  Empty -- Yes --> SkipCleanup[Skip removal cleanup and log warning]
  Empty -- No --> Cleanup[Mark unmatched integration-owned equipment removed]
  SkipCleanup --> Audit[Write audit summary when changes occurred]
  Cleanup --> Audit

Matching and lifecycle

Provider equipment is matched to OT Backup equipment by comparing the external identifier with OT Backup ExternalId, ignoring case.

When AdoptOtbEquipmentByName is true, the workflow can also match the provider item name to the OT Backup Id using an exact, case-sensitive comparison. A successful adoption stores the provider identifier in ExternalId. Name adoption is disabled by default.

For each accepted provider item, the workflow:

  1. Creates OT Backup equipment when no match exists. A new item requires a non-empty location and address from a mapping or provider location data.
  2. Restores a matching OT Backup item that was previously removed.
  3. Applies mappings according to their configured authority.
  4. Records item-level failures and continues with remaining items.

After processing, active OT Backup equipment with a non-empty ExternalId that was not matched is marked removed. Equipment without an ExternalId and already removed equipment are not affected.

Empty-source protection

If reading the maintenance system fails, the workflow stops before cleanup. When SynchronizationSafety:RequireNonEmptySource is true (the default), a successful empty response also skips cleanup and logs a warning.

Set it to false only when an empty source result is authoritative and should remove all integration-owned OT Backup equipment. Client IT personnel should validate the profile, site, query, location system, and selection scope before disabling this safeguard.

An error has occurred. This app may no longer respond until reloaded. Reload 🗙