10 ソケット - ohr486/elixir_handson_demo2 GitHub Wiki

10-ソケット

Phoenixでは、WebSocket関連のコードは、lib/demo_web/channels/user_socket.exに記述します。 チャネルとの接続に関しては、user_socket.ex内で、

channel <トピックのパターン>, <チャネルを処理するモジュール>

と記述する事で、特定のトピックに接続した場合の処理をどのモジュールで定義するのか指定できます。 今回作成するチャットでは、chat:lobbyというトピックと通信するチャネルを使って作成するものとします。 また、その時のチャネルの処理はDemoWeb.ChatChannelというモジュールに記述するものとします。

これらの設定を指定すると、channelの設定は、

channel "chat:lobby", DemoWeb.ChatChannel

という宣言となります。これをuser_socket.exに追加してください。

最終的なuser_socket.exこの様になります。

それでは、チャネルの処理を実装していきましょう。

NEXT:11-チャネル

⚠️ **GitHub.com Fallback** ⚠️