يمكن لموظّف الدعم إلغاء رسالة تم إرسالها ولكن لم يتم تسليمها بعد. من الأفضل إلغاء الرسائل غير المُسلَّمة قبل أن تصبح قديمة. يعتمد التوقيت على حالة استخدام موظّف الدعم. على سبيل المثال، يمكنك إلغاء رسالة رمز مميّز لمرة واحدة بعد عشر دقائق، ولكن يمكنك إلغاء رسالة ترويجية في تاريخ انتهاء صلاحية محدّد. لتسليم الرسائل في الوقت المناسب، احرص على إبطال صلاحية الرسائل في الوقت المناسب لإرسالها بمسار بديل مثل الرسائل القصيرة.
هناك طريقتان لإبطال رسالة:
أرسِل طلبًا لإبطال المحتوى لبدء عملية الإبطال. عندما تتلقّى منصة RBM طلبًا لإبطال الاعتماد، تعرض المنصة الرمز 200 OK. لا يؤكّد الردّ 200 OK عمّا إذا تم إبطال الرسالة أم لا. إذا تم إبطال الإذن بنجاح، تتوقف منصة RBM عن محاولة تسليم الرسالة، ويتم حذفها من قائمة انتظار المستخدم.
ضبط تاريخ انتهاء صلاحية الرسالة لإلغاء الرسالة تلقائيًا في الوقت المناسب تُعلم منصة RBM العميل عند انتهاء صلاحية الرسالة وتؤكّد عمّا إذا تم إبطالها بنجاح أم لا. اطّلِع على الأحداث التي ينشئها الخادم لمزيد من المعلومات.
قد يتعذّر إبطال الإذن في حالات نادرة. على سبيل المثال، قد يحاول موظّف الدعم
إلغاء رسالة عندما تكون منصة RCS في مرحلة إرسالها. إذا
تعذّر الإبطال، ابحث عن حدث DELIVERED
في رابط البيانات. إذا لم يتم تسليم الرسالة، يمكنك إرسال طلب إبطال جديد ثم توجيه الرسالة إلى قناة بديلة مثل الرسائل القصيرة لضمان تسليمها في الوقت المناسب.
مثال
تُرسِل التعليمة البرمجية التالية طلبًا لإبطال الترخيص. للاطّلاع على معلومات عن التنسيق والقيمة، يُرجى الاطّلاع على 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); });
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");