[x] Extended Server#broadcast and Channel.broadcast_to methods to accept broadcast options as their third argument
[x] Added AnyCable::Rails.broadcasting_to_other { } method to set the option for the inner code block (in case broadcast is called indirectly, e.g., with Turbo Streams)
[x] Added Action Controller extension to set the current socket id from request headers
[x] Added Active Job extensions to carry current_socket_id to jobs
Is there anything you'd like reviewers to focus on?
What is the purpose of this pull request?
This feature brings the ability to deliver broadcast events to everyone except the current session.
Based on https://github.com/anycable/anycable/pull/218 and https://github.com/anycable/anycable-go/pull/194
What changes did you make? (overview)
Server#broadcast
andChannel.broadcast_to
methods to accept broadcast options as their third argumentAnyCable::Rails.broadcasting_to_other { }
method to set the option for the inner code block (in case broadcast is called indirectly, e.g., with Turbo Streams)current_socket_id
to jobsIs there anything you'd like reviewers to focus on?
Checklist