Может ли чат-бот, который публикуется на нескольких страницах Facebook, знать, с каких страниц Facebook общается пользователь? - PullRequest
0 голосов
/ 09 мая 2019

Привет, у меня есть бот, созданный из Bot Framework V4 с использованием C #, который развернут в службе Azure Bot. Я планирую использовать бота с несколькими страницами Facebook. Как я могу проверить, с какой страницы Facebook пользователь общается? Спасибо!

1 Ответ

0 голосов
/ 10 мая 2019

Вы можете иметь одного бота и использовать его на нескольких страницах Facebook.Вам нужно будет хранить page_access_token для каждой страницы и ответные сообщения с правым page_access_token.

Вы можете сопоставить идентификаторы страниц с токеном доступа, связанным с каждым идентификатором страницы, и сохранить их в объекте:

const accessTokens = {
    myPageId1: 'myPageAccessToken1',
    myPageId2: 'myPageAccessToken2',
}

Когда вы получаете обратный вызов в webhook, вы получаете запись страницы и идентификатор страницы.Чтобы проверить, с какой страницы Facebook отправляются пользовательские чаты, вам необходимо получить идентификатор страницы.

app.post('/webhook', (req, res) => {  

  let body = req.body;

  // Checks this is an event from a page subscription
  if (body.object === 'page') {

    // Iterates over each entry - there may be multiple if batched
    body.entry.forEach(function(entry) {
       // Get the pageId
        const pageID = pageEntry.id;
        .....
        .....

Если вы хотите отправить сообщение на определенную страницу, вам нужно будет позвонить в Facebook.Отправьте API и передайте соответствующий page_access_token в ответном запросе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...