Add exposure notification example to reference implementation

working-state
Garrett Mills 3 years ago
parent d8cae0f559
commit f0005a9ed3
Signed by: garrettmills
GPG Key ID: D2BF5FBA8298F246

@ -16,6 +16,13 @@ class TestClient {
return bcrypt.hashSync(`${lesserId}-${greaterId}`, this.salt) return bcrypt.hashSync(`${lesserId}-${greaterId}`, this.salt)
} }
buildExposure() {
return {
clientID: this.id,
timestamp: (new Date).getTime(),
}
}
async interactWith(otherClient) { async interactWith(otherClient) {
const hash = otherClient.getHash(this.id) const hash = otherClient.getHash(this.id)
const message = openpgp.Message.fromText(hash) const message = openpgp.Message.fromText(hash)
@ -43,9 +50,15 @@ class TestClient {
const a_transact = await client_a.interactWith(client_b) const a_transact = await client_a.interactWith(client_b)
const b_transact = await client_b.interactWith(client_a) const b_transact = await client_b.interactWith(client_a)
// Simulate an encounter between A and B
console.log(a_transact, b_transact) console.log(a_transact, b_transact)
postTo('/api/v1/encounter', a_transact) postTo('/api/v1/encounter', a_transact)
postTo('/api/v1/encounter', b_transact) postTo('/api/v1/encounter', b_transact)
// Simulate B being exposed
const b_exposure = client_b.buildExposure()
console.log(b_exposure)
postTo('/api/v1/exposure', b_exposure)
})() })()
function postTo(endpoint, data) { function postTo(endpoint, data) {

Loading…
Cancel
Save