Temsilciniz, gönderilmiş ancak henüz teslim edilmemiş bir mesajı iptal edebilir. Teslim edilmeyen mesajları eski hale gelmeden önce iptal etmeniz önerilir. Zamanlama, temsilcinizin kullanım alanına bağlıdır. Örneğin, bir OTP mesajını on dakika sonra iptal edebilirken bir promosyon mesajını belirli bir geçerlilik bitiş tarihinde iptal edebilirsiniz. İletilerin zamanında teslim edilmesi için, SMS gibi alternatif bir rota üzerinden gönderebilmeniz amacıyla iletileri zamanında iptal ettiğinizden emin olun.
İletileri geri almanın iki yolu vardır:
İptal işlemini tetiklemek için iptal isteği gönderin. 200 OK yanıtı, mesajın iptal edildiğini ve kullanıcının sırasından silindiğini onaylar. 404 Bulunamadı yanıtı, ileti teslim edildiği için iptal etme girişiminin başarısız olduğu anlamına gelir.
İletiyi uygun zamanda otomatik olarak iptal etmek için ileti geçerlilik bitiş tarihi belirleyin. RBM platformu, mesajın süresi dolduğunda temsilcinizi bilgilendirir ve mesajın başarıyla iptal edilip edilmediğini onaylar. Daha fazla bilgi için Sunucu tarafından oluşturulan etkinlikler başlıklı makaleyi inceleyin.
Nadir durumlarda iptal işlemi başarısız olabilir. Örneğin, aracınız RBM platformu iletiyi teslim etme sürecindeyken iletiyi iptal etmeye çalışabilir. İptal işlemi başarısız olursa webhook'unuzda DELIVERED
etkinliği olup olmadığını kontrol edin. İleti teslim edilmediyse yeni bir iptal isteği gönderebilir ve ardından iletiyi zamanında teslimat için SMS gibi alternatif bir kanala yönlendirebilirsiniz.
Örnek
Aşağıdaki kod, iptal isteği gönderir. Biçimlendirme ve değer bilgileri için phones.agentMessages.delete
konusuna bakın.
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); });
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(); }
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)
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");