我有幾個Facebook頁面,我想在每個頁面上運行相同的bot。我正在使用bot框架,現在一切正常。我如何關聯多個頁面?如何使用bot框架在多個Facebook頁面上使用相同的bot
回答
每個頁面都需要自己的Facebook應用程序。一旦創建了應用程序,您可以將它們鏈接到相同的機器人,但是它們將使用不同的頁面令牌,以防您在代碼中驗證簽名,並且您可能希望爲其中的每一個使用不同的URL。
當您調用Facebook發送API時,通過參數access_token
傳遞頁面訪問令牌。您可以通過修改此訪問令牌來指定哪個頁面來引導您的消息。要知道哪個頁面啓動了該消息,您可以訪問消息文章條目的id
字段。
app.post('/webhook', (req, res) => {
const data = req.body
// Make sure this is a page subscription
if (data.object === 'page') {
// Iterate over each entry
data.entry.forEach((pageEntry) => {
// get the pageId
const pageId = pageEntry.id
...
這樣,你會需要保持一個對象映射頁面的ID與每個頁面ID相關聯的訪問令牌:
const accessTokens = {
myPageId1: 'myPageAccessToken1',
myPageId2: 'myPageAccessToken2',
}
然後發送響應時,只需指定相應的頁面的access_token
const callSendAPI = (pageId, messageData) =>
rp({
uri: 'https://graph.facebook.com/v2.8/me/messages',
qs: { access_token: accessTokens[pageId] },
method: 'POST',
body: messageData,
json: true,
})
這工作? –
@UriAbramson是的,讓我知道你是否對實施它有任何疑問 –
我會處理這個問題的方法是在不同的服務器上部署相同的Bot後端。由此,我將擁有相同的後端來源,但不同的webhook網址。這使得每個機器人雖然具有類似的功能,但可以分開進行隔離和維護。在構建Bot時,這是非常重要的設計考慮因素,因爲它可能會有很多對話。
要回答你的問題,是的,只需爲每個請求傳遞頁面令牌和驗證令牌,並在用戶與其他頁面進行交談時對其進行更改 - 但我不建議這樣做。
您可以將相同的應用程序訂閱到多個頁面。一旦Facebook應用程序訂閱,與該應用程序關聯的信使將與該頁面相關聯。
https://developers.facebook.com/docs/graph-api/reference/page/subscribed_apps/這個API是用來添加Facebook應用程序的頁面
- 1. 如何使用Bot框架和天藍色保存bot數據
- 2. Facebook Messenger Bot框架圖片
- 3. 在github頁面上託管Facebook Messenger bot
- 4. 如何在Bot框架上實現FAQ?
- 5. 在Bot框架中授權Facebook頁面時出現問題
- 6. 使用bot仿真器測試示例Bot框架(C#SDK)
- 7. 如何使用Node js跟蹤bot框架中的上下文
- 8. 使用AWS部署MS Bot框架
- 9. Microsoft bot框架中的多個表格
- 10. 如何使用bot框架獲取用戶的Facebook電子郵件?
- 11. Microsoft Bot框架 - 多個客戶
- 12. 如何使用Bing語音API運用BOT框架C#
- 13. C#BOT框架 - DeleteStateForUser在resumeafter
- 14. 微軟Bot框架上的Skype Bot - 沒有回覆
- 15. 顯示購買按鈕並使用Bot框架處理Facebook Messenger上的付款
- 16. 如何使用多個令牌(BOT用戶)使用Python-slackclient RTM
- 17. 在Microsoft bot框架中驗證用戶
- 18. 如何將Spark(使用Bot框架創建)與Spark集成?
- 19. Microsoft Bot框架對話框與多個用戶
- 20. 塊BOT使用。htaccess/0.1(BOT爲JCE)
- 21. 如何在用戶訪問您的Facebook頁面時觸發Facebook bot?
- 22. 使用相同類的頁面上的多個Jquery對話框
- 23. 一個MS BOT框架,用戶連接到有人在Skype上
- 24. 創建支持Microsoft Bot框架中的兩個LUIS應用程序的bot
- 25. 如何在Facebook頻道中爲Bot框架設置不同的語言?
- 26. 如何將Luis鉤入Bot框架FormDialog
- 27. System.Net.Http.HttpRequestException(微軟Bot框架)
- 28. Cortana與Bot框架集成
- 29. 單體與Bot框架
- 30. Bot框架名稱實體
我有一個批准的Facebook應用程序,我想用這個機器人的網頁我DONOT自己,我有一個網頁的ID和令牌數,但我我無法使用我的機器人。我該怎麼做? –
這是錯誤的,你可以在你想要的頁面上使用一個應用程序。你不需要爲每個頁面單獨的應用程序。 – luschn