WebSockex start_link outside GenServer start_link fails in keepalive pattern

Yeah from what I can tell it looks like WebSockex is trying to do a callback on the module its start_link is called from, although when I look through the code on GitHub I don’t see it doing that, I am new to Elixir so I’m not so great at reading it yet though. (EDIT: it is not doing this.)

Mainly I was hoping someone on here could tell me if, categorically, calling start_link on a process thingy in a handle_info is not allowed or this is probably some kind of WebSockex problem. Now I am leaning toward WebSockex problem. The docs for WebSockex say it is implemented as a “special process.”

Basically I am trying to write wrapper code that asynchronously starts websocket connections and can just retry on a delay if the remote connection isn’t available yet, as a way to make my application more resilient, as it should continue to run even if it can’t establish a websocket connection yet. This thread and comment was the impetus: How to make a Supervisor **never** die? - #23 by brucepomeroy

WebSockex doesn’t seem amenable to this since I can’t start it outside start_link so I might have to just get better at Elixir and fork the project.