REST-API zum Steuern von SMS-Sitzungen verwenden

SMS Gateway stellt eine REST-API bereit, die Sie in Ihren Contact-Center-Anwendungen verwenden können, damit Contact-Center-Mitarbeiter SMS-Sitzungen zwischen einem Kunden und dem SMS-Agenten einleiten können. Sie können die REST-API in die Anwendungen integrieren, indem Sie die zugehörigen cURL-Befehle verwenden. Zu Testzwecken können Sie auch direkt mit der REST-API über die zugehörige Swagger-Benutzerschnittstelle interagieren.

Informationen zur REST-API

Sie können SMS-Sitzungen über die REST-API steuern, indem Sie die verfügbaren Operationen ausführen, wie z. B. die Erstellung einer Sitzung oder einer Testkonfiguration. Die REST-API steuert SMS-Sitzungen, indem sie zwei Typen von JSON-Daten an SMS-Gateway übergibt:

Sie können jede Operation direkt über die Swagger-Benutzerschnittstelle der REST-API testen, oder Sie verwenden die cURL-Befehle für jede Operation in Ihrer Contact-Center-Anwendung.

Operationen, die Sie ausführen können

Sie können mit der REST-API die folgenden Operationen ausführen.

Wenn eine der Operationen nicht erfolgreich ist, überprüfen Sie die SMS Gateway-Protokolle, um Informationen darüber zu erhalten, was nicht ordnungsgemäß gelaufen ist.

Auf die Swagger-Benutzerschnittstelle der REST-API zugreifen

Nachdem Sie SMS Gateway bereitgestellt haben, können Sie auf die Swagger-Benutzerschnittstelle der REST-API über die folgenden URLs zugreifen:

Klicken Sie auf der resultierenden Seite mit den SMS Gateway-APIs auf List operations, um die für SMS-Sitzungen verfügbaren Operationen anzuzeigen.

Operation testen

  1. Klicken Sie in der Spalte Data type auf das Beispiel, um das Feld Value vorab zu füllen.
  2. Ändern Sie die JSON-Daten im Feld Value, z. b. indem Sie die Benutzer- und Tenanttelefonnummer eingeben. Wichtig: Die Tenanttelefonnummer muss exakt der in der SMS Gateway-Konfiguration angegebenen Tenanttelefonnummer entsprechen.
  3. Klicken Sie auf Try it out!, um die Operation auszuführen.
  4. Geben Sie den Benutzernamen und das Kennwort ein, wenn Sie dazu aufgefordert werden. Sie werden aufgefordert, sich zu authentifizieren, wenn Sie die Authentifizierung für die REST-API aktiviert haben.

Nachdem Sie versucht haben, die Operation auszuführen, werden in der Schnittstelle die folgenden Informationen angezeigt:

cURL-Befehle verwenden

Sie können REST-API-Operationen ausführen, indem Sie cURL-Befehle entweder in der Befehlszeile absetzen oder sie in einer Anwendung integrieren. Linux-basierte Systeme beinhalten in der Regel cURL, aber wenn Ihr Betriebssystem cURL nicht enthält, können Sie das Paket für Ihr Betriebssystem von der Seite curl.haxx.se herunterladen und installieren.

Befehle zum Senden von Anforderungen werden im folgenden Format angegeben:

curl -X <HTTP request> --header 'Content-Type: application/json' --header 'Accept: application/json' -d <JSON data>

Sie können auch die folgenden Optionen angeben. Ausführliche Informationen zu den einzelnen Optionen finden Sie in der Dokumentation zu curl.

Befehlsbeispiele

Die folgenden curl-Beispielbefehle veranschaulichen verschiedene Operationen, die Sie mit der REST-API ausführen können. Wenn Sie die Beispielbefehle ausführen, stellen Sie sicher, dass Sie die Werte für smsUserPhoneNumber und smsTenantPhoneNumber durch Ihre eigenen Werte ersetzen.

Wichtig: Die Tenanttelefonnummer muss exakt mit der in der SMS Gateway-Konfiguration angegebenen Tenanttelefonnummer übereinstimmen. Die Telefonnummer des Benutzers muss in einem mit den Anforderungen Ihres SMS-Providers übereinstimmenden Format angegeben werden. Zum Beispiel erfordern Twilio-Telefonnummern ein Pluszeichen (+), aber RestcommONE-Telefonnummern müssen ohne Pluszeichen (+) angegeben werden.

Sitzungen verwalten

Verwalten Sie Sitzungen mithilfe der folgenden Befehle.

Sitzung erstellen
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsUserPhoneNumber": "+18765554321", \
   "smsTenantPhoneNumber": "+12345556789", \
   "smsUserData": { "data": "Data"}, \
   "smsSessionTimeoutCount": 600 \
}' 'http://host:9080/sms.gateway/session'
Sitzung löschen
curl -X DELETE --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsUserPhoneNumber": "+18765554321", \
   "smsTenantPhoneNumber": "+12345556789" \
}' 'http://host:9080/sms.gateway/session'

Konfiguration testen

Testen Sie Ihre Konfiguration mithilfe der folgenden Befehle.

Konfiguration für SMS-Provider testen
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsTenantPhoneNumber": "+18765554321", \
   "smsUserPhoneNumber": "+12345556789" \
 }' 'http://host:9080/sms.gateway/testConfig/SMSProvider'
Konfiguration für Watson Assistant-Service testen
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsTenantPhoneNumber": "+18765554321", \
   "smsUserPhoneNumber": "+12345556789", \
   "smsUserData": { "data": "Data" }, \
   "smsSessionTimeoutCount": 600 \
}' 'http://host:9080/sms.gateway/testConfig/WCS'
Konfiguration für XSLD-Caching-Server testen
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsTenantPhoneNumber": "+18765554321" \
}' 'http://host:9080/sms.gateway/testConfig/XS'

SMS Gateway-Unterstützung für Voice Gateway-Befehlsbeispiele integrieren

Die folgenden curl-Beispielbefehle veranschaulichen die Befehle, die SMS Gateway verwendet, um Kunden beim Senden und Empfangen von SMS-Nachrichten an Voice Gateway während eines Anrufs zu unterstützen. Wenn Sie die Beispielbefehle ausführen, ersetzen Sie die Werte für smsUserPhoneNumber und smsTenantPhoneNumber durch Ihre eigenen Werte. Damit die Beispielbefehle erfolgreich eingesetzt werden können, müssen Sie zum Senden von Anforderungen auch die Angaben zu host und port in Ihrer SMS Gateway-Server-URL konfigurieren. Ihre SMS Gateway-Server-URL kann entweder mit http:// oder https:// beginnen, je nachdem, ob der sichere Port konfiguriert ist. Sie muss jedoch immer mit /sms.gateway/smsPipe enden.

Beschreibungen der Anforderungs- und Antwortvariablen finden Sie in der Swagger-Benutzerschnittstelle zur REST-API. Weitere Informationen finden Sie unter Auf die Swagger-Benutzerschnittstelle der REST-API zugreifen.

Wichtig: Die Tenanttelefonnummer muss exakt mit der in der SMS Gateway-Konfiguration angegebenen Tenanttelefonnummer übereinstimmen. Die Telefonnummer des Benutzers muss in einem mit den Anforderungen Ihres SMS-Providers übereinstimmenden Format angegeben werden. Zum Beispiel erfordern Twilio-Telefonnummern ein Pluszeichen (+), aber RestcommONE-Telefonnummern müssen ohne Pluszeichen (+) angegeben werden.

SMS-Pipe erstellen

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsUserPhoneNumber": "+18765554321", \
   "smsTenantPhoneNumber": "+12345556789", \
   "smsResponseURL": "https://vgwServer:port/smsRecv", \
   "smsToken": "tokenID",\
   "smsMediaURL": [ "https://media.com/media/l4JyRqcDU93S334KQ/first.gif", \
        "https://media.com/media/l4JyRqcDU93S334KQ/second.gif" ], \
   "smsMessage": "Hello this is a chat message sent from Voice Gateway.",\
   "smsOpaqueData": { "data": "Data"} ,\
   "smsPipeTimeoutCount": 1200 \
}' 'http://host:port/sms.gateway/smsPipe'

SMS- oder MMS-Nachricht mit der SMS-Pipe-ID senden

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsMessage": "Hello this is a chat message sent from Voice Gateway.",\
   "smsMediaURL": [ "https://media.com/media/l4JyRqcDU93S334KQ/first.gif", \
           "https://media.com/media/l4JyRqcDU93S334KQ/second.gif" ], \
   "smsOpaqueData": { "data": "Data"}
 }' 'http://host:port/sms.gateway/smsPipe/pipeID/KzE1MTAzMzAyNTgyOisxOTE5Njk5MjYwzJjZmNhZC1lMzc/sms'

SMS- oder MMS-Nachricht ohne SMS-Pipe-ID senden

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{ \
   "smsUserPhoneNumber": "+18765554321", \
   "smsTenantPhoneNumber": "+12345556789", \
   "smsMessage": "Hello this is a chat session starting from Voice Gateway."
 \
   "smsMediaURL": [ "https://media.com/media/l4JyRqcDU93S334KQ/first.gif", \
           "https://media.com/media/l4JyRqcDU93S334KQ/second.gif" ]
 }' 'http://host:port/sms.gateway/smsPipe/sms'

SMS-Pipe löschen

curl -X DELETE --header 'Content-Type: application/json' --header 'Accept: application/json' \
-d '{}' 'http://host:port/sms.gateway/smsPipe/pipeID/KzE1MTAzMzAyNTgyOisxOTE5Njk5MjYwzJjZmNhZC1lMzc'