【问题标题】:Rails Facebook Messenger BotRails Facebook Messenger 机器人
【发布时间】:2016-07-22 14:52:01
【问题描述】:

这是我的第一个问题,如果我做错了什么,请告诉我。我尝试使用“messenger-ruby”gem (https://github.com/netguru/messenger-ruby) 构建一个简单的 facebook messenger 机器人。我成功安装了 gem,但我想我真的不知道如何发送/接收消息。

详细来说,我按照自述文件中的所有步骤进行操作:

  1. 获取页面访问令牌
  2. 按照自述文件中的说明创建 messenger.rb
  3. 完全按照自述文件中的方式添加路由
  4. 按照自述文件创建 messenger_controller.rb
  5. 按照自述文件成功设置 webhook
  6. 访问/messenger/subscribe 订阅

到目前为止,这一切都奏效了,https://developers.facebook.com/apps/.../messenger 我在 Webooks 下看到一个绿色复选标记,在订阅页面下看到我的页面。

没有进行“Messenger 应用审核”。

现在的问题是:我尝试对每条传入消息发送标准回复。我将 #components 下自述文件中的代码放入 messenger_controller.rb:

# YOUR_APP/app/controllers/messenger_controller.rb
class MessengerController < Messenger::MessengerController
  def webhook
  #logic here
    if fb_params.first_entry.callback.message?
      Messenger::Client.send(
        Messenger::Request.new(
          Messenger::Elements::Text.new(text: 'some text'),
          fb_params.first_entry.sender_id
        )
      )
    end
    render nothing: true, status: 200
  end
end

但是当页面管理员之一向页面发送消息时,没有任何反应。我查看了日志,但没有看到我期望的 POST 请求。

当使用我的浏览器访问 https://.../messenger/webhook 时,我看到“无效的验证令牌”,并且在日志中显示以下内容:

Started GET "/messenger/webhook" for xxx.xxx.xxx.xxx at 2016-07-22 14:39:52 +0000
Cannot render console from xxx.xxx.xxx.xxx! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Processing by Messenger::MessengerController#validate as HTML
Completed 200 OK in 10ms (Views: 0.3ms | ActiveRecord: 0.0ms)

我想没关系,但我不确定。

我确定我可能犯了一个简单的错误,但我整天都在阅读文档并且找不到解决方案。我什至不确定问题是什么,因为我希望在日志中找到 POST 请求......

任何帮助将不胜感激。请告诉我如何改进我的问题。

【问题讨论】:

    标签: ruby-on-rails ruby facebook facebook-messenger


    【解决方案1】:

    写完我的问题后,我在摆弄https://developers.facebook.com/apps/。我意识到:

    1. 发送消息的用户只是页面管理员,而不是应用管理员。
    2. 我的应用未公开,我的页面未发布。

    我将用户添加为应用程序管理员,它工作正常。上面的代码和gem安装就ok了。

    由于这几乎花费了我一整天的时间,我希望这个答案也能对其他人有所帮助。对不起,如果我回答我自己的问题。

    【讨论】:

      猜你喜欢
      • 2017-01-28
      • 2016-08-20
      • 1970-01-01
      • 2018-05-18
      • 2016-09-22
      • 2016-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多