همه عوامل ایجاد شده از طریق RBM Management API به طور پیش فرض از یک وب هوک برای اعلان ها استفاده می کنند. این وب هوک در سطح شریک در کنسول توسعهدهنده ارتباطات تجاری پیکربندی شده است و برای همه نمایندگان موجود در حساب شریک شما اعمال میشود.
همچنین، میتوانید از API مدیریت RBM برای پیکربندی وبقلابهای سطح عامل استفاده کنید. اگر چندین عامل را با رفتار متمایز مدیریت کنید، ممکن است گزینه خوبی باشد.
قطعه کد موجود در این صفحه از نمونه های جاوا و نمونه های Node.js گرفته شده است.
یک ادغام وب هوک ایجاد کنید
برای افزودن یک ادغام عامل وب هوک، ابتدا URL را برای وب هوک خود تعریف کنید و یک نشانه اعتبار سنجی تعریف کنید. سپس webhook را پیکربندی کنید تا مراحل اعتبار سنجی را دنبال کند. پس از پیکربندی، متد createWebhookIntegration
با مقادیر URL و توکن فراخوانی کنید. اگر آن تماس با موفقیت انجام شد، میتوانید به تأیید و مدیریت پیامهای دریافتی ادامه دهید.
برای جزئیات بیشتر، به brands.agents.integrations
و brands.agents.integrations.create
مراجعه کنید.
Node.js
const businessCommunicationsApiHelper = require('@google/rbm-businesscommunications'); const privateKey = require('../../resources/businesscommunications-service-account-credentials.json'); businessCommunicationsApiHelper.initBusinessCommunucationsApi(privateKey); const url = 'https://myrbmserviceendpoint.somewhere.com/callback'; const token = '123456'; businessCommunicationsApiHelper .createWebhookIntegration(agent.name, url, token) .then((response) => { console.log(JSON.stringify(response.data, null, 2)); }).catch((err) => { console.log(err); } );
این کد شی وب هوک جدید را برمی گرداند:
{
"name": "brands/40bd963f-ff92-425c-b273-8f0892d2d017/agents/my_new_agent_hfaoplpu_agent/integrations/4efdb82f-fd6d-4ba4-8ea3-f2f4a60d1547",
"status": "ENABLED",
"agentWebhookIntegration": {
"webhookUri": "https://myrbmserviceendpoint.somewhere.com/callback"
}
}
ادغام های وب هوک یک نماینده را جستجو کنید
شما می توانید لیستی از تمام ادغام های وب هوک متعلق به یک عامل را بازیابی کنید. در عمل، یک عامل RBM تنها دارای یک وب هوک است. برای جزئیات بیشتر، به brands.agents.integrations.list
مراجعه کنید.
Node.js
const businessCommunicationsApiHelper = require('@google/rbm-businesscommunications'); const privateKey = require('../../resources/businesscommunications-service-account-credentials.json'); businessCommunicationsApiHelper.initBusinessCommunucationsApi(privateKey); businessCommunicationsApiHelper .listAgentIntegrations(agent.name) .then((response) => { console.log(JSON.stringify(response.data, null, 2)); datastore.saveJsonData('integrations', response.data); }).catch((err) => { console.log(err); });
این کد لیستی از ادغام های وب هوک عامل را برمی گرداند:
{
"integrations": [
{
"name": "brands/40bd963f-ff92-425c-b273-8f0892d2d017/agents/my_new_agent_hfaoplpu_agent/integrations/4efdb82f-fd6d-4ba4-8ea3-f2f4a60d1547",
"status": "ENABLED",
"agentWebhookIntegration": {
"webhookUri": "https://myrbmserviceendpoint.somewhere.com/callback"
}
}
]
}
جزئیات یک ادغام را جستجو کنید
اگر به یک ادغام اشاره داشته باشید، می توانید جزئیات ادغام را بازیابی کنید. برای جزئیات بیشتر، به brands.agents.integrations.get
مراجعه کنید.
Node.js
const businessCommunicationsApiHelper = require('@google/rbm-businesscommunications'); const privateKey = require('../../resources/businesscommunications-service-account-credentials.json'); businessCommunicationsApiHelper.initBusinessCommunucationsApi(privateKey); businessCommunicationsApiHelper .getAgentIntegration(integrations.integrations[0].name) .then((response) => { console.log(JSON.stringify(response.data, null, 2)); }).catch((err) => { console.log(err); });
این کد جزئیات یکپارچه سازی وب هوک را برمی گرداند:
{
"name": "brands/40bd963f-ff92-425c-b273-8f0892d2d017/agents/my_new_agent_hfaoplpu_agent/integrations/4efdb82f-fd6d-4ba4-8ea3-f2f4a60d1547",
"status": "ENABLED",
"agentWebhookIntegration": {
"webhookUri": "https://myrbmserviceendpoint.somewhere.com/callback"
}
}
حذف یک هوک
میتوانید یک وب هوک را از یک نماینده با استفاده از مرجع آن حذف کنید. برای جزئیات بیشتر، به brands.agents.integrations.delete
مراجعه کنید.
Node.js
const businessCommunicationsApiHelper = require('@google/rbm-businesscommunications'); const privateKey = require('../../resources/businesscommunications-service-account-credentials.json'); businessCommunicationsApiHelper.initBusinessCommunucationsApi(privateKey); businessCommunicationsApiHelper .deleteAgentIntegration(integrations.integrations[0].name) .then((response) => { console.log(JSON.stringify(response.data, null, 2)); }).catch((err) => { console.log(err); });
یک شی خالی برگردانده می شود:
{}