Wallet protocol view schema (dynamic cards view)
The wallet protocol view schema is derived from the network view ( complete network fingerprint). The wallet will consume this protocol view.
Wallet Protocol View
BMI Wallet Protocol View
{
"network": {
"id": "aa951837-8e76-42bf-9820-62806ecaa062",
"name": "CAN",
"description": "Care Administration Network",
"status": "Active",
"version": 6,
"certificates": "CERT-001",
"publishDate": "29-06-2021",
"effectiveDate": "01-07-201",
"protocolVersionNumber": 13
},
"roles": [
{
"id": "01001",
"name": "Patient",
"description": "Patient role for the CAN",
"status": "Active",
"version": 1
},
{
"id": "01002",
"name": "Doctor",
"description": "Patient role for the CAN",
"status": "Active",
"version": 1
}
],
"journeys": [
{
"id": "02002",
"name": "BMI Logs",
"description": "BMI logs of the Patient",
"status": "Active",
"version": 1,
"startCardRefId": "03003"
},
{
"id": "02001",
"name": "Calculate BMI",
"description": "Calculate BMI for the Patient",
"status": "Active",
"version": 1,
"startCardRefId": "03002"
}
],
"cards": [
{
"id": "03002",
"name": "BMI Calculate",
"description": "Submit the details require to Calculate BMI, wallet card for the Patient ",
"status": "Active",
"version": 1,
"cardDefinitionRef": "card/03002.json",
"transactionDataRef": "td/06001.json"
},
{
"id": "03001",
"name": "BMI Journey",
"description": "BMI Journey landing wallet card for the Patient (Dummy Card)",
"status": "Active",
"version": 1,
"cardDefinitionRef": "card/03001.json"
},
{
"id": "03004",
"name": "My BMI Report",
"description": "Generate My BMI Report, wallet card for the Patient ",
"status": "Active",
"version": 1,
"cardDefinitionRef": "card/03004.json",
"transactionDataRef": "td/06001.json"
},
{
"id": "03003",
"name": "BMI Report",
"description": "BMI Report, wallet card for the Patient ",
"status": "Active",
"version": 1,
"cardDefinitionRef": "card/03003.json",
"transactionDataRef": "td/06001.json"
}
],
"events": [
{
"id": "04001",
"name": "Wallet.BMI.Events",
"code": "WALLET.BMI.INPUT.CARD",
"description": "Wallet event to open the BMI Input Card in BMI Details Journey ",
"status": "Active",
"version": 1,
"type": "Wallet_Event",
"eventHandlerDefinitionRef": "event-handler/05001.json"
}
]
}
Wallet Protocol View v1.0
{
"wallet-protocol": {
"network": {
"name": "CAN",
"description": "Care Administration Network",
"version": "1.0",
"publish_date": "25-03-2021",
"effective_date": "01-04-201",
"protocol_version_number": "1.0"
},
"roles": [
{
"id": "01001",
"name": "Patient",
"description": "Patient role for the CAN",
"type": "Wallet",
"status": "Active",
"version": "1.0"
}
],
"journey": [
{
"id": "02001",
"name": "Appointment",
"description": "Appointment Journey",
"status": "Active",
"version": "1.0",
"start_card_ref_id": "03101"
},
{
"id": "02003",
"name": "Find Doctor",
"description": "Find a doctor Journey for patient",
"status": "Active",
"version": "1.0",
"start_card_ref_id": "03201"
}
],
"cards": [
{
"id": "03101",
"name": "Request_Appointment",
"description": "Request an appointment wallet card for the Patient ",
"status": "Active",
"version": "1.0",
"card_definition_ref": "03101.json"
},
{
"id": "03103",
"name": "Find_Doctor_Request",
"description": "Find a doctor wallet card for the Patient ",
"status": "Active",
"version": "1.0",
"card_definition_ref": "03101.json"
}
],
"wallet_events": [
{
"id": "04101",
"name": "Available.Doctors",
"code": "PT.AVAILABLE.DOCTORS",
"description": "GET available doctors from the wallet node",
"status": "Active",
"version": "1.0",
"event_definition_ref": "04101.json",
"event_handler_definition_ref": "05001.json"
},
{
"id": "04103",
"name": "Appointment_Requests",
"code": "DC.APPOINTMENT.REQUESTS",
"description": "Get patient appointment requests from doctor node",
"status": "Active",
"version": "1.0",
"event_definition_ref": "04103.json",
"event_handler_definition_ref": "05003.json"
}
]
}
}
Wallet event handler definition:
This wallet event handler’s definition is getting referred from the wallet protocol view.
BMI Calculate and Report Wallet Handler
{
"walletEventHandler": [
{
"refId": "events-001",
"walletEvents": [
{
"actions": [
{
"name": "submit",
"order": 1,
"parameter": [
{
"method": "POST",
"url": "https://solvecare-4d0de-default-rtdb.firebaseio.com/bmi-data.json"
}
]
}
],
"postAction": "HOME",
"refId": "event-001"
}
]
},
{
"refId": "events-002",
"walletEvents": [
{
"actions": [
{
"name": "getbmilogs",
"order": 1,
"parameter": [
{
"method": "GET",
"url": "https://solvecare-4d0de-default-rtdb.firebaseio.com/bmi-data.json"
}
]
}
],
"postAction": "card-03",
"refId": "event-002"
}
]
},
{
"refId": "events-003",
"walletEvents": [
{
"postAction": "card-002",
"refId": "event-002"
}
]
}
]
}
Wallet Event Handler Definition v1.0
{
"wallet_event_handler": [
{
"id": "04101",
"name": "Available.Doctors",
"description": "Wallet Event Handler for GET available doctors from the wallet node",
"actions": [
{
"name": "sort",
"order": 1
},
{
"name": "upload",
"order": 2,
"parameter": [
{
"url": "https://solvecare-4d0de-default-rtdb.firebaseio.com/vitalData.json"
}
]
}
],
"post_action": "03103",
"ref_id": "event-001"
},
{
"id": "04103",
"name": "Appointment_Requests",
"description": "Wallet Event Handler for Get patient appointment requests from doctor node",
"actions": [
{
"name": "sort",
"order": 1
},
{
"name": "upload",
"order": 2,
"parameter": [
{
"url": "https://solvecare-4d0de-default-rtdb.firebaseio.com/vitalData.json"
}
]
}
],
"post_action": "card-002",
"ref_id": "04103"
}
]
}
UI Card Ref Definition
BMI Journey - UI Cards Ref
BMI Calculate Card Ref
// 20210628153636
// https://solvecare-4d0de-default-rtdb.firebaseio.com/bmi.json
{
"cardData": {
"00f1v1": "Send",
"00t1v1": "Date",
"00t1v2": "Weight",
"00t1v3": "Height"
},
"cardLayout": {
"body": [
{
"id": "000t1",
"name": "first tile",
"tileComponent": [
{
"id": "",
"orientation": "HORIZONTAL",
"subView": [
{
"id": "${00t1v1}",
"position": "START",
"text_color": "default_color",
"text_size": "header1",
"type": "LABEL",
"uiAction": ""
},
{
"id": "${00t1v1}",
"position": "START",
"text_color": "default_color",
"text_size": "header1",
"type": "date",
"uiAction": ""
}
],
"type": "CONTAINER",
"uiAction": ""
},
{
"capture": "weight",
"id": "${00t1v2}",
"isCapturable": true,
"isValidation": true,
"text_color": "default_color",
"text_size": "header4",
"tileType": "Wrap",
"type": "TEXT",
"uiAction": "",
"validation": {
"length": "3",
"message": ""
}
},
{
"capture": "height",
"id": "${00t1v3}",
"isCapturable": true,
"isValidation": true,
"text_color": "default_color",
"text_size": "header4",
"tileType": "Wrap",
"type": "TEXT",
"uiAction": "",
"validation": {
"length": "3",
"message": ""
}
}
],
"tileType": "Wrap",
"uiAction": ""
}
],
"footer": {
"menu": [
{
"id": "${00f1v1}",
"type": "BUTTON",
"uiAction": "${action1}"
}
],
"orientation": "HORIZONTAL"
}
},
"cardUIAction": {
"action1": {
"action": "event-001"
},
"action2": {
"action": "event-002"
}
},
"id": "00jc1",
"name": "Calculate BMI"
}
UI_Card_Ref_Definition_v1.0
{
"cardData": {
"00fv1": "NEXT",
"00fv2": "BACK",
"00i1": "ddd",
"00i2": "Find Doctor",
"00sv1": "New Request",
"00sv2": "Pending",
"00sv3": "How are you feeling today?",
"00sv6": "add",
"00v3": "Tile2Value1",
"00v4": "Anna Smith, HR cares about you",
"00v5": "Doctor name",
"00v6": "Status",
"00v7": "person"
},
"cardLayout": {
"body": [
{
"id": "00t1",
"tileComponent": [
{
"id": "",
"isCapturable": true,
"key": "question1",
"orientation": "HORIZONTAL",
"subView": [
{
"id": "${00sv6}",
"position": "START",
"ratio": "1",
"type": "IMAGE",
"uiAction": ""
},
{
"id": "${00sv1}",
"position": "START",
"ratio": "2",
"text_bg": "default_color",
"text_color": "default_color",
"text_size": "header1",
"type": "LABEL",
"uiAction": ""
}
],
"type": "CONTAINER",
"uiAction": ""
}
],
"tileType": "Wrap",
"uiAction": "${listAction2}"
},
{
"id": "00t2",
"name": "Patient",
"tileComponent": [
{
"id": "",
"isSearchable": false,
"subView": [
{
"id": "${00v7}",
"position": "START",
"ratio": "1",
"type": "IMAGE",
"uiAction": ""
},
{
"bind": "name",
"id": "${00v5}",
"position": "START",
"ratio": "2",
"text_bg": "default_color",
"text_color": "default_color",
"text_size": "header1",
"type": "LABEL",
"uiAction": ""
},
{
"bind": "count",
"id": "${00v6}",
"position": "CENTER",
"ratio": "1",
"text_bg": "default_color",
"text_color": "default_color",
"text_size": "header1",
"type": "LABEL",
"uiAction": ""
}
],
"type": "LIST",
"uiAction": "${listAction1}"
}
],
"tileType": "Wrap",
"uiAction": ""
}
],
"footer": {
"menu": [
{
"id": "00fv1",
"type": "BUTTON",
"uiAction": "${action1}"
},
{
"id": "00fv2",
"type": "BUTTON",
"uiAction": "${action2}"
}
],
"orientation": "HORIZONTAL"
},
"header": {
"menus": [
{
"id": "00m1",
"items": [
{
"id": "${00i2}",
"isEnable": true,
"menuAction": "",
"type": "LABEL",
"uiAction": "",
"visible": true
}
],
"orientation": "HORIZONTAL",
"position": "START",
"visible": true
}
]
}
},
"cardUIAction": {
"action1": {
"action": "event-002"
},
"action2": {
"action": "event-001"
},
"listAction1": {
"action": "event-001"
},
"listAction2": {
"action": "event-001"
}
},
"id": "00c1",
"pipe_action": "patienList"
}