Hi guys,
i am currently working on a microservice architectured application, now, i am building our real time layer and i will be using phoenix. My question is how do i make phoenix subscribe to redis pubsub and broadcast the message coming from redis subscription?
defmodule PhoenixChat.UserSocket do
use Phoenix.Socket
## Channels
channel("room:*", PhoenixChat.RoomChannel)
## Transports
transport(:websocket, Phoenix.Transports.WebSocket)
def connect(%{"token" => token}, socket) do
signer = token
|> Joken.token
|> Joken.with_signer(Joken.hs256("shared-secret-key-for-all-services"))
case signer |> Joken.verify! do
{:ok, claims} ->
{:ok, assign(socket, :user, claims)}
{:error, _} ->
{:ok, assign(socket, :user_id, nil)}
end
end
def id(_socket), do: nil
end
If your question is related to Phoenix or Nerves, please post it in the Phoenix or Nerves Questions / Help section. Thanks!