Mencabut pesan

Agen Anda dapat membatalkan pesan yang telah dikirim tetapi belum terkirim. Sebaiknya batalkan pesan yang belum terkirim sebelum pesan tersebut menjadi tidak valid. Waktunya bergantung pada kasus penggunaan agen Anda. Misalnya, Anda dapat mencabut pesan OTP setelah sepuluh menit, tetapi mencabut pesan promosi pada tanggal habis masa berlaku tertentu. Untuk pengiriman pesan tepat waktu, pastikan untuk mencabut pesan tepat waktu agar Anda dapat mengirimkannya melalui rute alternatif seperti SMS.

Ada dua cara untuk mencabut pesan:

  • Kirim permintaan pencabutan untuk memicu pencabutan. Respons 200 OK mengonfirmasi bahwa pesan telah dibatalkan dan dihapus dari antrean pengguna. Respons 404 Not Found berarti upaya pencabutan telah gagal karena pesan telah dikirim.

  • Menyetel masa berlaku pesan untuk mencabut pesan secara otomatis pada waktu yang tepat. Platform RBM memberi tahu agen Anda saat pesan telah berakhir dan mengonfirmasi apakah pesan berhasil dicabut atau tidak. Lihat Peristiwa yang dibuat server untuk mengetahui informasi selengkapnya.

Pencabutan akses dapat gagal dalam kasus yang jarang terjadi. Misalnya, agen Anda dapat mencoba mencabut pesan saat platform RBM sedang dalam proses mengirimkannya. Jika pencabutan gagal, periksa peristiwa DELIVERED di webhook Anda. Jika pesan belum terkirim, Anda dapat mengirim permintaan pencabutan baru, lalu mengarahkan pesan ke saluran alternatif seperti SMS agar terkirim tepat waktu.

Contoh

Kode berikut mengirim permintaan pencabutan. Untuk mengetahui informasi pemformatan dan nilai, lihat 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);
});
Kode ini adalah kutipan dari agen contoh RBM.

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();
}
Kode ini adalah kutipan dari agen contoh RBM.

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)
Kode ini adalah kutipan dari agen contoh RBM.

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");
Kode ini adalah kutipan dari agen contoh RBM.