Не работает приветственное сообщение для нового пользователя в Viber Bot 'conversation_started'

Я пытаюсь отправить приветственное сообщение новому неподписанному пользователю, но это не работает. Пожалуйста, помогите, как решить эту проблему? Этот код не работает:

elseif($input['event'] == 'conversation_started') {
//    "tracking_data" = "tracking data",
    $data['tracking_data'] = $tracking_data;
    $message['type'] = "text";
    $message['text'] = 'Text to new user';
    $message['keyboard'] = [
        "Type" => "keyboard",
        "DefaultHeight" => true,
        "Buttons" => [[
            "ActionType" => "reply",
            "ActionBody" => "main_menu",
            "Text" => "Main menu",
            "TextSize" => "regular"
        ]]
    ];
}

person Vladimir Pokrasenko    schedule 26.05.2021    source источник


Ответы (1)


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

Подход к вашей проблеме:

  1. Создайте файл JSON для хранения профилей пользователей.
  2. Вы должны проверить внутри onConversationStarted(), подписан ли userProfile.
  3. Если да, используйте bot.sendMessage(), чтобы отправить приветственное сообщение.

Пожалуйста, проверьте, как работает API документации Viber!

person George Gotsidis    schedule 25.06.2021