TsgcWebSocketHTTPServerEventi › OnBinary

OnBinary Event

Si attiva ogni volta che un client invia un messaggio binario e questo viene ricevuto dal server.

Sintassi

property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object

Valore predefinito

Note

OnBinary viene generato una volta che un payload binario completo è stato ricevuto e bufferizzato da un client WebSocket. Il parametro Data espone i byte decodificati come TMemoryStream posizionato a 0; leggerlo all'interno del gestore perché lo stream è di proprietà del server e diventa non valido dopo il ritorno del gestore. Per impostazione predefinita NotifyEvents è neAsynchronous, quindi OnBinary è sincronizzato con il thread principale ed è sicuro accedere ai controlli UI; passare a neNoSync per il dispatching sul thread di connessione quando le prestazioni sono importanti. Se Options.FragmentedMessages è frgOnlyFragmented, l'evento non viene generato e viene utilizzato invece OnFragmented.

Esempio


procedure OnBinary(Connection: TsgcWSConnection; const Data: TMemoryStream);
var
  oBitmap: TBitmap;
begin
  oBitmap := TBitmap.Create;
  try
    oBitmap.LoadFromStream(Data);
    Image1.Picture.Assign(oBitmap);
  finally
    FreeAndNil(oBitmap);
  end;
end;

Torna agli Eventi