【发布时间】:2018-12-24 14:36:19
【问题描述】:
我正试图弄清楚如何从控制器触发频道广播。
示例
def create(conn, %{"message" => message_params}) do
with {:ok, %Message{} = message} <- Chat.create_message(message_params) do
conn
# TRIGGER CHANNEL BROADCAST "SHOUT" HERE
|> put_status(:created)
|> put_resp_header("location", message_path(conn, :show, message))
|> render("show.json", message: message)
end end
water_cooler 通道
defmodule NotificationWeb.WaterCoolerChannel do
use NotificationWeb, :channel
def join("water_cooler:lobby", _payload, socket) do
{:ok, socket}
end
def handle_in("shout", payload, socket) do
broadcast socket, "shout", payload
{:noreply, socket}
end
end
我尝试使用NotificationWeb.broadcast(topic, event, msg),但不知道该放什么
topic = "water_cooler" ?
事件 = ?
消息 = ?
【问题讨论】: