Current section
Files
Jump to
Current section
Files
src/shimmer@internal@network@gun.erl
-module(shimmer@internal@network@gun).
-compile(no_auto_import).
-export([open/2, open_erl/2, await_up/1, ws_upgrade/3, ws_send/2]).
-export_type([stream_reference/0, connection_pid/0, frame/0, ok_atom/0]).
-type stream_reference() :: any().
-type connection_pid() :: any().
-type frame() :: close | {text, binary()} | {binary, bitstring()}.
-type ok_atom() :: any().
-spec open(binary(), integer()) -> {ok, connection_pid()} |
{error, gleam@dynamic:dynamic()}.
open(Host, Port) ->
shimmer_net:ws_open(unicode:characters_to_list(Host), Port).
-spec open_erl(gleam@erlang@charlist:charlist(), integer()) -> {ok,
connection_pid()} |
{error, gleam@dynamic:dynamic()}.
open_erl(Field@0, Field@1) ->
shimmer_net:ws_open(Field@0, Field@1).
-spec await_up(connection_pid()) -> {ok, gleam@dynamic:dynamic()} |
{error, gleam@dynamic:dynamic()}.
await_up(Field@0) ->
gun:await_up(Field@0).
-spec ws_upgrade(connection_pid(), binary(), list({binary(), binary()})) -> stream_reference().
ws_upgrade(Field@0, Field@1, Field@2) ->
gun:ws_upgrade(Field@0, Field@1, Field@2).
-spec ws_send(connection_pid(), frame()) -> nil.
ws_send(Pid, Frame) ->
gun:ws_send(Pid, Frame),
nil.