instance method perform_action

Ruby on Rails 7.1.6

Since v5.2.8.1

Available in: v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

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

data req
Source
# File actioncable/lib/action_cable/channel/base.rb, line 167
      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 167 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActionCable::Channel::Base

Type at least 2 characters to search.

↑↓ navigate · open · esc close