diff --git a/Sources/Realtime/RealtimeChannel.swift b/Sources/Realtime/RealtimeChannel.swift index 6d2eceaa..ef40c386 100644 --- a/Sources/Realtime/RealtimeChannel.swift +++ b/Sources/Realtime/RealtimeChannel.swift @@ -349,6 +349,10 @@ public class RealtimeChannel { timeout: TimeInterval? = nil, callback: ((RealtimeSubscribeStates, Error?) -> Void)? = nil ) -> RealtimeChannel { + if socket?.isConnected == false { + socket?.connect() + } + guard !joinedOnce else { fatalError( "tried to join multiple times. 'join' "