几个月前,我使用Facebook Messenger Gem构建了一个Facebook Messenger机器人,用于一个即将上线的项目,并且在更新聊天机器人时,我遇到了从未发生的权限错误,这是一个自接触代码以来的几个月。也许是Facebook的SDK或Gem的更新?不确定,但是请看看,如果您知道潜在的解决方案,请告诉我。
我已经使用此create messenger bot with rails tutorial启动了一个全新的机器人,只是为了查看它是否与我的代码或env变量有关,但可以肯定的是,即使在全新项目中,它也会产生相同的错误。
因此,每次我尝试运行Rails服务器或与此相关的任何rails命令时,都会产生此错误或有关活动访问令牌的错误。我什至已经测试过对令牌进行硬编码,以查看读取env变量是否存在问题,但仍然产生权限错误。
/Users/elijohnston/.rvm/gems/ruby-2.5.1/gems/facebook-messenger-1.1.1/lib/facebook/messenger/subscriptions.rb:73:in 'raise_errors': (#100) No enough permission to subscribe one or more of fields you specified (Facebook::Messenger::Subscriptions::Error)
当我在app/bot/listen.rb
中注释掉我的机器人代码时,便可以启动rails服务器,但是一旦我尝试向Messenger上的机器人发布消息(/POST
)时,我也会收到类似的消息在我的终端服务器日志中。
Started GET "/bot?hub.mode=subscribe&hub.challenge=1798107466&hub.verify_token=anythingiwant" for 2a03:2880:11ff:d::face:b00c at 2018-09-23 09:05:23 +0800
Cannot render console from 2a03:2880:11ff:d::face:b00c! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Started POST "/bot" for 2a03:2880:40ff:3::face:b00c at 2018-09-23 09:10:12 +0800
Cannot render console from 2a03:2880:40ff:3::face:b00c! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Facebook::Messenger::Subscriptions::Error ((#100) No enough permission to subscribe one or more of fields you specified):
app/bot/listen.rb:4:in `<main>'
config/initializers/facebook_messenger.rb:5:in `block (2 levels) in <main>'
config/initializers/facebook_messenger.rb:5:in `each'
config/initializers/facebook_messenger.rb:5:in `block in <main>'
config/initializers/facebook_messenger.rb:9:in `block in <main>'
Started POST "/bot" for 2a03:2880:40ff::face:b00c at 2018-09-23 09:10:26 +0800
Cannot render console from 2a03:2880:40ff::face:b00c! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
Ignoring message (no hook registered)
这个问题是一个月前开始的,但是在此之前没有出现任何问题。任何帮助将不胜感激!