Closed Janix4000 closed 1 year ago
My Kino module uses:
use Kino.JS, assets_path: "lib/assets/player" use Kino.JS.Live
and "implements" handle_call function:
handle_call
@impl true def handle_call({:create, framerate}, from, ctx) do payload = %{framerate: framerate, from: from} broadcast_event(ctx, "create", payload) {:noreply, ctx} end
and replies in other callback:
def handle_event("jmuxer_ready", from, ctx) do GenServer.reply(from, {:ok, :player_created}) {:noreply, assign(ctx, jmuxer_ready: true)} end
However, I cannot return :noreply from the handle_call callback despite the documentation:
:noreply
[error] GenServer #PID<0.482.0> terminating ** (MatchError) no match of right hand side value: {:noreply, %Kino.JS.Live.Context{assigns: %{clients: ["suokrbya"], jmuxer_ready: false, type: :both}, origin: nil, __private__: %{client_ids_with_pid: %{"kea4nx2qfe3m2xeiaoxoagt5iwz5ahru" => #PID<11798.1126.0>}, monitors_with_client_id: %{#Reference<0.588131328.1499463684.243371> => "kea4nx2qfe3m2xeiaoxoagt5iwz5ahru"}, ref: "7zwxud775xferh3buuko4zchfjqzlrbd"}}} (kino 0.8.1) lib/kino/js/live/server.ex:50: Kino.JS.Live.Server.handle_call/3 (stdlib 4.2) gen_server.erl:1149: :gen_server.try_handle_call/4 (stdlib 4.2) gen_server.erl:1178: :gen_server.handle_msg/6 (stdlib 4.2) proc_lib.erl:240: :proc_lib.init_p_do_apply/3 Last message (from #PID<0.515.0>): {:create, 25.0}
I think it is due to these lines.
Is this considered a bug?
A PR is welcome!
Done #274
Closed in #274.
My Kino module uses:
and "implements"
handle_call
function:and replies in other callback:
However, I cannot return
:noreply
from thehandle_call
callback despite the documentation:I think it is due to these lines.
Is this considered a bug?