@@ -138,18 +138,20 @@ public void ParseByteData(byte[] data)
138138 public class RegisterRequestData : QianComData
139139 {
140140 public CarType carType { get ; set ; }
141+ public byte CarVersion { get ; set ; }
141142 public byte TokenLen => ( byte ) ( Token ? . Length ?? 0 ) ;
142143 public byte [ ] Token { get ; set ; }
143144 public bool NeedAllocID { get ; set ; }
144145
145- public override byte DataLen => ( byte ) ( TokenLen + 3 ) ;
146+ public override byte DataLen => ( byte ) ( TokenLen + 4 ) ;
146147
147148 public override DataFunctionType FuncType => DataFunctionType . RegisterRequest ;
148149
149150 public override void FillByteData ( byte [ ] data , int offset )
150151 {
151152 ComDataWriter dw = new ComDataWriter ( data , offset ) ;
152153 dw . WriteEnum < CarType > ( carType ) ;
154+ dw . WriteByte ( CarVersion ) ;
153155 dw . WriteByte ( TokenLen ) ;
154156 if ( TokenLen > 0 )
155157 dw . WriteByteArray ( Token , 0 , Token . Length ) ;
@@ -160,6 +162,7 @@ public override void ParseByteData(byte[] data, int offset)
160162 {
161163 ComDataReader dr = new ComDataReader ( data , offset ) ;
162164 carType = dr . ReadEnum < CarType > ( ) ;
165+ CarVersion = dr . ReadByte ( ) ;
163166 byte len = dr . ReadByte ( ) ;
164167 if ( len > 0 )
165168 dr . ReadByteArray ( Token = new byte [ len ] , 0 , len ) ;
@@ -174,8 +177,9 @@ public class RegisterResponseData : QianComData
174177
175178 public IPAddress ServerIP { get ; set ; }
176179 public ushort ServerPort { get ; set ; }
180+ public ushort ServerVersion { get ; set ; }
177181
178- public override byte DataLen => 9 ;
182+ public override byte DataLen => 11 ;
179183
180184 public override DataFunctionType FuncType => DataFunctionType . RegisterResponse ;
181185
@@ -189,6 +193,7 @@ public override void FillByteData(byte[] data, int offset)
189193 else
190194 dw . SeekRelevant ( 4 ) ;
191195 dw . WriteHalfWord ( ServerPort ) ;
196+ dw . WriteHalfWord ( ServerVersion ) ;
192197 }
193198
194199 public override void ParseByteData ( byte [ ] data , int offset )
@@ -200,6 +205,7 @@ public override void ParseByteData(byte[] data, int offset)
200205 dr . ReadByteArray ( arr , 0 , 4 ) ;
201206 ServerIP = new IPAddress ( arr ) ;
202207 ServerPort = dr . ReadHalfWord ( ) ;
208+ ServerVersion = dr . ReadHalfWord ( ) ;
203209 }
204210 }
205211
0 commit comments