FHIR Connectathon Jan 2017 Resource Subscription Track Really is: Resource Creation and Modification Notification and Data Synchronization Track Or Pub/Sub & Sync Corey Spears (Infor) Simone Heckmann (Health-comm) John Young (McKesson) Mike Ross (Qvera) James Agnew (HAPI) Grahame Grieve (Health Intersections)
Pub/Sub & Sync Track Purpose Scenarios Publish/subscribe and data synchronization are both critical aspects of system interoperability that cover a wide array of use cases. The purpose of this track is to gain more implementer experience with workflows needing some sort of synchronization or resource update notifications using the Subscription resource and history interaction polling method and to further develop the FHIR standard. Scenarios Create/Search/Delete subscription Resources Receive a notification based on a subscription History interaction polling (get updates to resources)
Resources Used Subscription
Track Happenings 6 participants Were able to test all of the scenarios successfully Some challenges with the reference servers and client interactions To be expected since this is an area that has not really be exercised But all issues were successfully resolved Tested all notification channels successfully Rest-hook Websocket Email SMS
Lessons learned Subscription Declared FHIR server channel & notification content support Provide notification content options Notification of only which subscription is triggered Not supported in rest-hook Triggering resource Ids Full Resource Support _include Meta-data regarding what the triggering event was (created/updated) No support for deleted resources! Consider utilizing the Endpoint Resource Issue: Resource References can substantively affect the resource (e.g. Care Plan’s Care team or goal is updated).
Lessons learned Websocket Channel History Interaction There is nothing explicitly connecting a websocket connection to a FHIR server. Perhaps add a notifying server url. History Interaction Provides all resources of a particular type (modified within a timeframe). Would be nice to narrow it down. Why important: Of the patterns tested in this track, this is the only that supports deletes. Bilateral Synchronization How does a server avoid getting updates that itself provided
Next Steps Further review the lessons learned and build out the use cases in which they are needed Add tracker items Work with FHIR Infrastructure to further review and updating of the FHIR specification