Deployment and lifecycle management for Nix
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

client: can be pinged from server

+17
+6
client-elixir/lib/sower_client/worker.ex
··· 79 79 Logger.debug(msg: "Joined channel topic", topic: topic) 80 80 {:ok, socket} 81 81 end 82 + 83 + @impl Slipstream 84 + def handle_message(topic, "ping", %{"ref" => ref}, socket) do 85 + {:ok, _ref} = push(socket, topic, "pong", %{ref: ref}) 86 + {:noreply, socket} 87 + end 82 88 end
+11
lib/sower_web/client_channel.ex
··· 27 27 {:reply, {:ok, :pong}, socket} 28 28 end 29 29 30 + def handle_in("pong", %{"ref" => _ref}, %{assigns: %{sid: _sid}} = socket) do 31 + {:reply, :ok, socket} 32 + end 33 + 34 + def handle_info(:ping, %Phoenix.Socket{assigns: %{sid: sid}} = socket) do 35 + ref = Sower.Schema.Sid.generate() 36 + Logger.debug(msg: "Sending ping", sid: sid, ref: ref) 37 + push(socket, "ping", %{ref: ref}) 38 + {:noreply, socket} 39 + end 40 + 30 41 # def handle_in( 31 42 # "seed:submit", 32 43 # %{