5 REST-Schnittstelle ansitel Telefonanlage
Die ansitel-Telefonanlage bietet ab Version 4.2 eine REST-Schnittstelle (API) zur Anbindung von externen Programmen.
Die Bedienung der Schnittstelle orientiert sich weitestgehend an der Menüführung im ansitel webinterface.
5.1 Authentifizierung
Die REST-Schnittstelle lässt sich NUR über einen Token authentifizieren. Hierzu muss in der ansitel Telefonanlage unter System > Benutzer und Rechte ein Benutzer (z.B. ansiteladmin) bearbeitet und der Haken bei „Click to Dial aktivieren“ gesetzt werden. Wird der Benutzer nochmals bearbeitet, ist auf der rechten Seite der „Click to Dial Token“ zu sehen. Dieser Token wird für die Authentifizierung verwendet.
Abbildung: Token-Authentifizierung der ansitel Telefonanlage
5.2 Aufruf der REST-Schnittstelle
Die REST-Schnittstelle wird, wie nachfolgend aufgerufen. Die Daten werden im JSON-Format übergeben:
curl -k -H "Content-Type: application/json" -X POST -d
'{
"token":"<token>",
"action":"<action>",
"<parameter1>":"<parameterwert1>",
"<parameter2>":"<parameterwert2>",
"<parameter3>":"<parameterwert3>"
}'
https://<IP-Adresse der ansitel-Telefonanlage>/awi/api/rest
5.3 Mögliche action-Parameter
Wichtig: Zum Übernehmen der Änderungen die "writeconfig"-Funktion ausführen.
5.3.1 addincomingroute
Mit dieser Funktion können eingehende Routen in der ansitel Telefonanlage hinzugefügt werden.
- incomingrouteNumber: Rufnummer der eingehenden Route (z.B.00490301234567)
- pk_outgoingRouteId: Id der ausgehenden Route, sofern in der ausgehenden Route ein Präfix definiert ist (Standard: null). Der Präfix der ausgehenden Route wird der eingehenden Absenderrufnummer vorangestellt.
- dialplannumber: Wählplanrufnummer, die bei einem eingehenden Anruf erreicht wird (in diesem Fall ist incomingrouteCustom null)
- incomingrouteCustom: Anstatt der (Wählplanrufnummer) kann ein Platzhalter der eingehenden Rufnummern verwendet werden "${EXTEN}" (in diesem Fall ist dialplannumber null) Benutzerdefniert: Anwahl-Muster für Wählplanrufnummern
- incomingrouteMixmonitor (0/1): Gespräche mitschneiden aktivieren (1) oder deaktivieren (0)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"addincomingroute",
"incomingrouteNumber":"00493012345678",
"dialplannumber":"100",
"incomingrouteCustom":null,
"incomingrouteMixmonitor":"0",
"pk_outgoingRouteId":null}' https://192.168.1.17/awi/api/rest
Rückgabe:
Das data-Feld enthält die pk_incomingrouteId der angelegten eingehenden Route.
{"status":200,"status_message":"incoming route 00493012345678 added","data":"1"}
5.3.2 addpeer
Mit dieser Funktion können SIP-Nebenstellen in der ansitel Telefonanlage hinzugefügt werden.
Folgende Parameter werden von der ansitel Telefonanlage erwartet.
- peerName: Account-Name für die Nebenstelle (darf keine Sonderzeichen enthalten)
- peerSecret: Passwort für den Account (muss Kleinbuchstaben, Großbuchstaben und Zahlen enthalten)
- peerDisplayName: Angezeigter-Name für die Nebenstelle
- peerInternalCallerId: Absenderrufnummer der Nebenstelle intern
- create_dialplan_entry (Wert: 0/1): Mit Wert 1 wird eine Verknüpfung im Wählplan gleich der internen Absenderrufnummer der Nebenstelle erstellt.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d '{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"addpeer","peerName":"Telefon2","peerInternalCallerId":"9", "peerSecret":"123aAaZ", "peerDisplayName":"Mitarbeiter 10", "create_dialplan_entry":"1"}' https://192.168.1.20/awi/api/rest
Rückgabe:
Das data-Feld enthält die pk_peerId der angelegten Nebenstelle.
{"status":200,"status_message":"SIPPeer Telefon2 added","data":"286"}
5.3.3 addringgroup
Mit dieser Funktion können Rufgruppen mit Rufgruppenobjekten in der ansitel Telefonanlage hinzugefügt werden.
Es können folgende die Parameter einzeln oder in Kombination gesetzt werden:
- ringgroupName: Name der Rufgruppe
-
ringgroupStrategy: Anwahlmodus der Rufgruppe
- ringall: gleichzeitig
- linear: aufbauend
- rotate: rotierend
-
ringgroupTimeout: Die Anwahlzeit definiert die Zeit (in Sek.), wann der Anruf auf das nächste Rufgruppen-Objekt springen soll (nur bei aufbauend oder rotierend).
- dialplannumber: Ist die Wählplannummer angegeben, wird die Rufgruppe und eine Verknüpfung im Wählplan angelegt.
Die Zuordnung der Rufgruppenobjekte erfolgt mit der Übergabe eines Arrays bestehend aus den Objektmodulen:
- ringgroupObjectModuleId: Id des jeweiligen Moduls nach Art des Objektes (z.B. pk_peerId 1)
- ringgroupObjectModule: Art des Objektes (z.B. sippeer, iaxpeer, isdnpeer, callforwarding, onenumberuser)
- ringgroupObjectsOrder: Reihenfolge je nach Anwahlmodus (1,2,3....)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{
"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"addringgroup",
"ringgroupName":"Alle Telefone",
"ringgroupStrategy":"ringall",
"ringgroupTimeout":"20",
"dialplannumber":"26",
"ringgroupObject":
{"1":
{"ringgroupObjectModuleId":"125",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"
},
"2":
{"ringgroupObjectModuleId":"126",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"
}
}
}' https://192.168.1.17/awi/api/rest
Rückgabe:
Das data-Feld enthält die pk_ringgroupId der angelegten Rufgruppe.
{"status":200,"status_message":"Ringgroup Alle Telefone 1234568 added","data":"20"}
5.3.4 delincomingroute
Mit dieser Funktion können eingehende Route auf Basis der ID (pk_incomingrouteId) in der ansitel Telefonanlage gelöscht werden:
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"delincomingroute",
"pk_incomingrouteId":80}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,"status_message":"pk_incomingrouteId 80 deleted","data":null}
5.3.5 delpeer
Mit dieser Funktion können Nebenstellen auf Basis der Nebenstellen-ID (pk_peerId) in der ansitel Telefonanlage gelöscht werden:
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"delpeer","pk_peerId":125}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"pk_peerId 125 deleted","data":null}
5.3.6 delringgroup
Mit dieser Funktion können Rufgruppen auf Basis der Rufgruppen-Id (pk_ringgroupId) in der ansitel Telefonanlage gelöscht werden:
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d '{"token":"06bf088a0d9501cd53829fa086a9a32d","action":"delringgroup","pk_ringgroupId":20}' https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"pk_ringgroupId 15 deleted","data":null}
5.3.7 editincomingroute
Mit dieser Funktion können eingehende Routen in der ansitel Telefonanlage geändert werden.
Die eingehende Route wird anhand der pk_incomingrouteId identifiziert.
Es können folgende die Parameter einzeln oder in Kombination gesetzt werden:
- incomingrouteNumber: Rufnummer der eingehenden Route (z.B.00490301234567)
- pk_outgoingRouteId: Id der ausgehenden Route, sofern in der ausgehenden Route ein Präfix definiert ist (Standard: null). Der Präfix der ausgehenden Route wird der eingehenden Absenderrufnummer vorangestellt.
- dialplannumber: Wählplanrufnummer, die bei einem eingehenden Anruf erreicht wird (in diesem Fall ist incomingrouteCustom null)
- incomingrouteCustom: Anstatt der (Wählplanrufnummer) kann ein Platzhalter der eingehenden Rufnummern verwendet werden "${EXTEN}" (in diesem Fall ist dialplannumber null) Benutzerdefniert: Anwahl-Muster für Wählplanrufnummern
- incomingrouteMixmonitor (0/1): Gespräche mitschneiden aktivieren (1) oder deaktivieren (0)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"editincomingroute",
"pk_incomingrouteId":80,
"incomingrouteNumber":"0001234567XXX",
"dialplannumber":"123",
"incomingrouteCustom":null,
"incomingrouteMixmonitor":"1",
"pk_outgoingRouteId":null}' https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"incoming route id 80 edited","data":null}
5.3.8 editpeer
Mit dieser Funktion können folgende die Parameter einzeln oder in Kombination auf Basis der Nebenstellen-ID (pk_peerId) in der ansitel Telefonanlage gesetzt werden:
- peerName: Account-Name für die Nebenstelle (darf keine Sonderzeichen enthalten)
- peerSecret: Passwort für den Account (muss Kleinbuchstaben, Großbuchstaben und Zahlen enthalten)
- peerDisplayName: Angezeigter-Name für die Nebenstelle
- peerInternalCallerId: Absenderrufnummer der Nebenstelle intern
- peerExternalCallerId: Absenderrufnummer der Nebenstelle extern
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{
"token":"a5c70c5f76e10daefb726991db2f61bf",
"action":"editpeer",
"pk_peerId":1,
"peerName":"Telefon22",
"peerInternalCallerId":"22",
"peerSecret":"123aAaZ",
"peerExternalCallerId":"0049123456",
"peerDisplayName":"Mörle Hause28"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"pk_peerId 1 changed","data":null}
5.3.9 editringgroup
Mit dieser Funktion können Rufgruppen bearbeitet werden.
Die Rufgruppe wird anhand der pk_ringgroupId identifiziert.
Es können folgende die Parameter einzeln oder in Kombination gesetzt werden:
- ringgroupName: Name der Rufgruppe
-
ringgroupStrategy: Anwahlmodus der Rufgruppe
- ringall: gleichzeitig
- linear: aufbauend
- rotate: rotierend
-
ringgroupTimeout: Die Anwahlzeit definiert die Zeit (in Sek.), wann der Anruf auf das nächste Rufgruppen-Objekt springen soll (nur bei aufbauend oder rotierend).
Die Zuordnung der Rufgruppenobjekte erfolgt mit der Übergabe eines Arrays bestehend aus den Objektmodulen:
- ringgroupObjectModuleId: Id des jeweiligen Moduls nach Art des Objektes (z.B. pk_peerId 1)
- ringgroupObjectModule: Art des Objektes (z.B. sippeer, iaxpeer, isdnpeer, callforwarding, onenumberuser)
- ringgroupObjectsOrder: Reihenfolge je nach Anwahlmodus (1,2,3....)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"editringgroup",
"pk_ringgroupId":20,
"ringgroupName":"Alle Telefone 1234568u",
"ringgroupStrategy":"rotate",
"ringgroupTimeout":"30",
"ringgroupObject":
{"1":
{"ringgroupObjectModuleId":"130",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"2"},
"2":
{"ringgroupObjectModuleId":"132",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"1"}}}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"Ringgroup Id 20 edited","data":null}
5.3.10 factoryreset
Diese Funktion ermöglicht das Zurücksetzen des gesamten Systems.
Wichtig: Es ist zwingend erforderlich, dass ein richtiger Sicherheitscode angegeben wird. Es handelt sich hier um den selben Sicherheitscode, den Sie im Webinterface der Telefonanlage unter System > Einstellungen > Backup > Werkseinstellungen finden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"factoryreset",
"code":"12345"
}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"factory reset successful",null}
5.3.11 getcallfordwardingoncuserbytoken
Diese Funktion gibt die Weiterleitungen an der persönlichen Nebenstelle (auch One Number Concept User genannt) zurück. Die persönliche Nebenstelle wird durch den Benutzertoken authentifiziert.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getcallfordwardingoncuserbytoken",
}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"callforwarding of user Benutzer1 with id 2",
"data":
{"pk_userId":2,
userName":"Benutzer1",
"destination":"03012345678"}
}
Ist das Feld "destination" null existiert keine Weiterleitung für diesen Benutzer.
5.3.12 getcallfordwardingononcuser
Diese Funktion gibt sämtliche Weiterleitungen an persönlichen Nebenstellen (auch One Number Concept User genannt) zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getcallfordwardingononcuser"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"callforwarding of all onc users",
"data":
{"2":
{"pk_userId":2,
"userName":"Benutzer1",
"destination":"03012345678"},
"3":
{"pk_userId":3,
"userName":"Benutzer2",
"destination":"0305555555"}
}
}
Weiterleitungen an einzelnen Benutzern lassen sich mit der Angabe der pk_userId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getcallfordwardingononcuser",
"pk_userId":2}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"callforwarding of user Benutzer1 with id 2",
"data":
{"pk_userId":2,
userName":"Benutzer1",
"destination":"03012345678"}
}
Ist das Feld "destination" null existiert keine Weiterleitung an diesem Benutzer.
5.3.13 getcallfordwardingonpeer
Diese Funktion gibt sämtliche Weiterleitungen an Nebenstellen zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getcallfordwardingonpeer"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"callforwarding of all peers",
"data":
{"132":
{"pk_peerId":1,
"peerName":"Telefon1",
"destination":"03012345678"},
"145":
{"pk_peerId":14,
"peerName":"Telefon14",
"destination":"01731234567"}
}
}
Weiterleitungen an einzelnen Nebenstellen lassen sich mit der Angabe der pk_peerId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getcallfordwardingonpeer",
"pk_peerId":10}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"callforwarding of peer Telefon10 with id 10",
"data":
{"pk_peerId":10,
"peerName":"Telefon10",
"destination":"1235"}
}
Ist das Feld "destination" null existiert keine Weiterleitung an dieser Nebenstelle.
5.3.14 getcdr
Mit dieser Funktion können die Gesprächsdaten der ansitel Telefonanlage (mit Start- und Endzeitpunkt) aufgerufen werden. Jeder Aufruf gibt maximal 1000 Zeilen zurück. Die Variable „resultcount“ enthält die Anzahl aller Zeilen der Auswahl. Gegebenenfalls können über einen 2. Aufruf mit dem Parameter „linepos=1000“ weitere 1000 Zeilen abgerufen werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getcdr","datetimefrom":"2018-03-01 10:28:20",
"datetimeto":"2018-03-02 11:21:20","linepos":"0"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"OK",
"resultcount":"10",
"data":
[{"uniqueid":"1519900777.158",
"calldate":"2018-03-01 11:39:37",
"clid":"\"Phone1\"<16>",
"src":"16",
"custom_src":"16",
"dst":"981",
"direction":"internal",
"duration":"1",
"billsec":"0",
"disposition":"NO ANSWER",
"accountcode":"234",
"userfield":"",
"outqueue":"",
"onc":"Phone1;981",
"linkedid":"1519900777.158",
"sequence":"115",
"peeraccount":"234",
"trunkid":"12"}]}
Beschreibung der Felder:
- uniqueid – eindeutige Kennung des Anrufes (Bsp: 1510581787.275)
- calldate – Datum (Bsp: 2017-11-13 15:03:07)
- clid – Absenderrufnummer bestehend aus Name und Nummer (Bsp: „Telefon1" <00493012345678>)
- src – Quellrufnummer / Absenderrufnummer (Bsp: 00493012345678)
- custom_src – Interne Absenderrufnummer der Nebenstelle (Bsp: 123), sofern vorhanden
- dst – Zielrufnummer (Bsp: 030208477960)
- direction – internal (nur interne Gespräche), outgoing (von internen Nebenstellen ins Festnetz oder Anlagenkopplung), incoming (nur eingehende Gespräche)
- duration – Länge des Anrufes (in Sek.)
- billsec – Länge des Gespräches von Abheben bis Aufegen des Teilnehmers (in Sek.)
- disposition – Status des Calls (NO ANSWER,CONGESTION,FAILED,BUSY,ANSWERED)
- userfield – Eingangsrufnummer (Bsp: 030208477965)
- outqueue – Zuordnung zu Warteschlange für Statistiken
- onc – Quelle;Ziel bei Verwendung der persönlichen Nebenstellen
- linkedid -– eindeutige Kennung des Anrufes bei mehreren CDR einträgen z.B. bei Weiterleitungen (Bsp: 1510581787.275)
- sequence - Laufende Nummerierung bei linkedid – Einträgen
- trunkid – verwendete Leitung zu diesem Anruf
5.3.15 getcdroncuserbytoken
Mit dieser Funktion können die Gesprächsdaten eines Benutzers von der ansitel Telefonanlage aufgerufen werden. Die Authentifizierung erfolgt über den Token des Benutzers.
Parameter:
- resultcount: Gesamtmenge an zurückgegebenen Daten
- range: Anzahl der zurückgegebenen Elementen
- linpos: Zeiger auf den Anfang der zurückgegebenen Daten
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getcdroncuserbytoken", "linepos":"0", "range":"10"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{
"status_message" : "cdrs user A1 with id 119",
"status" : 200,
"resultcount" : 16,
"data" : {
"6345" : {
"cdr" : {
"lastapp" : "Dial",
"disposition" : "ANSWERED",
"linkedid" : "1585579223.9",
"accountcode" : "1",
"clid" : "\"A1\" <106>",
"lastdata" : "SIP/105,60,tTkK",
"uniqueid" : "1585579223.9",
"calldate" : "2020-03-30 16:40:23",
"peeraccount" : "1",
"outqueue" : "",
"userfield" : "",
"dst" : "105",
"dcontext" : "default",
"dstchannel" : "SIP/105-00000007",
"channel" : "SIP/123-00000006",
"src" : "106",
"amaflags" : "3",
"onc" : "A1;105",
"duration" : "4",
"direction" : "internal",
"sequence" : "6",
"fk_trunks_trunkId" : null,
"billsec" : "2",
"pk_cdrId" : "6345",
"custom_src" : "106",
"cname" : "Max Mustermann"
}
}
}
}
Beschreibung der Felder:
- uniqueid – eindeutige Kennung des Anrufes (Bsp: 1510581787.275)
- calldate – Datum (Bsp: 2017-11-13 15:03:07)
- clid – Absenderrufnummer bestehend aus Name und Nummer (Bsp: „Telefon1" <00493012345678>)
- src – Quellrufnummer / Absenderrufnummer (Bsp: 00493012345678)
- custom_src – Interne Absenderrufnummer der Nebenstelle (Bsp: 123), sofern vorhanden
- dst – Zielrufnummer (Bsp: 030208477960)
- direction – internal (nur interne Gespräche), outgoing (von internen Nebenstellen ins Festnetz oder Anlagenkopplung), incoming (nur eingehende Gespräche)
- duration – Länge des Anrufes (in Sek.)
- billsec – Länge des Gespräches von Abheben bis Aufegen des Teilnehmers (in Sek.)
- disposition – Status des Calls (NO ANSWER,CONGESTION,FAILED,BUSY,ANSWERED)
- userfield – Eingangsrufnummer (Bsp: 030208477965)
- outqueue – Zuordnung zu Warteschlange für Statistiken
- onc – Quelle;Ziel bei Verwendung der persönlichen Nebenstellen
- linkedid -– eindeutige Kennung des Anrufes bei mehreren CDR einträgen z.B. bei Weiterleitungen (Bsp: 1510581787.275)
- sequence - Laufende Nummerierung bei linkedid – Einträgen
- trunkid – verwendete Leitung zu diesem Anruf
- cname - Name anhand der Rufnummer im LDAP dieses Benutzers gefunden
5.3.16 getdialplannumber
Diese Funktion gibt sämtliche Wählplanrufnummern mit Id zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST
-d '{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdialplannumber"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"All dialplannumbers",
"data":
{"201":
{"pk_dialplannumberId":"201",
"dialplanNumber":"0001"},
"202":
{"pk_dialplannumberId":"202",
"dialplanNumber":"0002"}
}}
Einzelne Wählplanrufnummern lassen sich mit der Angabe der pk_dialplannumberId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdialplannumber",
"pk_dialplannumberId":59}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"dialplannumber pk_dialplannumberId 59",
"data":{"pk_dialplannumberId":"59","dialplanNumber":"997"}}
5.3.17 getdate
Diese Funktion gibt das aktuelle Datum der ansitel Telefonanlage zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getdate"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"DateTime of ansitel pbx","data":"2018-03-05 15:02:17"}
5.3.18 getdndoncuserbytoken
Diese Funktion gibt zurück, ob der Anrufschutz an der persönliche Nebenstelle aktiviert ist. Die persönliche Nebenstelle wird anhand des Benutzertokens authentifiziert.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdndoncuserbytoken"}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"dnd of onc user user1 with id 1",
"data":
{
"pk_userId":"1",
"userName":"user1",
"dnd":"1"
}
}
Ist das Array "data" null oder der Paramater "dnd" = "0" existiert kein Anrufschutz an dieser persönlichen Nebenstelle.
5.3.19 getdndononcuser
Diese Funktion gibt die persönlichen Nebenstellen von Benutzern zurück, an denen Anrufschutz aktiviert ist.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdndononcuser"}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"dnd of all onc users",
"data":
{"1":
{"pk_userId":2,
"userName": "Benutzer1",
"dnd":"1"}},
{"2":
{"pk_userId":3,
"userName": "Benutzer2",
"dnd":"1"}}
}
Anrufschutz an einzelnen persönlichen Nebenstellen lassen sich mit der Angabe der pk_userId anzeigen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdndononcuser",
"pk_userId":1
}' https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"dnd of onc user ansiteladmin with id 2",
"data":{
"pk_userId":2,
"userName":"Benutzer1",
"dnd":"1"}
}
Ist das Array "data" null existiert kein Anrufschutz an dieser persönlichen Nebenstelle.
5.3.20 getdndonpeer
Diese Funktion gibt Nebenstellen zurück, an denen Anrufschutz aktiviert ist.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdndonpeer"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"dnd of all peers",
"data":
{"1":
{"pk_peerId":1,
"peerName":"Telefon1",
"dnd":"1"}
},
{"2":
{"pk_peerId":2,
"peerName":"Telefon2",
"dnd":"1"}
}
}
Anrufschutz an einzelnen Nebenstellen lassen sich mit der Angabe der pk_peerId anzeigen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getdndonpeer",
"pk_peerId":1}' https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"dnd of peer Telefon1 with id 1",
"data":
{"pk_peerId":1,
"peerName":"Telefon1",
"dnd":"1"}}
Ist das Array "data" null existiert keine Weiterleitung an dieser Nebenstelle.
5.3.21 getincomingroute
Diese Funktion gibt sämtliche eingehenden Routen mit folgenden Parametern zurück:
- incomingrouteNumber: Rufnummer der eingehenden Route (z.B.00490301234567)
- pk_outgoingRouteId: Id der ausgehenden Route, sofern in der ausgehenden Route ein Präfix definiert ist. Der Präfix der ausgehenden Route wird der eingehenden Absenderrufnummer vorangestellt.
- dialplannumber: Wählplanrufnummer, die bei einem eingehenden Anruf erreicht wird (in diesem Fall ist incomingrouteCustom null)
- incomingrouteCustom: Anstatt der (Wählplanrufnummer) kann ein Platzhalter der eingehenden Rufnummern verwendet werden "${EXTEN}" (in diesem Fall ist dialplannumber null) Benutzerdefniert: Anwahl-Muster für Wählplanrufnummern
- incomingrouteMixmonitor (0/1): Gespräche mitschneiden aktivieren (1) oder deaktivieren (0)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d","action":"getincomingroute"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"All incoming routes",
"data":
{"1":
{"pk_incomingrouteId":1,
"dialplannumber":"100",
"incomingrouteNumber":"00491234567",
"incomingrouteCustom":null,
"incomingrouteMixmonitor":"0"},
"4":
{"pk_incomingrouteId":4,
"dialplannumber":null,
"incomingrouteNumber":"00491234568",
"incomingrouteCustom":${EXTEN:11},
"incomingrouteMixmonitor":"1"}
}
}
Einzelne eingehenden Routen lassen sich mit der Angabe der pk_incomingrouteId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getincomingroute",
"pk_incomingrouteId":45}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"incomingroute pk_incomingrouteId 45",
"data":
{"pk_incomingrouteId":45,
"dialplannumber":155,
"incomingrouteNumber":"0049301234565",
"incomingrouteCustom":null,
"incomingrouteMixmonitor":"0"}
}
5.3.22 getldaponcuserbytoken
Diese Funktion gibt sämtliche Einträge des LDAP-Verzeichnisses für diesen Benutzer anhand seines Tokens zurück.
Parameter:
- resultcount: Gesamtmenge an zurückgegebenen Daten
- range: Anzahl der zurückgegebenen Elementen (Optional)
- linpos: Zeiger auf den Anfang der zurückgegebenen Daten (Optional)
- search: Suche im Nachnamen der Datensätze (Optional)
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d","action":"getldaponcuserbytoken","linepos":"0","range":"1","search":"Mu"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{
"data" : {
"Benutzer" : {
"Max Mustermann 5555" : {
"cn" : "Max Mustermann 5555",
"givenname" : "Max",
"postalcode" : "10222",
"street" : "Musterstrasse 10",
"l" : "Musterstadt",
"telephonenumber" : "5555",
"o" : "Mustermann",
"mail" : "info@mustermann.de",
"sn" : "Mustermann"
}
}
},
"resultcount" : 3018,
"status_message" : "ldap for onc user Benutzer with id 96",
"status" : 200
}
5.3.23 getldappinoncuserbytoken
Diese Funktion gibt den PIN zum Ldap-Download auf Mobiltelefone zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991fdadb2f61bf",
"action":"getldappinoncuserbytoken"}'
https://192.168.1.17/awi/api/rest
Rückgabe der PIN, wenn Download erlaubt:
{
"data" : "456",
"status" : 200,
"status_message" : "ldap pin of user ansiteladmin"
}
Rückgabe, wenn Download nicht erlaubt:
{
"data" : "deny",
"status" : 200,
"status_message" : "ldap pin of user ansiteladmin"
}
5.3.24 getmaxusageoftrunk
Diese Funktion gibt die maximale Auslastung und den Zeitpunk einer Leitung zurück.
Die Leitung wird anhand der pk_trunkId identifiziert.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getmaxusageoftrunk",
"pk_trunkId":1}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"maxchannels of pk_trunkId 11",
"data":
{"maxchannels":"10",
"timestamp":"1537524981"}}
5.3.25 getoncuser
Diese Funktion gibt alle Benutzer von persönlichen Nebenstellen zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getoncuser"}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,"status_message":"All users",
"data":
{"1":
{"pk_userId":"1",
"userName":"ansiteladmin"},
"2":
{"pk_userId":"2",
"userName":"Benutzer2"}
}
}
Einzelne Benutzer lassen sich mit der Angabe der pk_userId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"getoncuser",
"pk_userId":2}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"user pk_userId 2",
"data":
{"pk_userId":"2",
"userName":"Benutzer2"}}
5.3.26 getoutgoingrouteprefixes
Diese Funktion gibt alle Präfixe von ausgehenden Routen zurück, sofern Präfixe definiert wurden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefdsfdsfdf61bf",
"action":"getoutgoingrouteprefixes"}'
https://192.168.1.17/awi/api/rest
Rückgabe bei keinem Präfix:
{
"data" : [
null
],
"status" : 200,
"status_message" : "Outgoingroute prefixes"
}
Rückgabe bei definierten Präfixen:
{
"data" : [
"2",
"5"
],
"status" : 200,
"status_message" : "Outgoingroute prefixes"
}
5.3.27 getpeer
Diese Funktion gibt sämtliche Nebenstellen-Accounts mit folgenden Feldern zurück:
- pk_peerId: Eindeutige ID zur Nebenstelle
- peerModule: Art der Nebenstelle (sippeer, iaxpeer, isdnpeer). Diese wird bei Einträgen in Rufgruppen oder Wählplänen benötigt.
- peerName: Eindeutiger Accountname im System
- peerInternalCallerId: Interne Rufnummer der Nebenstelle
- peerExternalCallerId: Externe Rufnummer der Nebenstelle
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getpeer"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":
"All peers",
"data":
[{"pk_peerId":"1",
"peerModule":"sippeer",
"peerName":"Telefon1",
"peerInternalCallerId":"10",
"peerDisplayName":"Telefon Eins",
"peerExternalCallerId":"03012345678"},
{"pk_peerId":"2",
"peerModule":"iaxpeer",
"peerName":"Telefon2",
"peerInternalCallerId":"20",
"peerDisplayName":"Telefon Zwei",
"peerExternalCallerId":"0302222354"}]}
Einzelne Accounts lassen sich mit der Angabe der pk_peerId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getpeer","pk_peerId":1}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status_message":"peer pk_peerId 1",
"data":
{"pk_peerId":"1",
"peerModule":"sippeer",
"peerName":"Telefon1",
"peerInternalCallerId":"10",
"peerDisplayName":"Telefon Eins",
"peerExternalCallerId":"03012345678"}}
5.3.28 getpeersoncuserbytoken
Diese Funktion gibt sämtliche aktiven und inaktiven Nebenstellen sowie Weiterleitungen der persönlichen Nebenstelle eines Benutzers zurück. Anhand der jeweiligen ID können mit der Funktion "setpeersoncuserbytoken" die Nebenstellen aktiviert oder deaktiviert werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getpeersoncuserbytoken"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{
"status_message" : "onc peers of user Benutzer1 with id 119",
"data" : {
"peer" : {
"126" : {
"peerId" : "126",
"used_by_other_user" : null,
"active" : "1",
"peerName" : "Telefon1"
},
"139" : {
"peerId" : "139",
"peerName" : "Telefon2",
"active" : "1",
"used_by_other_user" : null
},
"131" : {
"peerId" : "131",
"peerName" : "Telefon3",
"active" : "0",
"used_by_other_user" : null
}
},
"fwd" : {
"91" : {
"fwdId" : "91",
"active" : "0",
"fwd_number" : "01731234567"
},
"92" : {
"fwdId" : "92",
"active" : "1",
"fwd_number" : "030123456"
}
},
"userName" : "Benutzer1",
"pk_userId" : "119"
},
"status" : 200
}
5.3.29 getringgroup
Diese Funktion gibt sämtliche Rufgruppen mit Rufgruppenobjekten zurück.
Der Anwahlmodus (ringgroupStrategy) besitzt folgende Parameter:
- ringall: gleichzeitig
- linear: aufbauend
- rotate: rotierend
Die Anwahlzeit (ringgroupTimeout) definiert die Zeit (in Sek.), wann der Anruf auf das nächste Rufgruppen Objekt springen soll (nur bei aufbauend oder rotierend).
Die Rufgruppenobjekte besitzen folgende Parameter:
- ringgroupObjectModuleId: ID des jeweiligen Moduls nach Art des Objektes (z.B. pk_peerId 1)
- ringgroupObjectModule: Art des Objektes (z.B. sippeer, iaxpeer, isdnpeer, callforwarding, onenumberuser)
- ringgroupObjectsOrder: Reihenfolge je nach Anwahlmodus
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getringgroup"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"All ringgroups",
"data":
{"1":
{"pk_ringgroupId":"1",
"ringgroupName":"Alle Telefone Buchhaltung",
"ringgroupStrategy":"ringall",
"ringgroupTimeout":"20",
"ringgroupObject":{
"48":
{"pk_ringgroupObjectId":"48",
"ringgroupObjectModuleId":"68",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0},
"49":
{"pk_ringgroupObjectId":"49",
"ringgroupObjectModuleId":"4",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"},
"51":
{"pk_ringgroupObjectId":"51",
"ringgroupObjectModuleId":"143",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"}
}}}
{"2":
{"pk_ringgroupId":"2",
"ringgroupName":"Alle Telefone Verkauf",
"ringgroupStrategy":"ringall",
"ringgroupTimeout":"20",
"ringgroupObject":{
"20":
{"pk_ringgroupObjectId":"20",
"ringgroupObjectModuleId":"68",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0},
"21":
{"pk_ringgroupObjectId":"21",
"ringgroupObjectModuleId":"4",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"},
"22":
{"pk_ringgroupObjectId":"22",
"ringgroupObjectModuleId":"143",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"}
}}}}
Einzelne Rufgruppen lassen sich mit der Angabe der pk_ringgroupId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getringgroup","pk_ringgroupId":8}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"peer pk_ringgroupId 8",
"data":
{
"pk_ringgroupId":"8",
"ringgroupName":"test3",
"ringgroupStrategy":"ringall",
"ringgroupTimeout":"20",
"ringgroupObject":
{
"58":
{"pk_ringgroupObjectId":"58",
"ringgroupObjectModuleId":"131",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"},
"59":
{"pk_ringgroupObjectId":"59",
"ringgroupObjectModuleId":"132",
"ringgroupObjectModule":"sippeer",
"ringgroupObjectsOrder":"0"}
}}}
5.3.30 gettrunk
Diese Funktion gibt sämtliche Leitungsnamen mit Id zurück.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"gettrunk"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":
"All trunks",
"data":
[{"pk_trunkId":"1",
"trunkName":"Trunk1"},
{"pk_trunkId":"2",
"trunkName":"Trunk2"}]}
Einzelne Leitungen lassen sich mit der Angabe der pk_trunkId aufrufen.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"gettrunk","pk_trunkId":1}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":
"trunk pk_trunkId 1",
"data":
{"pk_trunkId":"1",
"trunkName":"Trunk1"}}
5.3.31 getvoicemailoncuserbytoken
Mit dieser Funktion können die Anrufbeantwortereinstellungen für die persönliche Nebenstelle eines Benutzers aufgerufen werden. Es handelt sich um die selben Einstellungen, die über das Webinterface der Telefonanlage nach Login als eingeschränkter Benutzer im Menü Benutzer > Anrufbeantworter möglich sind. Die Authentifizierung erfolgt über den Token des Benutzers.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"getvoicemailoncuserbytoken"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{
"status" : 200,
"status_message" : "voicemails settings for user Benutzer with id 83",
"data" : {
"active" : "0",
"id" : "1",
"option_immediately_check" : "0",
"option_ringtime_check" : "0",
"option_ringtime_seconds" : "10",
"option_timerange_check" : "1",
"option_timerange_day_from" : "16",
"option_timerange_day_to" : "17",
"option_timerange_hour_from" : "17",
"option_timerange_hour_to" : "17",
"option_timerange_minutes_from" : "00",
"option_timerange_minutes_to" : "16",
"option_timerange_month_from" : "jul",
"option_timerange_month_to" : "jul",
"user" : "Benutzer"
}
}
Beschreibung der Felder:
- active – Anrufbeantworter aktivieren (1) / deaktivieren (0)
- option_immediately_check – Ist der Anrufbeantworter und diese Option aktiv, erreichen alle Anrufe den Anrufbeantworter (Werte: 0/1)
- option_ringtime_check – Ist der Anrufbeantworter und diese Option aktiv, erreichen Anrufe den AB, wenn die Nebenstelle spricht oder für die Länge der Rufzeit das Gespräch nicht annimmt (Werte: 0/1).
- option_ringtime_seconds – Länge der Rufzeit in Sekunden
- option_ringtime_check – Ist Anrufbeantworter und diese Option aktiv, erreichen Anrufe den AB, wenn die aktuelle Zeit dem nachfolgenden Zeitraum entspricht (Werte: 0/1)..
- option_timerange_hour_from – Stunde von (Werte 1-12)
- option_timerange_minutes_from – Minute von (Werte 00-59)
- option_timerange_hour_to – Stunde bis (Werte 1-12)
- option_timerange_minutes_to – Minute bis (Werte 00-59)
- option_timerange_day_from – Tag von (Werte 1-31)
-
option_timerange_month_from – Monat von
- jan: Januar
- feb: Februar
- mar: März
- apr: April
- may: Mai
- jun: Juni
- jul: Juli
- aug: August
- sep: September
- oct: Oktober
- nov: November
- dec: Dezember
-
option_timerange_day_to – Tag bis (Werte 1-31)
- option_timerange_month_to – Monat bis (Siehe Monat von)
5.3.32 reload
Mit dieser Funktion kann die Konfiguration der gesamten Telefonanlage oder einzelner Bereiche neu eingelesen werden.
Aufruf (gesamt):
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"reload"}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,"status_message":"all reloaded","data":null}
Aufruf (nur das SIP-Modul neuladen):
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"reload","module":"SIP"}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,"status_message":"SIP module reloaded","data":null}
5.3.33 reloadprovisioning
Mit dieser Funktion kann die Konfiguration der Nebenstellen, die an der ansitel Telefonanlage angemeldet und per Autokonfiguration verknüpft sind, anhand der pk_peerId neugeladen werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"reloadprovisioning","pk_peerId":1}'
https://192.168.1.17/awi/api/rest
Rückgabe:
{"status":200,"status_message":"configuration of peer Telefon1 with id 1 reloaded","data":null}
5.3.34 resetdialhistory
Mit dieser Funktion wird die Historie der Nebenstellen, die an der ansitel Telefonanlage angemeldet und per Autokonfiguration angebunden sind, anhand der Nebenstellennummer zurückgesetzt. Endgeräte, die diese Funktion nicht unterstützen, werden auf Werkseinstellungen zurückgesetzt.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"resetdialhistory","peernumber":"42"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"reset peernumber 42","data":null}
5.3.35 restartpeer
Mit dieser Funktion können Nebenstellen, die an der ansitel Telefonanlage angemeldet sind, anhand der pk_peerId neugestartet werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf","action":"restartpeer","pk_peerId":1}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,"status_message":"peer Telefon1 with id 1 restarted","data":null}
5.3.36 setcallfordwardingoncuserbytoken
Mit dieser Funktion können Weiterleitungen an persönlichen Nebenstellen von Benutzern gesetzt werden. Die persönliche Nebenstelle wird anhand des Benutzertokens identifiziert. Die Variable "destination" enthält die Zielrufnummer.
Ist die Variable "destination" leer oder "0" wird die Weiterleitung an dieser persönlichen Nebenstelle entfernt.
Aufruf Weiterleitung aktivieren/updaten:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingoncuserbytoken",
"destination":"03012345678"}' https://192.168.1.17/awi/api/rest
Rückgabe Weiterleitung aktivieren/updaten:
{"status":200,
"status_message":"callforwarding for onc user Benutzer2 with id 2 enabled\/updated",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"destination":"03012345678"}}
Aufruf Weiterleitung deaktivieren:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingoncuserbytoken",
"destination":"0"}'
https://192.168.1.17/awi/api/rest
Rückgabe Weiterleitung deaktivieren:
{"status":200,
"status_message":"callforwarding for onc user ansiteladmin with id 2 removed",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"destination":null}}
5.3.37 setcallfordwardingononcuser
Mit dieser Funktion können Weiterleitungen an persönlichen Nebenstellen von Benutzern gesetzt werden. Die persönliche Nebenstelle wird anhand der pk_userId des Benutzers identifiziert. Die Variable "destination" enthält die Zielrufnummer.
Ist die Variable "destination" leer oder "0" wird die Weiterleitung an dieser persönlichen Nebenstelle entfernt.
Aufruf Weiterleitung aktivieren/updaten:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingononcuser",
"pk_userId":2,
"destination":"03012345678"}' https://192.168.1.17/awi/api/rest
Rückgabe Weiterleitung aktivieren/updaten:
{"status":200,
"status_message":"callforwarding for onc user Benutzer2 with id 2 enabled\/updated",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"destination":"03012345678"}}
Aufruf Weiterleitung deaktivieren:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingononcuser",
"pk_userId":2,
"destination":"0"}'
https://192.168.1.17/awi/api/rest
Rückgabe Weiterleitung deaktivieren:
{"status":200,
"status_message":"callforwarding for onc user ansiteladmin with id 2 removed",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"destination":null}}
5.3.38 setcallfordwardingonpeer
Mit dieser Funktion können Weiterleitungen an Nebenstellen gesetzt werden. Die Nebenstelle wird anhand der pk_peerId identifiziert. Die Variable "destination" enthält die Zielrufnummer.
Ist die Variable "destination" leer oder "0" wird die Weiterleitung an dieser Nebenstelle entfernt.
Aufruf Weiterleitung aktivieren/updaten:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingonpeer",
"pk_peerId":3,
"destination":"017312345678"}'
https://192.168.1.20/awi/api/rest
Rückgabe Weiterleitung aktivieren/updaten:
{"status":200,
"status_message":"callforwarding for peer Telefon1 with id 3 enabled/updated",
"data":
{"pk_peerId":3,
"peerName":"Telefon1",
"destination":"017312345678"}
}
Aufruf Weiterleitung deaktivieren:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setcallfordwardingonpeer",
"pk_peerId":3,
"destination":"0"}'
https://192.168.1.20/awi/api/rest
Rückgabe Weiterleitung aktivieren/updaten:
{"status":200,
"status_message":"callforwarding for peer Telefon1 with id 3 removed",
"data":
{"pk_peerId":3,
"peerName":"Telefon1",
"destination":null}}
5.3.39 setdndoncuserbytoken
Mit dieser Funktion kann der Anrufschutz an persönlichen Nebenstellen von Benutzern gesetzt werden. Die Nebenstelle wird anhand des Benutzertokens identifiziert. Enthält die Variable "dnd" den Wert "1", wird der Anrufschutz für diese persönliche Nebenstelle gesetzt. Wert "0" entfernt den Anrufschutz für diese persönliche Nebenstelle.
Aufruf Anrufschutz setzen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndoncuserbytoken",
"dnd":"1"}'
https://192.168.1.17/awi/api/rest
Rückgabe Anrufschutz setzen:
{"status":200,
"status_message":"dnd for onc user Benutzer2 with id 2 enabled",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"dnd":"1"}
Aufruf Anrufschutz entfernen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndoncuserbytoken",
"dnd":"0"}' https://192.168.1.17/awi/api/rest
Rückgabe Anrufschutz entfernen:
{"status":200,
"status_message":"dnd for onc user Benutzer2 with id 2 removed",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"dnd":null}}
5.3.40 setdndononcuser
Mit dieser Funktion kann der Anrufschutz an persönlichen Nebenstellen von Benutzern gesetzt werden. Die Nebenstelle wird anhand der pk_userId identifiziert. Enthält die Variable "dnd" den Wert "1", wird der Anrufschutz für diese persönliche Nebenstelle gesetzt. Wert "0" entfernt den Anrufschutz für diese persönliche Nebenstelle.
Aufruf Anrufschutz setzen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndononcuser",
"pk_userId":2,
"dnd":"1"}'
https://192.168.1.17/awi/api/rest
Rückgabe Anrufschutz setzen:
{"status":200,
"status_message":"dnd for onc user Benutzer2 with id 2 enabled",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"dnd":"1"}
Aufruf Anrufschutz entfernen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndononcuser",
"pk_userId":2,
"dnd":"0"}' https://192.168.1.17/awi/api/rest
Rückgabe Anrufschutz entfernen:
{"status":200,
"status_message":"dnd for onc user Benutzer2 with id 2 removed",
"data":
{"pk_userId":2,
"userName":"Benutzer2",
"dnd":null}}
5.3.41 setdndonpeer
Mit dieser Funktion kann der Anrufschutz an Nebenstellen gesetzt werden. Die Nebenstelle wird anhand der pk_peerId identifiziert. Enthält die Variable "dnd" den Wert "1", wird der Anrufschutz für diese Nebenstelle gesetzt. Wert "0" entfernt den Anrufschutz für diese Nebenstelle.
Aufruf Anrufschutz setzen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndonpeer",
"pk_peerId":3,
"dnd":"1"}' https://192.168.1.20/awi/api/rest
Rückgabe Anrufschutz setzen:
{"status":200,
"status_message":"dnd for peer Telefon3 with id 3 enabled",
"data":
{"pk_peerId":3,
"peerName":"Telefon3",
"dnd":"1"}}
Aufruf Anrufschutz entfernen:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setdndonpeer",
"pk_peerId":3,
"dnd":"0"}'
https://192.168.1.17/awi/api/rest
Rückgabe Anrufschutz entfernen:
{"status":200,
"status_message":"dnd for peer Telefon3 with id 3 removed",
"data":
{"pk_peerId":3,
"peerName":"Telefon3",
"dnd":null}}
5.3.42 setpeersoncuserbytoken
Mit dieser Funktion können aktive Nebenstellen (peer) und Weiterleitungen (fwd) einer persönlichen Nebenstelle aktiviert/deaktiviert werden. Zum Aktivieren der Nebenstellen oder Weiterleitungen werden die jeweiligen Id benötigt. Diese können mit der Funktion "getpeersoncuserbytoken" abgefragt werden.
Alle zuvor aktivierten Nebenstellen und Weiterleitungen werden deaktiviert.
Die Identifizierung erfolgt per Benutzertoken.
Der "preset"-Parameter dient der Speicherung der Ursprungszuordnung für das Hotseating-System. Dieser kann in dem meisten Fällen mit dem Wert "1" belegt werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d",
"action":"setpeersoncuserbytoken",
"preset":"0/1",
"peer":
{"1":
{"peerId":"126",
"active":"1"},
"2":
{"peerId":"139",
"active":"1"}
},
"fwd":
{"1":
{"fwdId":"91",
"active":"1"},
"2":
{"fwdId":"92",
"active":"1"}
}
}' https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":200,
"status_message":"onc peers of user Benutzer1 with id 119 set",
"data":"1"}
5.3.43 setvoicemailoncuserbytoken
Mit dieser Funktion können die Anrufbeantwortereinstellungen für die persönliche Nebenstelle eines Benutzers in der Telefonanlage gesetzt werden. Es handelt sich um die selben Einstellungen, die über das Webinterface der Telefonanlage nach Login als eingeschränkter Benutzer im Menü Benutzer > Anrufbeantworter möglich sind. Die Authentifizierung erfolgt über den Token des Benutzers.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"a5c70c5f76e10daefb726991db2f61bf",
"action":"setvoicemailoncuserbytoken",
"active" : "0",
"option_timerange_hour_from" : "1",
"option_immediately_check" : "0",
"option_ringtime_seconds" : "5",
"option_timerange_day_from" : "1",
"option_timerange_month_to" : "jan",
"option_timerange_month_from" : "jan",
"option_timerange_day_to" : "1",
"option_timerange_minutes_to" : "00",
"option_ringtime_check" : "1",
"option_timerange_hour_to" : "0",
"option_timerange_check" : "0",
"option_timerange_minutes_from" : "12"
}'
https://192.168.1.20/awi/api/rest
Beschreibung der Felder:
- active – Anrufbeantworter aktivieren (1) / deaktivieren (0)
- option_immediately_check – Ist der Anrufbeantworter und diese Option aktiv, erreichen alle Anrufe den Anrufbeantworter (Werte: 0/1)
- option_ringtime_check – Ist der Anrufbeantworter und diese Option aktiv, erreichen Anrufe den AB, wenn die Nebenstelle spricht oder für die Länge der Rufzeit das Gespräch nicht annimmt (Werte: 0/1).
- option_ringtime_seconds – Länge der Rufzeit in Sekunden
- option_ringtime_check – Ist Anrufbeantworter und diese Option aktiv, erreichen Anrufe den AB, wenn die aktuelle Zeit dem nachfolgenden Zeitraum entspricht (Werte: 0/1)..
- option_timerange_hour_from – Stunde von (Werte 1-12)
- option_timerange_minutes_from – Minute von (Werte 00-59)
- option_timerange_hour_to – Stunde bis (Werte 1-12)
- option_timerange_minutes_to – Minute bis (Werte 00-59)
- option_timerange_day_from – Tag von (Werte 1-31)
-
option_timerange_month_from – Monat von
- jan: Januar
- feb: Februar
- mar: März
- apr: April
- may: Mai
- jun: Juni
- jul: Juli
- aug: August
- sep: September
- oct: Oktober
- nov: November
- dec: Dezember
-
option_timerange_day_to – Tag bis (Werte 1-31)
- option_timerange_month_to – Monat bis (Siehe Monat von)
Rückgabe:
{
"data" : "Benutzer",
"status_message" : "voicemails settings for user Benutzer with id 83 saved",
"status" : 200
}
5.3.44 writeconfig
Mit dieser Funktion sämtliche Änderungen in das System geschrieben werden.
Aufruf:
curl -k -H "Content-Type: application/json" -X POST -d
'{"token":"06bf088a0d9501cd53829fa086a9a32d","action":"writeconfig"}'
https://192.168.1.20/awi/api/rest
Rückgabe:
{"status":400,"status_message":"config is written","data":null}