mirror of
https://github.com/strukturag/nextcloud-spreed-signaling.git
synced 2023-10-21 07:33:40 -05:00
Unregister subscriber if "joinRoom" reconnect didn't work.
This will cause a new subscriber object to be created/connected if the client retries the request.
This commit is contained in:
@@ -1013,6 +1013,10 @@ retry:
|
|||||||
var roomId uint64
|
var roomId uint64
|
||||||
handle, roomId, err = p.mcu.getOrCreateSubscriberHandle(ctx, p.publisher, p.streamType)
|
handle, roomId, err = p.mcu.getOrCreateSubscriberHandle(ctx, p.publisher, p.streamType)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
// Reconnection didn't work, need to unregister/remove subscriber
|
||||||
|
// so a new object will be created if the request is retried.
|
||||||
|
p.mcu.unregisterClient(p)
|
||||||
|
p.listener.SubscriberClosed(p)
|
||||||
callback(fmt.Errorf("Already connected as subscriber for %s, error during re-joining: %s", p.streamType, err), nil)
|
callback(fmt.Errorf("Already connected as subscriber for %s, error during re-joining: %s", p.streamType, err), nil)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user