it-swarm.com.ru

API-интерфейс бота Facebook: "Набрав пузырь", "индикатор пузыря"

Я создал бота-мессенджера, и некоторые действия, которые я выполняю, могут занять некоторое время. Поэтому, чтобы заставить пользователя ждать, я бы хотел отобразить «индикаторный пузырь» (тот, который вы видите, когда люди, с которыми вы разговариваете, набирают текст):

Печатать пузырь

 Enter image description here

В документации Messenger API не определено, как это сделать, но кажется возможным, если они выполнят это, когда вы нажмете «callBack» на их карточке.

Как я могу симулировать это?

16
Henri Chabrand

Теперь он доступен в API бота мессенджера через действие отправителя. Вы можете найти документацию здесь .

Это просто сообщение с включенным или выключенным значением для отображения/скрытия пузырькового индикатора.

{
    "recipient":{
          "id":"USER_ID"
    },
    "sender_action":"typing_on" // typing_off
}
17
Spope

Я знаю, что это хак, но в настоящее время я отправляю «Индикатор набора текста» в виде анимированного GIF в качестве первого ответа, если я ожидаю время ожидания (например, вызов API). На стороне пользователя, вы не можете увидеть разницу.

0
bal simpson

Официальный мессенджер API пока не поддерживает эту функцию. Даже если @hiponcho - одна из функций чат-бота Facebook фактически использует его.

Обходным путем может быть использование неофициального API мессенджера, который имеет метод sendTypingIndicator , который делает именно то, что вы хотите. Но будьте осторожны, вас могут забанить за использование неофициального API.

api.sendTypingIndicator(threadID, [callback])

0
Valia

Да, это единственный способ. 

Когда у вас есть шаблон кнопки, и кто-то нажимает кнопку «для отправки» ( документация в разделе «шаблон кнопки»).

Затем во время анализа сообщения и отправки ответа оно отображается как «запись».

0
fritak