按照说明从WAS登陆页面进行WAS Slackbot集成错误

时间:2018-07-23 19:04:46

标签: bots ibm-watson slack watson-assistant-solutions

https://watson-personal-assistant.github.io/developer/further-topics/slackbot-integration/

我无法按照WAS Slack Bot集成中的步骤进行操作(上面的链接)。

  1. 我的松弛设置应该可以,因为我尝试使用相同的ID和API令牌成功连接到另一个程序。

  2. 我最初安装了Python 3.7,但根据文档建议降级到3.6.2

  3. “ python3 bot.py”的结果如下-带有异常堆栈

    Forests-MacBook-Pro:simple_WA_slackbot fmlin$ python3 bot.py
    Not On Bluemix...
    Environment Variables Loaded Successfully
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/slackclient/server.py", line 179, in connect_slack_websocket
        http_proxy_auth=proxy_auth)
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/websocket/_core.py", line 494, in create_connection
        websock.connect(url, **options)
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/websocket/_core.py", line 217, in connect
        options.pop('socket', None))
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/websocket/_http.py", line 126, in connect
        sock = _ssl_socket(sock, options.sslopt, hostname)
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/websocket/_http.py", line 253, in _ssl_socket
        sock = _wrap_sni_socket(sock, sslopt, hostname, check_hostname)
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/websocket/_http.py", line 232, in _wrap_sni_socket
        server_hostname=hostname,
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 401, in wrap_socket
        _context=self, _session=session)
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 808, in __init__
        self.do_handshake()
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 1061, in do_handshake
        self._sslobj.do_handshake()
      File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/ssl.py", line 683, in do_handshake
        self._sslobj.do_handshake()
    ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:748)
    

在处理上述异常期间,发生了另一个异常:

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/slackclient/client.py", line 52, in rtm_connect
    self.server.rtm_connect(use_rtm_start=with_team_state, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/slackclient/server.py", line 147, in rtm_connect
    self.connect_slack_websocket(self.ws_url)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/slackclient/server.py", line 186, in connect_slack_websocket
    raise SlackConnectionError(message=str(e))
slackclient.server.SlackConnectionError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:748)
Connection failed. Invalid Slack token or bot ID?
Forests-MacBook-Pro:simple_WA_slackbot fmlin$ 

2 个答案:

答案 0 :(得分:1)

尝试运行/Applications/Python 3.6.2/Install Certificates.command程序以安装验证SSL连接所需的根证书,因为您的Python安装的SSL证书验证失败。

vagrant guide

答案 1 :(得分:0)

确定使用正确的Bot ID?

您是否在.env文件中设置了用户环境变量BOT_ID?

您已按照说明正确地在松弛状态下创建了机器人 https://github.com/Watson-Personal-Assistant/simple_WA_slackbot

获取松弛密钥

Go to https://YOUR_SLACK.slack.com/apps/manage
In the Search App Directory field at the top, type Bots
Click on Bots
Click on the Add Configuration button
Give your bot a unique username (Save this info)
Save the API Token
You will use these variables when creating your .env file as instructed in the below steps