TsgcWSPServer_WebRTCEvents › OnBeforeSubscription

OnBeforeSubscription Event

Wordt geactiveerd wanneer een peer vraagt deel te nemen aan een signalling-kanaal, waardoor de server de kans krijgt het abonnement te accepteren of te weigeren.

Syntaxis

property OnBeforeSubscription: TsgcWSBeforeSubscriptionEvent;
// TsgcWSBeforeSubscriptionEvent = procedure(Connection: TsgcWSConnection; const Subscription: String; var Accept: Boolean) of object

Standaardwaarde

Opmerkingen

Subscription is de kanaal- (of kamer)naam die de peer heeft verzonden met zijn sgc@subscribe-envelop — dezelfde string die de tweede peer moet gebruiken voor SDP/ICE-relay om te werken. Accept is standaard True; stel dit in op False om het SUBSCRIBE stilletjes te verwijderen zodat de peer nooit aan het kanaal wordt toegevoegd, wat de typische toegangscontrolehook is (ACL, uitnodigingstoken, capaciteitsbeperking). Wanneer Accept True blijft, voegt de component de verbinding toe aan de abonneetabel, verhoogt de abonneenteller die aan de client wordt geretourneerd en activeert OnSubscription.

Voorbeeld


procedure TForm1.WebRTCServerBeforeSubscription(Connection: TsgcWSConnection;
  const Subscription: String; var Accept: Boolean);
begin
  // cap rooms at two peers so sessions are strictly one-to-one
  Accept := WebRTCSrv.WebRTCSubscriptions.IndexOfName(
    WebRTCSrv.Guid + '_' + Subscription) = -1;
  Memo1.Lines.Add(Format('[%s] SUBSCRIBE %s -> %s',
    [Connection.Guid, Subscription, BoolToStr(Accept, True)]));
end;

Terug naar gebeurtenissen