public void JT808Header_2019Test2() { byte[] headerBytes = "010264FF0200000000013812345678008700000000".ToHexBytes(); JT808Header jT808Header = JT808Serializer.Deserialize <JT808Header>(headerBytes); Assert.Equal(135, jT808Header.MsgNum); Assert.Equal(2, jT808Header.ProtocolVersion); Assert.Equal("13812345678", jT808Header.TerminalPhoneNo); Assert.True(jT808Header.MessageBodyProperty.IsPackage); Assert.True(jT808Header.MessageBodyProperty.VersionFlag); Assert.Equal(JT808MsgId.终端鉴权.ToValue(), jT808Header.MsgId); Assert.Equal(255, jT808Header.MessageBodyProperty.DataLength); }
public void Test5() { JT808Header jT808HeaderProperty = new JT808Header(); jT808HeaderProperty.TerminalPhoneNo = "13812345678"; jT808HeaderProperty.MessageBodyProperty.DataLength = 5; jT808HeaderProperty.MsgNum = 135; jT808HeaderProperty.MsgId = JT808MsgId.终端鉴权.ToUInt16Value(); //"01 02 00 05 01 38 12 34 56 78 00 87" var hex = JT808Serializer.Serialize(jT808HeaderProperty).ToHexString(); Assert.Equal("010200050138123456780087", hex); }
public void Test1() { JT808Header jT808HeaderProperty = new JT808Header { TerminalPhoneNo = "13812345678" }; jT808HeaderProperty.MessageBodyProperty = new JT808HeaderMessageBodyProperty(5); jT808HeaderProperty.MsgNum = 135; jT808HeaderProperty.MsgId = JT808MsgId.终端鉴权.ToUInt16Value(); var hex = JT808Serializer.Serialize(jT808HeaderProperty).ToHexString(); Assert.Equal("01 02 00 05 01 38 12 34 56 78 00 87".Replace(" ", ""), hex); }
public void JT808Header_2019Test1() { JT808Header jT808HeaderProperty = new JT808Header { TerminalPhoneNo = "13812345678" }; JT808HeaderMessageBodyProperty jT808HeaderMessageBodyProperty = new JT808HeaderMessageBodyProperty(); jT808HeaderMessageBodyProperty.DataLength = 255; jT808HeaderMessageBodyProperty.IsPackage = true; jT808HeaderMessageBodyProperty.Encrypt = JT808EncryptMethod.RSA; jT808HeaderMessageBodyProperty.VersionFlag = true; jT808HeaderProperty.MessageBodyProperty = jT808HeaderMessageBodyProperty; jT808HeaderProperty.MsgNum = 135; jT808HeaderProperty.MsgId = JT808MsgId.终端鉴权.ToUInt16Value(); jT808HeaderProperty.ProtocolVersion = 2; var hex = JT808Serializer.Serialize(jT808HeaderProperty).ToHexString(); Assert.Equal("010264FF0200000000013812345678008700000000", hex); }
public void Test5() { JT808Package jT808Package = new JT808Package(); JT808Header header = new JT808Header(); header.MsgId = 0x9101; header.MsgNum = 1; header.TerminalPhoneNo = ""; jT808Package.Header = header; JT808_0x9101 jT808_0X9101 = new JT808_0x9101(); jT808_0X9101.ServerIp = ""; jT808_0X9101.TcpPort = 1078; jT808_0X9101.UdpPort = 0; jT808_0X9101.ChannelNo = 3; jT808_0X9101.DataType = 1; jT808_0X9101.StreamType = 1; jT808Package.Bodies = jT808_0X9101; var hex = JT808Serializer.Serialize(jT808Package).ToHexString(); }
public void Test3() { JT808Package jT808Package = new JT808Package(); JT808Header header = new JT808Header(); header.MsgId = 0x9102; header.ManualMsgNum = 1; header.TerminalPhoneNo = "12345679810"; jT808Package.Header = header; JT808_0x9102 jT808_0X9102 = new JT808_0x9102(); jT808_0X9102.ChannelNo = 1; jT808_0X9102.ControlCmd = 1; jT808_0X9102.CloseAVData = 0; jT808_0X9102.StreamType = 0; jT808Package.Bodies = jT808_0X9102; var hex = JT808Serializer.Serialize(jT808Package).ToHexString(); //7E910200040123456798100001010100001E7E Assert.Equal("7E910200040123456798100001010100001E7E", hex); }
public static void CreateMain(string terminalPhoneNo, string serverIPAddress, JT808Serializer JT808Serializer, IJT808DotNettyWebApi JT808DotNettyWebApiClient) { JT808Package jT808Package = new JT808Package(); JT808Header header = new JT808Header(); header.MsgId = 0x9101; header.MsgNum = 2; header.TerminalPhoneNo = terminalPhoneNo; jT808Package.Header = header; JT808_0x9101 jT808_0X9101 = new JT808_0x9101(); jT808_0X9101.ServerIPAddress = serverIPAddress; jT808_0X9101.ServerVideoChannelTcpPort = 1808; jT808_0X9101.ServerVideoChannelUdpPort = 0; jT808_0X9101.LogicalChannelNo = 1; jT808_0X9101.DataType = 1; jT808_0X9101.StreamType = 0; jT808Package.Bodies = jT808_0X9101; var data = JT808Serializer.Serialize(jT808Package); Console.WriteLine(JsonConvert.SerializeObject(data.ToHexString())); var tmpSend = JsonConvert.SerializeObject(new JT808UnificationSendRequestDto { TerminalPhoneNo = terminalPhoneNo, Data = data }); //var result = JT808DotNettyWebApiClient.UnificationTcpSend(new JT808UnificationSendRequestDto //{ // TerminalPhoneNo = terminalPhoneNo, // Data = data //}).GetAwaiter().GetResult(); //Console.WriteLine(JsonConvert.SerializeObject(result)); Console.WriteLine(tmpSend); }
public void Test3() { JT808Package jT808Package = new JT808Package(); JT808Header header = new JT808Header(); header.MsgId = 0x9101; header.MsgNum = 1; header.TerminalPhoneNo = "12345679810"; jT808Package.Header = header; JT808_0x9101 jT808_0X9101 = new JT808_0x9101(); jT808_0X9101.ServerIPAddress = "127.0.0.1"; jT808_0X9101.ServerVideoChannelTcpPort = 1888; jT808_0X9101.ServerVideoChannelUdpPort = 0; jT808_0X9101.LogicalChannelNo = 1; jT808_0X9101.DataType = 1; jT808_0X9101.StreamType = 1; jT808Package.Bodies = jT808_0X9101; var hex = JT808Serializer.Serialize(jT808Package).ToHexString(); Assert.Equal("7E910100110123456798100001093132372E302E302E31076000000101014C7E", hex); //7E910100110123456798100001093132372E302E302E31076000000101014C7E }
public JT808_0x8001Package(JT808Header jT808Header, JT808_0x8001 bodies) : base(jT808Header, bodies) { }
protected abstract JT808Package Create(JT808Header jT808Header, TBodies bodies);
public JT808PackageBase(JT808Header jT808Header, TBodies bodies) { this.JT808Package = Create(jT808Header, bodies); }
public JT808_0x8300Package(JT808Header jT808Header, JT808_0x8300 bodies) : base(jT808Header, bodies) { }
static void Main(string[] args) { IServiceCollection serviceDescriptors = new ServiceCollection(); serviceDescriptors .AddJT808Configure() .AddJT1078Configure(); serviceDescriptors.AddHttpApi <IJT808DotNettyWebApi>().ConfigureHttpApiConfig((c, p) => { c.HttpHost = new Uri("http://localhost:12828/jt808api/"); c.FormatOptions.DateTimeFormat = "yyyy-MM-dd HH:mm:ss.fff"; c.LoggerFactory = p.GetRequiredService <ILoggerFactory>(); }); IServiceProvider serviceProvider = serviceDescriptors.BuildServiceProvider(); IJT808Config config = serviceProvider.GetRequiredService <IJT808Config>(); JT808Serializer JT808Serializer = config.GetSerializer(); string terminalPhoneNo = ""; JT808Package jT808Package = new JT808Package(); JT808Header header = new JT808Header(); header.MsgId = 0x9101; header.MsgNum = 1; header.TerminalPhoneNo = terminalPhoneNo; jT808Package.Header = header; JT808_0x9101 jT808_0X9101 = new JT808_0x9101(); jT808_0X9101.ServerIPAddress = "127.0.0.1"; jT808_0X9101.ServerVideoChannelTcpPort = 1888; jT808_0X9101.ServerVideoChannelUdpPort = 0; jT808_0X9101.LogicalChannelNo = 1; jT808_0X9101.DataType = 1; jT808_0X9101.StreamType = 1; jT808Package.Bodies = jT808_0X9101; var data = JT808Serializer.Serialize(jT808Package); Console.WriteLine(JsonConvert.SerializeObject(data.ToHexString())); IJT808DotNettyWebApi JT808DotNettyWebApiClient = serviceProvider.GetRequiredService <IJT808DotNettyWebApi>(); var result = JT808DotNettyWebApiClient.UnificationTcpSend(new JT808UnificationSendRequestDto { TerminalPhoneNo = terminalPhoneNo, Data = data }).GetAwaiter().GetResult(); Console.WriteLine(JsonConvert.SerializeObject(result)); //JT808Package jT808Package1 = new JT808Package(); //JT808Header header1 = new JT808Header(); //header1.MsgId = 0x9102; //header1.MsgNum = 2; //header1.TerminalPhoneNo = terminalPhoneNo; //jT808Package1.Header = header; //JT808_0x9102 jT808_0X9102 = new JT808_0x9102(); //jT808_0X9102.LogicalChannelNo = 1; //jT808_0X9102.ControlCmd = 1; //jT808_0X9102.CloseAVData = 0; //jT808_0X9102.SwitchStreamType = 0; //jT808Package1.Bodies = jT808_0X9102; //var data1 = JT808Serializer.Serialize(jT808Package1); //Console.WriteLine(JsonConvert.SerializeObject(data1.ToHexString())); //var result1 = JT808DotNettyWebApiClient.UnificationTcpSend(new JT808UnificationSendRequestDto //{ // TerminalPhoneNo = terminalPhoneNo, // Data = data1 //}).GetAwaiter().GetResult(); //Console.WriteLine(JsonConvert.SerializeObject(result1)); Console.ReadKey(); }