MACM and ADX
From IHRIS Wiki
<sequenceDiagram>
opt Third Part Submission
PoS->Node IL: Submit ADX message Node IL->Node IL: Log headers (maybe data) Node IL->Node IL: Node HMIS: Translate local identifiers\n(e.g. site ID) to PEPFAR site ID Node IL->Node HMIS: Submit ADX message Node HMIS->Node IL: ACK or receipt\n(no validation) Node IL->PoS: ACK or receipt\n(no validation) loop ADX data values Node HMIS->Node HMIS: validate ADX message Node HMIS->Node Alert Aggregator: initiate Mobile Report Alert (ITI-84)\n for invalid messages\n recipient inferred from ??? end
end
Node HMIS->Node IL: User/cron-initiated submission of ADX\nMay include more than the orignial ADX Node IL->Node IL: Log headers (maybe data) Node IL->Global IL: Submit ADX message Global IL->Global HMIS: Submit ADX message Global HMIS->Global IL: ACK of receipt\n(no validation) Global IL->Node IL: ACK of receipt\n(no validation) Node IL->Node IL: record headers Node IL->Node HMIS: ACK of receipt\n(no validation) loop ADX data values
Global HMIS->Global HMIS: validate ADX message Global HMIS->Global Alert Aggregator: initiate Mobile Report Alert (ITI-84)\n for invalid messages\n recipient inferred from ??? opt Global Alert Aggregator->Global Alert Aggregator: Dispatch alert to recipient\n (is this the correct actor?) end
end
opt
loop periodic update Node IL->Global IL: submit Query for Alert Status (ITI-85)\n search against same recipient as above Global IL->Global Alert Aggregator: submit Query for Alert Status (ITI-85) Global Alert Aggregator->Global IL: Query for Alert Status (ITI-85) response Global IL->Node IL: Query for Alert Status (ITI-85) response Node IL->Node Alert Aggregator: Query for Alert Status (ITI-85) response Node Alert Aggregator->Node Alert Aggregator: Add alert to data store opt Node Alert Aggregator->Node Alert Aggregator: Dispatch alert to recipient end end
end
opt
Node HMIS->Node Alert Aggregator: submit Query for Alert Status (ITI-85) Node Alert Aggregator->Node HMIS: Query for Alert Status (ITI-85) response
end
opt
PoS->Node IL: submit Query for Alert Status (ITI-85) Node IL->Node IL: submit Query for Alert Status (ITI-85) Node IL->Node Alert Aggregator: submit Query for Alert Status (ITI-85) Node Alert Aggregator->Node IL: Query for Alert Status (ITI-85) response Node IL->PoS: Query for Alert Status (ITI-85) response
end
</sequenceDiagram>