Railsドキュメント

アクションケーブル(Action Cable)

WebSocket通信を実現するためのフレームワーク

アクションケーブル(Action Cable)とは

WebSocket通信を実現するためのフレームワーク

class ChatChannel < ApplicationCable::Channel
    def subscribed
        @room = Chat::Room[params[:room_number]]
    end
    def speak(data)
        @room.speak data, user: current_user
    end
end

アクションケーブルの生成

説明

アクションケーブル(Action Cable)の生成

使い方

new(コネクション, 識別子, パラメータ={})

ソースコード

action-cable-urlのメタタグを生成

説明

action-cable-urlのメタタグを生成

使い方

action_cable_meta_tag()

<head>
    <%= action_cable_meta_tag %>
    <%= javascript_include_tag 'application', 'data-turbo-track' => 'reload' %>
</head>

ソースコード

ブロードキャスト

説明

ブロードキャスト

使い方

broadcast_to(モデル, メッセージ)

ソースコード

ブロードキャスト

説明

ブロードキャスト

使い方

broadcasting_for(モデル)

CommentsChannel.broadcasting_for("all")

ソースコード

ケーブル接続を切断したときに呼び出される

説明

ケーブル接続を切断したときに呼び出される

使い方

unsubscribed()

ソースコード

データのハッシュをサブスクライバに送信

説明

データのハッシュをサブスクライバに送信

使い方

transmit(データ, 識別子)

ソースコード

サブスクリプションが拒否されたか

説明

サブスクリプションが拒否されたか

使い方

subscription_rejected?()

ソースコード

購読確認書の送付

説明

購読確認書の送付

使い方

subscription_confirmation_sent?()

ソースコード

コンシューマーがチャンネルのサブスクライバーになると呼び出される

説明

コンシューマーがチャンネルのサブスクライバーになると呼び出される

使い方

subscribed()

ソースコード

リジェクト

説明

リジェクト

使い方

reject()

ソースコード

確認書の送付

説明

確認書の送付

使い方

ensure_confirmation_sent()

ソースコード

サブスクリプション確認の延期

説明

サブスクリプション確認の延期

使い方

defer_subscription_confirmation?()

ソースコード

サブスクリプション確認の延期

説明

サブスクリプション確認の延期

使い方

defer_subscription_confirmation!()

ソースコード

接続にサブスクリプションが追加された後に呼び出されサブスクリプションを確認または拒否

説明

接続にサブスクリプションが追加された後に呼び出されサブスクリプションを確認または拒否

使い方

subscribe_to_channel()

ソースコード

渡されたデータからアクション名を抽出しチャネル経由で処理

説明

渡されたデータからアクション名を抽出しチャネル経由で処理

使い方

perform_action(データ)

ソースコード

action_methodsを実行したときに再計算

説明

action_methodsを実行したときに再計算

使い方

clear_action_methods!()

ソースコード

新しいaction_methodが追加されるとキャッシュをリフレッシュ

説明

新しいaction_methodが追加されるとキャッシュをリフレッシュ

使い方

method_added(名前)

ソースコード

アクションメソッド名のリスト

説明

アクションメソッド名のリスト

使い方

action_methods()

action_methods()

ソースコード