Methods allowing to filter out senders on the server.
procedure AddAllowedSender(GUID : TGUID);
procedure RemoveAllowedSender(GUID : TGUID);
procedure AddAllowedSenders(GUID : array of TGUID; Count : Integer);
procedure ClearAllowedSenders(AllowAll: Boolean);
Initially, this list is empty, the server can send data to this client from all clients. If at least one client is added in this list, the server can send to this client data only from the clients included in this list.
AddAllowedSender/RemoveAllowedSender adds/deletes users to the list of allowed senders. AddAllowedSenders adds multiple users. ClearAllowedSenders removes all allowed senders.
If ClearAllowedSenders is called with AllowAll=True, this client can receive messages from all clients, like in the initial state. If ClearAllowedSenders is called with AllowAll=False, or the last allowed sender is removed by calling RemoveAllowedSender, this client does not accept data from any other client.
A client may inform its allowed senders about its presence by calling HelloToAllowedSenders, and inform them about exiting by calling GoodbyeToAllowedSenders. If HelloToAllowedSenders was called, and connection between this client and the sever is broken, the server itself informs allowed senders about this client exiting. Allowed senders are informed in OnUserEnter and OnUserExit events.
The list of allowed senders can be kept by the server when this client disconnects, if you change TRVMediaServer.KeepClientInfoMode.