|
18 | 18 | -type opts() :: [opt()]. |
19 | 19 |
|
20 | 20 | %% @doc Start the websocket client |
21 | | --spec start_link(URL :: string(), Handler :: module(), HandlerArgs :: list()) -> |
| 21 | +-spec start_link(URL :: string() | binary(), Handler :: module(), HandlerArgs :: list()) -> |
22 | 22 | {ok, pid()} | {error, term()}. |
23 | 23 | start_link(URL, Handler, HandlerArgs) -> |
24 | 24 | start_link(URL, Handler, HandlerArgs, []). |
25 | 25 |
|
26 | 26 | start_link(URL, Handler, HandlerArgs, AsyncStart) when is_boolean(AsyncStart) -> |
27 | 27 | start_link(URL, Handler, HandlerArgs, [{async_start, AsyncStart}]); |
| 28 | +start_link(URL, Handler, HandlerArgs, Opts) when is_binary(URL) -> |
| 29 | + start_link(erlang:binary_to_list(URL), Handler, HandlerArgs, Opts); |
28 | 30 | start_link(URL, Handler, HandlerArgs, Opts) when is_list(Opts) -> |
29 | 31 | case http_uri:parse(URL, [{scheme_defaults, [{ws,80},{wss,443}]}]) of |
30 | 32 | {ok, {Protocol, _, Host, Port, Path, Query}} -> |
|
0 commit comments