Beispiel #1
0
 public JT809InferiorService(
     ILoggerFactory loggerFactory,
     JT809MainClient mainClient,
     IJT809Config config)
 {
     this.mainClient = mainClient;
     logger          = loggerFactory.CreateLogger <JT809InferiorService>();
     header          = new JT809Header
     {
         MsgGNSSCENTERID = config.HeaderOptions.MsgGNSSCENTERID
     };
 }
Beispiel #2
0
        public void Test2()
        {
            var         bytes       = "00 00 00 18 00 00 04 00 96 00 00 00 04 B0 01 00 00 00 00 00 00 00".ToHexBytes();
            JT809Header jT809Header = JT809Serializer.Deserialize <JT809Header>(bytes);

            Assert.Equal((uint)24, jT809Header.MsgLength);
            Assert.Equal((uint)1024, jT809Header.MsgSN);
            Assert.Equal(JT809Enums.JT809BusinessType.从链路静态信息交换消息, jT809Header.BusinessType);
            Assert.Equal((uint)1200, jT809Header.MsgGNSSCENTERID);
            Assert.Equal(new JT809Header_Version().ToString(), jT809Header.Version.ToString());
            Assert.Equal(JT809Header_Encrypt.None, jT809Header.EncryptFlag);
            Assert.Equal((uint)0, jT809Header.EncryptKey);
        }
Beispiel #3
0
        public void Test4()
        {
            JT809Header jT809Header = new JT809Header();

            jT809Header.MsgLength       = 24;
            jT809Header.MsgSN           = 1024;
            jT809Header.BusinessType    = JT809Enums.JT809BusinessType.从链路静态信息交换消息;
            jT809Header.MsgGNSSCENTERID = 1200;
            jT809Header.Version         = new JT809Header_Version(0xFF, 0xAA, 0xBB);
            jT809Header.EncryptFlag     = JT809Header_Encrypt.None;
            jT809Header.EncryptKey      = 0;
            var hex = JT809Serializer.Serialize(jT809Header).ToHexString();

            Assert.Equal("00000018000004009600000004B0FFAABB0000000000", hex);
        }
Beispiel #4
0
        public static JT809Package Create(this JT809BusinessType jT809BusinessType, JT809Header jT809Header)
        {
            JT809Package jT809Package = new JT809Package();

            jT809Package.Header = new JT809Header()
            {
                BusinessType    = (ushort)jT809BusinessType,
                MsgSN           = jT809Header.MsgSN,
                EncryptFlag     = jT809Header.EncryptFlag,
                EncryptKey      = jT809Header.EncryptKey,
                MsgGNSSCENTERID = jT809Header.MsgGNSSCENTERID,
                Version         = jT809Header.Version
            };
            return(jT809Package);
        }
Beispiel #5
0
        public void Test1()
        {
            JT809Header jT809Header = new JT809Header();

            jT809Header.MsgLength       = 24;
            jT809Header.MsgSN           = 1024;
            jT809Header.BusinessType    = JT809BusinessType.从链路静态信息交换消息.ToUInt16Value();
            jT809Header.MsgGNSSCENTERID = 1200;
            jT809Header.Version         = new JT809Header_Version();
            jT809Header.EncryptFlag     = JT809Header_Encrypt.None;
            jT809Header.EncryptKey      = 0;
            var hex = JT809Serializer.Serialize(jT809Header).ToHexString();

            Assert.Equal("00000018000004009600000004B00100000000000000", hex);
            //"00 00 00 18 00 00 04 00 96 00 00 00 04 B0 01 00 00 00 00 00 00 00"
        }
Beispiel #6
0
        public static JT809Package Create <TJT809Bodies>(this ushort jT809BusinessType, JT809Header jT809Header, TJT809Bodies jT809Bodies)
            where TJT809Bodies : JT809Bodies
        {
            JT809Package jT809Package = new JT809Package();

            jT809Package.Bodies = jT809Bodies;
            jT809Package.Header = new JT809Header()
            {
                BusinessType    = jT809BusinessType,
                MsgSN           = jT809Header.MsgSN,
                EncryptFlag     = jT809Header.EncryptFlag,
                EncryptKey      = jT809Header.EncryptKey,
                MsgGNSSCENTERID = jT809Header.MsgGNSSCENTERID,
                Version         = jT809Header.Version
            };
            return(jT809Package);
        }
Beispiel #7
0
 /// <summary>
 /// DOWN_BASE_MSG - 从链路静态信息交换消息
 /// auto-generated
 /// </summary>
 public static JT809Package Create_从链路静态信息交换消息(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x9600 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x9600>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #8
0
 /// <summary>
 /// UP_DISCONNECT_REQ - 主链路注销请求消息
 /// auto-generated
 /// </summary>
 public static JT809Package Create_主链路注销请求消息(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x1003 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x1003>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #9
0
 /// <summary>
 /// DOWN_MANAGE_MSG_SN_INFORM - 下发平台间消息序列号通知消息_2019
 /// auto-generated
 /// </summary>
 public static JT809Package Create_下发平台间消息序列号通知消息_2019(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x1102 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x1102>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #10
0
 /// <summary>
 /// DOWN_MANAGE_MSG_REQ - 平台链路连接情况与车辆定位消息传输情况上报请求消息_2019
 /// auto-generated
 /// </summary>
 public static JT809Package Create_平台链路连接情况与车辆定位消息传输情况上报请求消息_2019(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x9102 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x9102>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #11
0
 /// <summary>
 /// DOWN_TOTAL_RECV_BACK_MSG - 接收车辆定位信息数量通知消息
 /// auto-generated
 /// </summary>
 public static JT809Package Create_接收车辆定位信息数量通知消息(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_2019_0x9101 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_2019_0x9101>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #12
0
 /// <summary>
 /// DOWN_CLOSELINK_INFORM - 上级平台主动关闭链路通知消息
 /// auto-generated
 /// </summary>
 public static JT809Package Create_上级平台主动关闭链路通知消息(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x9008 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x9008>(jT809BusinessType, jT809Header, bodies));
 }
Beispiel #13
0
 /// <summary>
 /// DOWN_CONNECT_RSP - 从链路连接应答信息
 /// auto-generated
 /// </summary>
 public static JT809Package Create_从链路连接应答信息(this JT809BusinessType jT809BusinessType, JT809Header jT809Header, JT809.Protocol.MessageBody.JT809_0x9002 bodies)
 {
     return(Create <JT809.Protocol.MessageBody.JT809_0x9002>(jT809BusinessType, jT809Header, bodies));
 }