Nachrichten widerrufen

Ihr Kundenservicemitarbeiter kann eine Nachricht widerrufen, die gesendet, aber noch nicht zugestellt wurde. Es ist am besten, nicht zugestellte Nachrichten zu widerrufen, bevor sie ablaufen. Der Zeitpunkt hängt vom Anwendungsfall des Kundenservicemitarbeiters ab. So können Sie beispielsweise eine OTP-Nachricht nach zehn Minuten widerrufen, eine Werbenachricht aber an einem bestimmten Ablaufdatum. Damit Nachrichten rechtzeitig zugestellt werden, müssen Sie sie rechtzeitig widerrufen, damit Sie sie über eine alternative Route wie SMS senden können.

Es gibt zwei Möglichkeiten, eine Nachricht zu widerrufen:

  • Senden Sie einen Widerrufsantrag, um den Widerruf auszulösen. Wenn die RBM-Plattform eine Widerrufsanfrage erhält, gibt sie 200 OK zurück. Die Antwort 200 OK bestätigt nicht, ob die Nachricht widerrufen wurde. Wenn der Widerruf erfolgreich war, versucht die RBM-Plattform nicht mehr, die Nachricht zuzustellen. Sie wird aus der Warteschlange des Nutzers gelöscht.

  • Legen Sie ein Ablaufdatum für die Nachricht fest, damit sie zum entsprechenden Zeitpunkt automatisch widerrufen wird. Die RBM-Plattform benachrichtigt deinen Kundenservicemitarbeiter, wenn die Nachricht abgelaufen ist, und bestätigt, ob sie widerrufen wurde. Weitere Informationen finden Sie unter Servergenerierte Ereignisse.

In seltenen Fällen kann der Widerruf fehlschlagen. So kann Ihr Kundenservicemitarbeiter beispielsweise versuchen, eine Nachricht zu widerrufen, während sie gerade über die RBM-Plattform gesendet wird. Wenn die Widerrufung fehlschlägt, prüfen Sie, ob bei Ihrem Webhook ein DELIVERED-Ereignis vorliegt. Wenn die Nachricht nicht zugestellt wurde, können Sie einen neuen Widerrufsantrag senden und die Nachricht dann an einen alternativen Kanal wie SMS weiterleiten, um eine zeitnahe Zustellung zu ermöglichen.

Beispiel

Im folgenden Code wird eine Widerrufsanfrage gesendet. Informationen zur Formatierung und zu Werten finden Sie unter phones.agentMessages.delete.

cURL

curl -X DELETE "https://REGION-rcsbusinessmessaging.googleapis.com/v1/phones/PHONE_NUMBER/agentMessages/MESSAGE_ID?agentId=AGENT_ID" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/rcs-business-messaging" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY rcsbusinessmessaging`"

Node.js

// Reference to RBM API helper
const rbmApiHelper = require('@google/rcsbusinessmessaging');

// Stop the message associated with messageId from being delivered
rbmApiHelper.revokeMessage('+12223334444', messageId, function(err, response) {
   console.log(response);
});
Dieser Code ist ein Auszug aus einem Beispiel-RBM-Agenten.

Java

import com.google.rbm.RbmApiHelper;


try {
   // Create an instance of the RBM API helper
   RbmApiHelper rbmApiHelper = new RbmApiHelper();

   // Stop the message associated with messageId from being delivered
   rbmApiHelper.revokeMessage(messageId, "+12223334444");
} catch(Exception e) {
   e.printStackTrace();
}
Dieser Code ist ein Auszug aus einem Beispiel-RBM-Agenten.

Python

# Reference to RBM Python client helper and messaging object structure
from rcs_business_messaging import rbm_service

# Stop the message associated with message_id from being delivered
rbm_service.revoke('+12223334444', message_id)
Dieser Code ist ein Auszug aus einem Beispiel-RBM-Agenten.

C#

using RCSBusinessMessaging;


// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper(credentialsFileLocation,
                                                 projectId);

// Stop the message associated with messageId from being delivered
rbmApiHelper.RevokeMessage(messageId, "+12223334444");
Dieser Code ist ein Auszug aus einem Beispiel-RBM-Agenten.