public Task Write(int id, byte[] data) { var request = new WriteDataRequest { TerminalId = id, Data = data }; return(_appServiceConnection.SendMessageAsync(CreateMessage(request))); }
private void WriteButton_Click(object sender, RoutedEventArgs e) { var data = GetWriteData(); if (data == null) { return; } WriteDataRequest?.Invoke(data); }
public WriteDataResponse Write(WriteDataRequest request) { using var channel = GrpcChannel.ForAddress($"http://{_cluster.Leader}:5000"); var client = new Leader.LeaderClient(channel); var response = client.Write(new WriteRequest { Message = Google.Protobuf.ByteString.CopyFromUtf8(request.Message) }); return(new WriteDataResponse { Offset = response.Offset }); }
private int WriteData(byte[] data, RobotPacket.PacketID packetID) { crcCount++; if (CancelProcess) { SendCancel(); return 2; } var writeMotionDataRequest = new WriteDataRequest(data, packetID); //var bytes = writeMotionDataRequest.BuildRequest(); //SendData(bytes); //System.Threading.Thread.Sleep(5); //return 1; if (crcCount == WirelessConnection.MaxCrcRetry) { crcCount = 0; if (_writeProcess) { DebugHelper.WriteLine("WriteData: reach max crc"); _logger.Error("WriteData: reach max crc"); } return 0; } var reply = writeMotionDataRequest.Process() as RobotReplyData; if (reply == null) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: reply is null"); _logger.Error("WriteData: reply is null"); } return 0; } // Check reply error if (reply.Type == RobotReplyData.ReplyType.CRC) { DebugHelper.WriteLine("WriteData: CRC error"); _logger.Error("WriteData: CRC error"); return WriteData(data, packetID); } else if (reply.Type != RobotReplyData.ReplyType.Success) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: reply is not success"); _logger.Error("WriteData: reply is not success"); } return WriteData(data, packetID); //return 0; } if (reply.Data.Length == 0) { if (_writeProcess) _logger.Error("WriteData: reply data is null"); return 0; } if (GlobalFunction.LE4ToDec(reply.Data) != data.Length) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: cannot write all data"); _logger.Error("WriteData: cannot write all data"); } return 0; } crcCount = 0; return 1; }
private int WriteData(byte[] data, RobotPacket.PacketID packetID) { crcCount++; if (CancelProcess) { SendCancel(); return(2); } var writeMotionDataRequest = new WriteDataRequest(data, packetID); //var bytes = writeMotionDataRequest.BuildRequest(); //SendData(bytes); //System.Threading.Thread.Sleep(5); //return 1; if (crcCount == WirelessConnection.MaxCrcRetry) { crcCount = 0; if (_writeProcess) { DebugHelper.WriteLine("WriteData: reach max crc"); _logger.Error("WriteData: reach max crc"); } return(0); } var reply = writeMotionDataRequest.Process() as RobotReplyData; if (reply == null) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: reply is null"); _logger.Error("WriteData: reply is null"); } return(0); } // Check reply error if (reply.Type == RobotReplyData.ReplyType.CRC) { DebugHelper.WriteLine("WriteData: CRC error"); _logger.Error("WriteData: CRC error"); return(WriteData(data, packetID)); } else if (reply.Type != RobotReplyData.ReplyType.Success) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: reply is not success"); _logger.Error("WriteData: reply is not success"); } return(WriteData(data, packetID)); //return 0; } if (reply.Data.Length == 0) { if (_writeProcess) { _logger.Error("WriteData: reply data is null"); } return(0); } if (GlobalFunction.LE4ToDec(reply.Data) != data.Length) { if (_writeProcess) { DebugHelper.WriteLine("WriteData: cannot write all data"); _logger.Error("WriteData: cannot write all data"); } return(0); } crcCount = 0; return(1); }