/
Connections - how is current status determined?

Connections - how is current status determined?

TEXT IN RED MAY BE OUT OF DATE OR INCORRECT

Recommended Reading:

Connections Logic - Discussions with Users
Connections Data Models

Elasticsearch

GMC’s API

The GMC provide the following methods pertaining to connections:

  • TryAddDoctor

  • TryRemoveDoctor

  • GetDoctorsForDB

There is no “get connection status” or “get connection history” type API, all information about connection status and connection history must be inferred.

The GetDoctorsForDB endpoint has the following description:

This method has been designed to be used to get a snapshot of the doctors (and their submission dates), which are connected to a designated body at a point in time. Depending upon the number of doctors connected to the requesting designated body, this web service may return a large number of records.

Therefore from the overnight sync job we only get a snapshot of current connections from GMC’s point of view. Any disconnections that may have occurred from outside of our system would have to be inferred by a negative (“if doctor not in this list”) - this is potentially partially implemented via the “hide all doctors” step of the overnight sync job - but this only sets a flag to hide/show in the recommendations list, it does not alter the connection status.

TIS Change Data Capture

The connections microservice also receives data from TIS via the CDC system based on application events.

The following logic is currently implemented (as of 23/08/2022):

  • If curriculum membership is null - disconnected

  • if programme membership is null (or pm dates are null) - disconnected

  • if programme start date is after today - disconnected

  • if programme end date is before today - disconnected

  • Otherwise - connected

Source (note that this logic is implemented in TCS, not connection service):

https://github.com/Health-Education-England/TIS-TCS/blob/3376f73615b12ccf4c80576cc3dc68239cdc292f/tcs-service/src/main/java/com/transformuk/hee/tis/tcs/service/service/impl/RevalidationServiceImpl.java#L334

Note that the above is subjected to change, given recent user engagement:

Connections Logic - Discussions with Users

 

Related content

Connections Logic Implementation
Connections Logic Implementation
More like this
Connections Actions, History & Interaction with GMC
Connections Actions, History & Interaction with GMC
More like this
Connections Data Models
Connections Data Models
Read with this
North West Research
North West Research
More like this
2022-08-18 Reval login intermittently failing
2022-08-18 Reval login intermittently failing
Read with this
GMC Overnight Sync (GetDoctorsForDB) - Soon to be out of date
GMC Overnight Sync (GetDoctorsForDB) - Soon to be out of date
More like this