Prerequisite: To use these features Noah System 4.15 must be installed. These features will not work with Noah System 4.14.2.
Communicating with Noah ES Client
A local Noah ES installation run on machines with Noah Client 4.15 or later installed at https://localhost:8090. The following HTTP methods can be used to communicate with Noah Client.
Get Noah Client instance ID.
The Noah instance ID is used to subscribe to Noah client events.
Route: GET https://localhost:8090/NoahWebIntegrationGUIStart/noah4/instanceid
Postman Example:
1.) Route
2.) Successful Return Body
Start Noah Client.
Route: GET https://localhost:8090/NoahWebIntegrationGUIStart/noah4
Postman Example:
1.) Route
2.) Successful Return Body
Set selected patient.
Set the selected patient to given patient GUID. Noah Client will start if it's not already running.
Route: GET https://localhost:8090/NoahWebIntegrationGUIStart/noah4/patientguid/{patientguid}
Postman Example:
1.) Route
*Note: I set a patient id in my Noah ES account as a variable in the params.
2.) Successful Return Body
Get selected patient.
Route: GET https://localhost:8090/NoahWebIntegrationGUIStart/noah4/currentpatient
Postman Example:
1.) Route
2.) Successful Return Body
Detecting Noah Client patient selection changes
Connect to the SignalR Hub at clientrtm path on the API URL e.g. https://api.qa.eu.noah-es.com/clientrtm
Invoke the hub method “SubscribeTenant” method with tenant id and noah instance id e.g. await _hubConnection.InvokeAsync("SubscribeTenant", {tenantId}, {noahInstanceId});
Listen for events on the “OnEvent” hub method e.g. _hubConnection.On<NoahClientEvent>("OnEvent", NoahClientEventHandler);
The event handler receives a message in the format:public class NoahClientEvent { public NoahClientEventType EventType { get; set; } public DateTime EventDate { get; set; } public string CorrelationId { get; set; } public string TenantId { get; set; } public string InstanceId { get; set; } public Guid? PatientId { get; set; } public Guid? ActionId { get; set; } public string UserId { get; set; } } Only patient selected event is currently supported. public enum NoahClientEventType { PatientSelected }
When disconnecting, invoke the hub method “LeaveTenant”