Connection Lifecycle (State Machine)
Connect, drop and reconnect behaviour.
Make it your own.
title "Connection lifecycle"
state Disconnected
state Connecting
state Connected
state Reconnecting
initial Disconnected
transition Disconnected -> Connecting on "connect"
transition Connecting -> Connected on "established"
transition Connecting -> Disconnected on "fail"
transition Connected -> Reconnecting on "drop"
transition Reconnecting -> Connected on "restored"
transition Reconnecting -> Disconnected on "give_up"