Как правильно настроить бота Viber на Python (Django)

Я абсолютный новичок в Viber bot, и я не могу заставить своего бота отправить приветственное (или любое другое) сообщение пользователю, даже если он подписан на мой аккаунт Viber bot. Я перепробовал все учебники, которые нашел в интернете, прочитал документацию Viber Bot Python и REST, некоторые учебники, которые нашел на github, например this и this и все варианты кода, которые приходили мне в голову - но я все равно не смог заставить его работать.

У меня есть домен сайта с SSL (Let's Encrypt), и все должно быть в порядке. Также, я использовал Postman для установки Webhook и получил статус 0 (ok), так что пользователи теперь могут подключаться к моему боту и писать ему сообщения. Вот что у меня есть на данный момент

views.py (django)

from viberbot import Api
from viberbot.api.bot_configuration import BotConfiguration
from viberbot.api.messages.text_message import TextMessage
from viberbot.api.messages.data_types.contact import Contact
from viberbot.api.viber_requests import ViberConversationStartedRequest
from viberbot.api.viber_requests import ViberFailedRequest
from viberbot.api.viber_requests import ViberMessageRequest
from viberbot.api.viber_requests import ViberSubscribedRequest
from viberbot.api.viber_requests import ViberUnsubscribedRequest
from django.views.decorators.csrf import csrf_exempt

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
handler = logging.StreamHandler()
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)

viber = Api(BotConfiguration(
    name='MyBotName',
    avatar='https://someavatar.com/avatar.jpg',
    auth_token='mytoken'
))

def hook(request):
    logger.debug("received request. post data: {0}".format(request.get_data()))

    viber_request = viber.parse_request(request.get_data())

    if isinstance(viber_request, ViberConversationStartedRequest) :
        viber.send_messages(viber_request.get_user().get_id(), [
            TextMessage(text="Welcome!")
        ])
    elif isinstance(viber_request, ViberSubscribedRequest):
        viber.send_messages(viber_request.get_user.id, [
            TextMessage(text="Thanks!")
        ])

    return Response(status=200)

Итак, пользователь, подписавшийся на рассылку, должен получить два сообщения, но я не получаю ни одного из них. Также, Viber показывает, что сообщения (отправленные пользователем боту) были доставлены (два ✓✓✓). Я проверял журнал моего сервера, но там нет ни одной строки из журнала Viber :-/ Я использую python 2.7 и Django 1.9.11

Кто-нибудь может мне сказать, что я упускаю?

Вернуться на верх