Registers the user as online to receive inbound calls and events.
Waits for authentication to complete before sending the registration. If the initial attempt fails, reauthentication is attempted automatically.
After register() resolves, inbound calls addressed to this user surface
through session.incomingCalls$.
Call unregister to
stop receiving calls without disconnecting the client.
Promise<void>
If registration and reauthentication both fail.
session — exposes incomingCalls$.unregister — reverse this.isRegistered$ — reactive state.