instance method
perform_action
Ruby on Rails 5.2.8.1
Since v5.2.8.1Signature
perform_action(data)
Extract the action name from the passed data and process it via the channel. The process will ensure that the action requested is a public method on the channel declared by the user (so not one of the callbacks like #subscribed).
Parameters
-
datareq
Source
# File actioncable/lib/action_cable/channel/base.rb, line 162
def perform_action(data)
action = extract_action(data)
if processable_action?(action)
payload = { channel_class: self.class.name, action: action, data: data }
ActiveSupport::Notifications.instrument("perform_action.action_cable", payload) do
dispatch_action(action, data)
end
else
logger.error "Unable to process #{action_signature(action, data)}"
end
end
Defined in actioncable/lib/action_cable/channel/base.rb line 162
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionCable::Channel::Base