public void broadcastScreenshot(byte[] screenshotBytes) { byte[] prefix = Encoding.UTF8.GetBytes("<WB_SCREEN>"); byte[] postfix = Encoding.UTF8.GetBytes("</WB_SCREEN>"); byte[] dataToSend = new byte[prefix.Length + screenshotBytes.Length + postfix.Length]; int index = 0; Array.Copy(prefix, 0, dataToSend, index, prefix.Length); index += prefix.Length; Array.Copy(screenshotBytes, 0, dataToSend, index, screenshotBytes.Length); index += screenshotBytes.Length; Array.Copy(postfix, 0, dataToSend, index, postfix.Length); //p2pClient.Send(dataToSend); byte[] header = AsyncTCPClient.createPacketHeader(dataToSend); p2pClient.SyncSend(header); p2pClient.SyncSend(dataToSend); }
private void InitNetworkCommManager() { //processors related to cloud service dropboxGeneralNoteDownloader = new NoteUpdater(); anotoNotesDownloader = new AnotoNoteUpdater(); noteUpdateScheduler = new NoteUpdateScheduler(); noteUpdateScheduler.updateEventHandler += new NoteUpdateScheduler.UpdateIntervalTickedEvent(noteUpdateScheduler_updateEventHandler); cloudDataEventProcessor = new CloudDataEventProcessor(); dropboxGeneralNoteDownloader.noteStreamsDownloadedHandler += new NewNoteStreamsDownloaded(cloudDataEventProcessor.handleDownloadedStreamsFromCloud); anotoNotesDownloader.noteStreamsDownloadedHandler += new NewNoteStreamsDownloaded(cloudDataEventProcessor.handleDownloadedStreamsFromCloud); cloudDataEventProcessor.newNoteExtractedEventHandler += new CloudDataEventProcessor.NewNoteExtractedFromStreamEvent(brainstormManager.HandleComingIdea); p2pClient = new AsyncTCPClient(); remotePointerManager = new RemotePointerManager(); p2pClient.setP2PDataListener(remotePointerManager); remotePointerManager.setPointerEventListener(this); p2pClient.StartClient(); }