diff --git a/lib/mozo/broadcaster/action_cable.rb b/lib/mozo/broadcaster/action_cable.rb index 2331490c..66bb43da 100644 --- a/lib/mozo/broadcaster/action_cable.rb +++ b/lib/mozo/broadcaster/action_cable.rb @@ -11,9 +11,9 @@ module Mozo # - Integrated with Rails authentication (cookies, sessions) # - WebSocket native (no long-polling fallback needed with modern browsers) # - # Channel naming is kept compatible with the existing Faye convention: - # /user/:uid → user_ - # /supplier/:sid → supplier_ + # Channel naming: accepts both Faye format and underscore format: + # /user/123 or /user_123 → user_123 + # /supplier/456 or /supplier_456 → supplier_456 # # To use: # Set Mozo.broadcaster = Mozo::Broadcaster::ActionCable.new @@ -21,8 +21,8 @@ module Mozo # class ActionCable CHANNEL_PREFIX_REMAP = { - %r{^/user/(.+)$} => 'user_\1', - %r{^/supplier/(.+)$} => 'supplier_\1' + %r{^/user[/_](.+)$} => 'user_\1', + %r{^/supplier[/_](.+)$} => 'supplier_\1' }.freeze def broadcast(message)