03.11.2013 Aufrufe

Placetel API

Placetel API

Placetel API

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Placetel</strong> <strong>API</strong><br />

Programmierschnittstelle<br />

(Stand: Juni 2012)<br />

www.placetel.de - DIE TELEFONANLAGE AUS DER CLOUD


INHALTSÜBERSICHT<br />

1 Einleitung ............................................................................................................ 3 <br />

1.1 Rahmenbedingungen ......................................................................................................................................... 3 <br />

1.1.1 Technischen Informationen ................................................................................................................... 3 <br />

2 <strong>API</strong> Funktionen ................................................................................................... 4 <br />

2.1.1 Test ..................................................................................................................................................................... 4 <br />

2.1.2 getNumbers ................................................................................................................................................... 4 <br />

2.1.3 getVoIPUsers ............................................................................................................................................... 5 <br />

2.1.4 getPrompts .................................................................................................................................................... 6 <br />

2.1.5 getContacts ................................................................................................................................................... 6 <br />

2.1.6 getIncomingCallsByDay .......................................................................................................................... 7 <br />

2.1.7 getCDRsByDay ........................................................................................................................................... 8 <br />

2.1.8 getRoutingPlans ......................................................................................................................................... 9 <br />

2.1.9 getRouting ..................................................................................................................................................... 9 <br />

2.1.10 initiateCall ................................................................................................................................................... 11 <br />

2.1.11 setRouting_callForward ...................................................................................................................... 12 <br />

2.1.12 setRouting_RoutingPlan .................................................................................................................... 13 <br />

www.placetel.de Dokumentenname Seite 2


1 Einleitung<br />

Dieses Dokument beschreibt die Funktionen der <strong>Placetel</strong> <strong>API</strong>. Die <strong>API</strong> bietet Zugriff<br />

auf grundlegende <strong>Placetel</strong> Funktionen.<br />

1.1 Rahmenbedingungen<br />

Dieses Kapitel definiert die wichtigsten Rahmenbedingungen über den Zugriff auf die<br />

<strong>Placetel</strong> <strong>API</strong>.<br />

- Zugriff auf die <strong>API</strong> Funktionen erhalten Sie mit einem sog. <strong>API</strong> Key. Dieser<br />

Key wird Ihnen nach der Freischaltung der <strong>API</strong> per Mail zugesendet.<br />

- Die <strong>API</strong> erlaubt nur eine Anfrage alle 2 Sekunden. Jede zusätzliche Anfrage<br />

wird mit einer Fehlermeldung beantwortet. Bei höheren Anforderungen<br />

kontaktieren Sie den <strong>Placetel</strong> Service.<br />

- Zudem ist der Zugriff auf 100 Requests pro Tag beschränkt. Bei höheren<br />

Anforderungen kontaktieren Sie den <strong>Placetel</strong> Service.<br />

- Der Zugriff muss über HTTPS erfolgen.<br />

- Parameter werden nur per POST entgegengenommen.<br />

1.1.1 Technischen Informationen<br />

Zugriffswerte Erlaubte Werte Beschreibung<br />

<strong>API</strong> Endpunkt api.placetel.de URL zum Zugriff auf die <strong>API</strong><br />

Protokoll HTTPS Zugang zur <strong>API</strong> erfolgt über<br />

HTTPS<br />

Parameter POST Parameter werden nur über<br />

POST angenommen<br />

api_key<br />

Eigener kundenindividueller<br />

Schlüssel<br />

Der <strong>API</strong> Key wird von <strong>Placetel</strong><br />

zur Verfügung gestellt<br />

Sie versenden ein Kommando an die <strong>Placetel</strong> <strong>API</strong> per HTTPS und POST an den<br />

entsprechenden <strong>API</strong> Endpunkt.<br />

Die <strong>Placetel</strong> Antwort besteht aus einer HTML/XML/JSON Struktur mit den<br />

gewünschten Daten.<br />

Requestart Ergebnis Beschreibung<br />

https://api.placetel.de/test HTML Ergebnisse werden als HTML / Plain<br />

Text formatiert ausgegeben<br />

https://api.placetel.de/test.xml XML Ergebnisse werden als XML<br />

formatiert ausgegeben<br />

https://api.placetel.de/test.json JSON Ergebnisse werden als JSON<br />

ausgegeben<br />

www.placetel.de Dokumentenname Seite 3


2 <strong>API</strong> Funktionen<br />

2.1.1 Test<br />

Testet die Verbindung zur <strong>Placetel</strong> <strong>API</strong>. Der api_key wird hier geprüft.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/test<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/test.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

<br />

1<br />

success<br />

test login successful<br />

<br />

2.1.2 getNumbers<br />

Gibt eine Liste aller aktiven Rufnummern im betreffenden <strong>Placetel</strong> Benutzerkonto<br />

aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getNumbers<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

www.placetel.de Dokumentenname Seite 4


s.u.<br />

Werte siehe Beispiel<br />

„error“ steht für Fehler.<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getNumbers.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

<br />

022123434384<br />

23434384<br />

0221<br />

<br />

<br />

2.1.3 getVoIPUsers<br />

Gibt eine Liste aller VoIP Benutzer im betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getVoIPUsers<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

name z.B. Peter Test Name des VoIP Benutzers<br />

stype<br />

1 | 3 = Standard<br />

VoIP Benutzertyp<br />

2 = BLF<br />

7 = FAX<br />

8 = TRUNK<br />

Uid<br />

z.B.<br />

7772323232@sip.finotel.com<br />

SIP URI des Benutzers<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getVoIPUsers.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

Fax<br />

7<br />

772347324@sip.finotel.com<br />

<br />

<br />

<br />

www.placetel.de Dokumentenname Seite 5


2.1.4 getPrompts<br />

Gibt eine Liste aller Voice Prompts (Ansagen) im betreffenden <strong>Placetel</strong><br />

Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getPrompts<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

id z.B. 1,2,1102, ... Eindeutige ID der Ansage<br />

name z.B. Testansage Name der Ansage<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getPrompts.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

10613<br />

Ansage Test 12<br />

<br />

2.1.5 getContacts<br />

Gibt eine Liste aller Kontakte im betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getContacts<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

www.placetel.de Dokumentenname Seite 6


s.u.<br />

Werte siehe Beispiel<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getContacts.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

<br />

02212238238<br />

01712323823<br />

089348348<br />

01513448348<br />

<br />

Peter<br />

Tester<br />

<br />

2.1.6 getIncomingCallsByDay<br />

Gibt eine Liste aller eingegangenen Anrufe pro Tag für das betreffenden <strong>Placetel</strong><br />

Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getIncomingCallsByDay<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

year z.B. 2012 Wenn dieser Wert nicht gesetzt<br />

ist wird das aktuelle Jahr<br />

angenommen<br />

month 5 Wenn dieser Wert nicht gesetzt<br />

ist wird der aktuelle Monat<br />

angenommen<br />

day 2 Wenn dieser Wert nicht gesetzt<br />

ist wird der aktuelle Tag<br />

angenommen<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

callType 1 = Voicemail<br />

2 = Verpasster Anruf<br />

3 = Blockierter Anruf<br />

4 = Angenommener Anruf<br />

5 = Fax<br />

s.u.<br />

Werte siehe Beispiel<br />

www.placetel.de Dokumentenname Seite 7


Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getIncomingCallsByDay.xml -d api_key=xyz.... -d month=4 -d day=2<br />

Antwort:<br />

<br />

2<br />

<br />

022123823833<br />

2012-04-02T08:10:50Z<br />

022129191999<br />

<br />

2.1.7 getCDRsByDay<br />

Gibt eine Liste aller Anrufe des Einzelverbindungsnachweises pro Tag für das<br />

betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getCDRsByDay<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

year z.B. 2012 Wenn dieser Wert nicht gesetzt<br />

ist wird das aktuelle Jahr<br />

angenommen<br />

month 5 Wenn dieser Wert nicht gesetzt<br />

ist wird der aktuelle Monat<br />

angenommen<br />

day 2 Wenn dieser Wert nicht gesetzt<br />

ist wird der aktuelle Tag<br />

angenommen<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

s.u.<br />

Werte siehe Beispiel<br />

www.placetel.de Dokumentenname Seite 8


Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getCDRsByDay.xml -d api_key=xyz.... -d month=4 -d day=2<br />

Antwort:<br />

<br />

0.155<br />

placetel_profi / Germany Mobile - SIP Dialout <br />

77723234234<br />

4<br />

01517334734<br />

2012-04-02T08:40:25Z<br />

<br />

2.1.8 getRoutingPlans<br />

Gibt eine Liste aller Routingpläne für das betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getRoutingPlans<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

id z.B. 1,2,1012,... Eindeutige ID des Routingplans<br />

name z.B. Testplan Name des Routingplans<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getRoutingPlans.xml -d api_key=xyz....<br />

Antwort:<br />

<br />

1<br />

Testplan<br />

<br />

2.1.9 getRouting<br />

www.placetel.de Dokumentenname Seite 9


Gibt eine Liste der Routingeinstellungen für die betreffende <strong>Placetel</strong> Rufnummern<br />

aus.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/getRoutingPlans<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

number z.B. 0221123456 <strong>Placetel</strong> Rufnummer für die das<br />

Routing bestimmt werden soll<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

routing<br />

1 = Weiterleitung<br />

2 = Fax<br />

3 = Routingplan<br />

5 = IVR<br />

6 = Konferenz<br />

7 = T38 Fax<br />

8 = Warteschlange<br />

9 = Eigene Applikation<br />

10 = Gruppe<br />

routing-settings 1 = Direkte Weiterleitung<br />

3 = Weiterleitung auf Mailbox<br />

4 = Ansage abspielen und<br />

auflegen (forward-voiceprompt-id)<br />

5 = Ansage abspielen und<br />

weiterleiten (forward-voiceprompt-id)<br />

voice-prompt-id z.B. 1,2,... ID der Ansage (siehe<br />

getPrompts)<br />

forward-voice-<br />

z.B. 1,2,...<br />

ID der Ansage (siehe<br />

prompt-id<br />

target1 ... target5<br />

z.B.<br />

77723823@sip.finotel.com<br />

oder<br />

77723823@sip.finotel.com,0<br />

22123823@pstn, ...<br />

getPrompts)<br />

Eins oder mehrere Ziele für die<br />

Weiterleitung der Rufnummer<br />

Wenn mehrere Ziele parallel<br />

klingeln sind diese durch<br />

Komma getrennt. Ziele im<br />

Telefonnetz enden auf @pstn<br />

Klingelzeit pro Ziel<br />

ringing-time1 ... z.B. 5,10,20,....<br />

ringing-time5<br />

routing-plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />

Routingplan (siehe<br />

getRoutingplans)<br />

www.placetel.de Dokumentenname Seite 10


Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/getRouting.xml -d api_key=xyz.... -d number=0221123456<br />

Antwort:<br />

<br />

12<br />

40<br />

10<br />

120<br />

60<br />

60<br />

1<br />

2<br />

1<br />

77701223445@sip.finotel.com<br />

<br />

<br />

<br />

<br />

11<br />

<br />

2.1.10 initiateCall<br />

Löst einen Callback Anruf auf der gewünschten Sip Nebenstelle aus und verbindet<br />

den Anrufer dann mit der Zielrufnummer.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

/api/initiateCall<br />

api_key<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

sipuid<br />

z.B.<br />

777332423@sip.finotel.com<br />

SIP Nebenstelle die den Anruf<br />

initiieren will<br />

target z.B. 0221123456 Zielrufnummer die angerufen<br />

werden soll<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

Beispiel:<br />

Anfrage:<br />

curl https://api.placetel.de/api/initiateCall.xml -d api_key=xyz.... -d target=0221123456 -d<br />

sipuid=7723723723@sip.finotel.com<br />

www.placetel.de Dokumentenname Seite 11


2.1.11 setRouting_callForward<br />

Ändert das Callrouting für die gewünschte Rufnummer.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

/api/setRouting_callForward<br />

api_key<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

number z.B. 022123434 Rufnummer für die das Routing<br />

angepasst werden soll<br />

routing<br />

1 = Weiterleitung<br />

2 = Fax<br />

3 = Routingplan<br />

5 = IVR<br />

6 = Konferenz<br />

7 = T38 Fax<br />

8 = Warteschlange<br />

9 = Eigene Applikation<br />

10 = Gruppe<br />

routing_settings 1 = Direkte Weiterleitung<br />

3 = Weiterleitung auf Mailbox<br />

4 = Ansage abspielen und<br />

auflegen (forward-voiceprompt-id)<br />

5 = Ansage abspielen und<br />

weiterleiten (forward-voiceprompt-id)<br />

voice_prompt_id z.B. 1,2,... ID der Ansage (siehe<br />

getPrompts)<br />

forward_voiceprompt_id<br />

z.B. 1,2,...<br />

ID der Ansage (siehe<br />

getPrompts)<br />

target1 ... target5 z.B.<br />

77723823@sip.finotel.com<br />

oder<br />

77723823@sip.finotel.com,0<br />

22123823@pstn, ...<br />

Eins oder mehrere Ziele für die<br />

Weiterleitung der Rufnummer<br />

Wenn mehrere Ziele parallel<br />

klingeln sind diese durch<br />

Komma getrennt. Ziele im<br />

Telefonnetz enden auf @pstn<br />

ringing_time1 ... z.B. 5,10,20,....<br />

Klingelzeit pro Ziel<br />

ringing_time5<br />

routing_plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />

Routingplan (siehe<br />

getRoutingplans)<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

www.placetel.de Dokumentenname Seite 12


Beispiele:<br />

Anfrage:<br />

Anruf wird zuerst weitergeleitet auf 2 parallele Ziele mit einer Klingelzeit von 10 Sekunden und<br />

danach falls keine Verbindung zustande kommt an eine Mobilfunkrufnummer mit 20 Sekunden<br />

Klingelzeit.<br />

curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=1 -d<br />

routing_settings=1 –d target1=777238@sip.finotel.com,0221823@pstn -d ringing_time1=10 –d<br />

target2=0151343242@pstn -d ringing_time2=20 –d number=02212348348<br />

Mailbox mit der Ansage (ID=12) wird aktiviert<br />

curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=1 -d<br />

routing_settings=3 –d voice_prompt_id=12 & number=0232232323<br />

Umschaltung der Rufnummer auf den Routingplan mit der ID=26<br />

curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=3 -d<br />

routing_plan=26 & number=0232232323<br />

2.1.12 setRouting_RoutingPlan<br />

Ändert den Routingplan für die gewünschte Rufnummer.<br />

Parameter Erlaubte Werte Beschreibung<br />

URL<br />

api_key<br />

/api/setRouting_callForward<br />

Von <strong>Placetel</strong> zur Verfügung<br />

gestellter Zugriffsschlüssel<br />

number z.B. 022123434 Rufnummer für die das Routing<br />

angepasst werden soll<br />

routing_plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />

Routingplan (siehe<br />

getRoutingplans)<br />

Rückgabewerte Erlaubte Werte Beschreibung<br />

result -1 | 1 Eine „1“ steht für Ok.<br />

Eine „-1“ für einen Fehler<br />

result-code success| error „success“ steht für erfolgreich.<br />

„error“ steht für Fehler.<br />

www.placetel.de Dokumentenname Seite 13


Beispiele:<br />

Anfrage:<br />

Umschaltung der Rufnummer auf den Routingplan mit der ID=26<br />

curl https://api.placetel.de/api/setRouting_RoutingPlan.xml -d api_key=xyz.... -d routing_plan=26 &<br />

number=0232232323<br />

www.placetel.de Dokumentenname Seite 14


<strong>Placetel</strong>.de<br />

Die <strong>Placetel</strong>-Telefonanlage aus der Cloud gehört zum innovativen Produktportfolio der finocom<br />

AG. Die finocom AG zählt zu den führenden Unternehmen im Bereich sprachbasierter Cloud-<br />

Services für Geschäftskunden.<br />

finocom AG<br />

Gustav-Heinemann-Ufer 58<br />

50968 Köln<br />

E-Mail: info@placetel.de<br />

Tel.: 0221/29 19 1999<br />

www.placetel.de - DIE TELEFONANLAGE AUS DER CLOUD<br />

www.placetel.de Dokumentenname Seite 15<br />

www.0800.de

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!