Ruby on rails heroku上的Actioncable有问题

Ruby on rails heroku上的Actioncable有问题,ruby-on-rails,ruby,heroku,ruby-on-rails-5,sidekiq,Ruby On Rails,Ruby,Heroku,Ruby On Rails 5,Sidekiq,您好首先一如既往地感谢您抽出时间阅读我的帖子 在heroku上使用actioncable/ApplicationJob的步骤是什么,因为它现在在本地运行,但在heroku上使用时,它不起作用,我希望能得到一些帮助 2017-02-02T20:14:30.+00:00 app[web.1]: [ActionCable] [test@gmail.com] Could not execute command from {"command"=>"message", "identifier"=&

您好首先一如既往地感谢您抽出时间阅读我的帖子

在heroku上使用actioncable/ApplicationJob的步骤是什么,因为它现在在本地运行,但在heroku上使用时,它不起作用,我希望能得到一些帮助

2017-02-02T20:14:30.+00:00 app[web.1]: [ActionCable] [test@gmail.com]   Could not execute command from {"command"=>"message", "identifier"=>"`{\"channel\":\"RoomChannel\"}", "data"=>"\"message:
 message\""}) [NoMethodError - undefined method 'except' for "message: message":String 2017-02-02T20:14:30.+00:00 app[web.1]: Did you mean? exec]:
 /app/vendor/bundle/ruby/2.3.0/gems/actioncable-5.0.0.1/lib/action_cable/channel/base.rb:266:in 'block in action_signature' 
/app/vendor/bundle/ruby/2.3.0/gems/actioncable-5.0.0.1/lib/action_cable/channel/base.rb:265:in 'tap' | /app/vendor/bundle/ruby/2.3.0/gems/actioncable-5.0.0.1/lib/action_cable/channel/base.rb:265:in 'action_signature' | /app/vendor/bundle/ruby/2.3.0/gems/actioncable-5.0.0.1/lib/action_cable/channel/base.rb:168:in 'perform_action' |
更新:我添加了sidekiq链接,并在我的Procfile中设置了worker worker:bundleexecsidekiq-c3-qdefault,运行scale命令启动它。重新启动日志中的heroku服务器,它说sidekiq处于活动状态,但我仍然收到此错误,我现在知道此错误是由于 活动工单未拾取的事实

更新2:我添加了一些console.logs来监控本地主机上的数据,我得到了所有连接、接收的数据,但在heroku上我没有,我试图传递数据,以便sidekiq能够捕捉到它,并且该部分似乎能够捕捉到它,因此得出结论,actioncable执行了\u action/bg/message部分 当被推到heroku时,它不起作用。我希望有人知道这个问题的答案,这将是非常棒的。如果你需要更多信息,请告诉我

我有一个message.rb模型,在那里我有一个perform_-later动作

after_create_commit { BroadcastMessageJob.perform_later self }
在广播消息中

class BroadcastMessageJob < ApplicationJob
queue_as :default

def perform(message)
  ActionCable.server.broadcast 'room_channel', render_message(message)
end

private
def render_message(message)
  ApplicationController.renderer.render message
 end
end
class BroadcastMessageJob
通过此设置,它可以在本地上工作,但在heroku上仍然不工作。 我错过了什么

先谢谢你