Request-Typen
VisiCall /api/v1/visicall
Über die VisiCall API können Rufe und Anwesenheiten auf VisiCall-Displays angezeigt werden.
Ruf eröffnen
Mit folgendem Request wird ein Ruf für die Adresse 48:88:1F:C9:B0:BA eröffnet.
POST /api/v1/visicall
Content-Type: application/json
{
"target": "48:88:1F:C9:B0:BA",
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": {
"event": "Normalruf",
"position": "Haupteingang"
}
}
Werte
Folgende Werte können unter data mitgesendet werden.
| Key | Beschreibung | Optional | Standard |
|---|---|---|---|
| event | Art des Rufs | Nein, ausser closed ist true |
|
| closed | Ob der Ruf auf address geschlossen werden soll |
Ja | false |
| position | Position des Elements | Ja | |
| section | Sektionen-Code des Rufes | Ja | |
| reachable | Erreichbarkeit des Elements | Ja | |
| battery | Aktueller Batteriestand des Elements | Ja | |
| attribute | Attribute zur Bettenerkennung, nur relevant mit alter GETS-Zentrale | Ja | |
| code | Code des vom Ruf betroffenen Elements | Ja | |
| created_at | Zeitpunkt der Ruferöffnung im Format YYYY-MM-DD HH:MM:SS. Wird kein expliziter Zeitpunkt mitgesendet wird die aktuelle Uhrzeit verwendet. |
Ja | now |
| closed_at | Zeitpunkt der Rufschliessung im Format YYYY-MM-DD HH:MM:SS. Wird kein expliziter Zeitpunkt mitgesendet wird die aktuelle Uhrzeit verwendet. |
Ja | now |
Siehe auch API → Schemas
Die
battery,positionundreachableWerte können hier optional mitgesendet werden. Die Werte werden beim untertargetdefinierten Element aktualisiert. Beide Werte können auch unabhängig über die CareCall API aktualisiert werden.
Minimale Requests
Ein minimaler Request zur Ruferöffnung sieht also wie folgt aus:
POST /api/v1/visicall
Content-Type: application/json
{
"target": "48:88:1F:C9:B0:BA",
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": {
"event": "Normalruf"
}
}
Ruf schliessen
Um alle Rufe auf einer Adresse zu schliessen, reicht es, den closed Wert als true zu senden.
POST /api/v1/visicall
Content-Type: application/json
{
"target": "48:88:1F:C9:B0:BA",
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": {
"closed": true
}
}
Ruftyp-Informationen
Falls detailliertere Informationen zum erstellen Ruftyp in der Antwort mitgesendet werden sollen, kann der URL ?include=type angefügt werden.
Auf folgende Anfrage (beachte URL)
POST /api/v1/visicall?include=type
Content-Type: application/json
{
"target": "48:88:1F:C9:B0:BA",
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": {
"event": "Normalruf"
}
}
wird folgende Antwort gesendet:
{
"success": true,
"data": {
"id": 4,
"address": "48:88:1F:C9:B0:BA",
"position": null,
"attribute": null,
"element_code": "SEAN",
"element_name": "Mr. Sean Anderson",
"opened_at": "2016-09-22 15:32:17",
"closed_at": null,
"duration": 30,
"type": {
"id": 5,
"name": "Normalruf",
"urgency": "NORMAL",
"priority": 5,
"type": "CALL",
"color": "#ff5454",
"notify": true,
"notification_interval": 10,
"notification_maxloops": 60,
"notification_sound": "sound.mp3"
}
}
}
GETS-interne Ruftypnamen
Über die CareSuite-Oberfläche werden die GETS-internen Namen der Ruftypen hinterlegt. Eine Liste dieser Übersetzungen kann wie folgt abgerufen werden:
GET /api/v1/visicall/call-types
Content-Type: application/json
Es wird folgende Antwort zurückgegeben:
HTTP/1.1 200 OK
Content-Type: application/json
{
"success": true,
"data": {
"Hotelruf": "Hotel",
"Geräteruf": "Geraete",
"Anwesenheit": "Anwesenheit",
"Funkelement-Ruf": "",
"Normalruf": "Normalruf",
"WC": "",
"Notruf": "Notruf",
"Flucht": "Fugue",
"Pneumatischer Ruf (REA)": "Pneu",
"Störung": "Stoerung"
}
}
Die Antwort enhält alle in der CareSuite erfassten Ruftypen. Ist ein GETS-interner Name hinterlegt, wird dieser angezeigt.
CareCall /api/v1/carecall
Über die CareCall API können Positionen und Batteriestände von Elementen aktualisiert werden.
Batterie-, Positions- und Erreichbarkeits-Update
Um den Batteriestand, die Position oder die Erreichbarkeit von Element 48:88:1F:C9:B0:BA zu aktualisieren, kann folgender Request verwendet werden.
Die Werte battery, reachable und position können auch einzeln aktualisiert werden.
Der Batteriestand wird in % gemessen.
POST /api/v1/carecall
Content-Type: application/json
{
"target": "48:88:1F:C9:B0:BA",
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": {
"battery": 20,
"position": "Haupteingang",
"reachable": true
}
}
Alternativ können auch mehrere Elemente gleichzeitig aktualisiert werden:
POST /api/v1/carecall
Content-Type: application/json
{
"consumer": "8d8d52b6-ab21-4984-8abc-c5640b2e107e",
"hash": "2c74049f7b3ce927cefaaa4162c98abe234f971f",
"data": [
{
"target": "48:88:1F:C9:B0:BA",
"battery": 20,
"position": "Haupteingang",
"reachable": true
},
{
"target": "48:88:1F:C9:B0:BC",
"battery": 14,
"position": "Garten",
"reachable": true
}
]
}
Antwort bei fehlerhaften Anfragen
Fehlerhafter Hash
Siehe API → Signatur → Rückmeldung bei ungültigem Hash
Fehlende Informationen
Werden nicht alle Informationen im Request mitgesendet, wird eine Response mit Status 422 Unprocessable Entity zurückgegeben.
HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json
{
"success": false,
"messages": {
"code": "validation_failed",
"status_code": 422,
"errors": {
"address": [
"address muss ausgefüllt sein."
],
"data.event": [
"data.event muss ausgefüllt sein, wenn closed nicht true ist."
]
}
}
}