Чат-чат: чат-бот не может отправлять сообщения на конечную точку реализации ботов https

Я разработал синхронную конечную точку HTTPS, которая отвечает на сообщения POST, и настроил URL-адрес как "URL-адрес бота" в разделе "Настройка бота чата для чата Hangouts". Он развернут на EC2 в amazon aws и добавил запись route53 для URL: https: // mychatbot-реализация, которая перенаправляет HTTPS-сообщения в мой ec2.

Тем не менее, чат-бот не публикует никаких сообщений в конечную точку https, и в нем нет зарегистрированных ошибок.

Ссылка на скриншот конфигурации чат-бота

Код реализации Chat Bot здесь:

from flask import Flask, request, json, render_template, make_response

app = Flask(__name__)

@app.route('/', methods=['POST'])

def on_event():
  event = request.get_json()
  resp = None


  if event['type'] == 'REMOVED_FROM_SPACE':
    logging.info('Bot removed from space...')
  if event['type'] == 'ADDED_TO_SPACE':
    text = 'Thanks for adding me to "%s"!' % event['space']['displayName']
  elif event['type'] == 'MESSAGE':
    text = 'You said: `%s`' % event['message']['text']
  else:
    return
  return json.jsonify({'text': text})


if __name__ == '__main__':
  app.run(port=8080, ssl_context='adhoc', debug=True, host='my host ip address')

Может кто-нибудь посоветовать, пожалуйста, о следующих шагах?

1 ответ

Решение

К несчастью, mychatbot-implementation не является действительным TLD в Интернете, поэтому Route53 никогда не сможет перенаправить ваш запрос (фактически он не получит его). У вас есть 2 проблемы (реализация ботов, доступность для пользователя), и вам нужно решать их отдельно (разделяй-н-завоевывать), а не пытаться решить все сразу.

Я советую протестировать реализацию своего бота, чтобы он работал на EC2 и получил доступный IP-адрес (w.x.y.z) к вашему экземпляру (плюс порт #) и измените вашу конфигурацию, чтобы указать на это, то есть https://w.x.y.z:8080/ и посмотрите, сможет ли служба чата Hangouts связаться с вашим ботом. После того, как все заработает и ваш бот будет отлажен, вы можете беспокоиться о получении TLD и регистрации в DNS.

Другие вопросы по тегам