Skip to content

Commit d9b55bb

Browse files
authored
Merge pull request #15 from refriedchicken/master
update deffered handling to be better
2 parents d406726 + d0bdda6 commit d9b55bb

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

lib/page_session.ex

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ defmodule ChromeRemoteInterface.PageSession do
126126
end
127127

128128
def handle_cast({:cast_command, method, params, from}, state) do
129-
send_rpc_request(state, method, params)
129+
send(self(), {:send_rpc_request, state.ref_id, state.socket, method, params})
130130

131131
new_state =
132132
state
@@ -137,7 +137,7 @@ defmodule ChromeRemoteInterface.PageSession do
137137
end
138138

139139
def handle_call({:call_command, method, params}, from, state) do
140-
send_rpc_request(state, method, params)
140+
send(self(), {:send_rpc_request, state.ref_id, state.socket, method, params})
141141

142142
new_state =
143143
state
@@ -216,15 +216,16 @@ defmodule ChromeRemoteInterface.PageSession do
216216
{:noreply, %{state | callbacks: callbacks}}
217217
end
218218

219-
defp send_rpc_request(state, method, params) do
219+
def handle_info({:send_rpc_request, ref_id, socket, method, params}, state) do
220220
message = %{
221-
"id" => state.ref_id,
221+
"id" => ref_id,
222222
"method" => method,
223223
"params" => params
224224
}
225225

226226
json = Poison.encode!(message)
227-
WebSockex.send_frame(state.socket, {:text, json})
227+
WebSockex.send_frame(socket, {:text, json})
228+
{:noreply, state}
228229
end
229230

230231
defp add_callback(state, from) do

0 commit comments

Comments
 (0)