private async Task EnableHeartbeat(EnableHeartbeatCommand command) { _heartbeat.UpdateCallback(async () => { using (var socket = new StreamSocket()) { await socket.ConnectAsync(new HostName(command.Address.ToString()), command.Port.ToString()); var formatter = new HeartBeatListener.Formatter(); var writer = new DataWriter(socket.OutputStream); var buffer = await StorageIO.ReadIntoBuffer(await _camera.Snapshot()); await formatter.Write(writer, new CameraHeartBeat(_listener.LocalHost.ToString(), buffer)); await writer.StoreAsync(); } }); _heartbeat.Enable(TimeSpan.FromSeconds(3)); await Task.Yield(); }
private async Task SendHearbeat() { using (var socket = new StreamSocket()) { await socket.ConnectAsync(new HostName(_server.ToString()), _port.ToString()); var formatter = new HeartBeatListener.Formatter(); var writer = new DataWriter(socket.OutputStream); IBuffer buffer = null; if (State == CameraClientState.Idle) { buffer = await StorageIO.ReadIntoBuffer(await _camera.Snapshot()); } else { buffer = new StreamBuffer(0); } Debug.WriteLine($"Hearbeat state {State}"); await formatter.Write(writer, new CameraHeartBeat(_listener.LocalHost.ToString(), buffer, State)); await writer.StoreAsync(); } }
private async Task SendHearbeat() { using (var socket = new StreamSocket()) { await socket.ConnectAsync(new HostName(_server.ToString()), _port.ToString()); var formatter = new HeartBeatListener.Formatter(); var writer = new DataWriter(socket.OutputStream); IBuffer buffer = null; if (State == CameraClientState.Idle) { buffer = await StorageIO.ReadIntoBuffer(await _camera.Snapshot()); } else { buffer = new StreamBuffer(0); } Debug.WriteLine($"Hearbeat state {State}"); await formatter.Write(writer, new CameraHeartBeat(_listener.LocalHost.ToString(), buffer, State)); await writer.StoreAsync(); } }