Support unix connections with full access to all JSON-RPC APIs.
Internally these connections are treated as websocket connections,
however the underlying transport protocol is simplfied. Packets
are JSON encoded objects terminated with an ETX character.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Separate out code that applies to both standard websockets and the
future unix socket implementation.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Add basic support "agents", ie: unmanaged extensions. Connected
agents are granted a limited ability to emit websocket notifications
and process rpc requests from Moonraker.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>