Send a JSON text frame. Called from the SDK on a background thread. Must not block for more than a few milliseconds — actual delivery is async.
if the connection is closed or the send fails.