You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
29 KiB
182 lines
29 KiB
using System.Net.Sockets;
|
|
using HybirdFrameworkCore.Utils;
|
|
using log4net;
|
|
|
|
namespace Service.Led;
|
|
|
|
public class LedClient
|
|
{
|
|
#region msg
|
|
|
|
//public static Dictionary<string, byte[]> Dictionary = new Dictionary<string, byte[]>()
|
|
// {
|
|
// {"欢迎光临换电站!(正在营业)",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x22,0x00,0x00,0x00,0x22,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB9,0xE2,0xC1,0xD9,0xBB,0xBB,0xB5,0xE7,0xD5,0xBE,0xA3,0xA1,0x28,0xD5,0xFD,0xD4,0xDA,0xD3,0xAA,0xD2,0xB5,0x29,0x00,0x00,0x0D,0x0A,}},
|
|
//{"标签读写失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB1,0xEA,0xC7,0xA9,0xB6,0xC1,0xD0,0xB4,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"车辆连接失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB3,0xB5,0xC1,0xBE,0xC1,0xAC,0xBD,0xD3,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"云端校验失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xD4,0xC6,0xB6,0xCB,0xD0,0xA3,0xD1,0xE9,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"车辆已到位",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0x12,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB3,0xB5,0xC1,0xBE,0xD2,0xD1,0xB5,0xBD,0xCE,0xBB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"请熄火挂空挡拉手刹",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xC7,0xEB,0xCF,0xA8,0xBB,0xF0,0xB9,0xD2,0xBF,0xD5,0xB5,0xB2,0xC0,0xAD,0xCA,0xD6,0xC9,0xB2,0x00,0x00,0x0D,0x0A,}},
|
|
//{"云平台下发换电失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xD4,0xC6,0xC6,0xBD,0xCC,0xA8,0xCF,0xC2,0xB7,0xA2,0xBB,0xBB,0xB5,0xE7,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"解锁车辆失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBD,0xE2,0xCB,0xF8,0xB3,0xB5,0xC1,0xBE,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"选包失败,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xD1,0xA1,0xB0,0xFC,0xCA,0xA7,0xB0,0xDC,0xA3,0xAC,0xC7,0xEB,0xCA,0xBB,0xC0,0xEB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"雷达定位失败,请在三分钟内重新调整车辆位置",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x32,0x00,0x00,0x00,0x32,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xC0,0xD7,0xB4,0xEF,0xB6,0xA8,0xCE,0xBB,0xCA,0xA7,0xB0,0xDC,0xA3,0xAC,0xC7,0xEB,0xD4,0xDA,0xC8,0xFD,0xB7,0xD6,0xD6,0xD3,0xC4,0xDA,0xD6,0xD8,0xD0,0xC1,0xBE,0xCE,0xBB,0xD6,0xC3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池拆卸中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xB2,0xF0,0xD0,0xB6,0xD6,0xD0,0xA3,0xAC,0xC7,0xEB,0xC9,0xD4,0xBA,0xF3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池安装中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xB0,0xB2,0xD7,0xB0,0xD6,0xD0,0xA3,0xAC,0xC7,0xEB,0xC9,0xD4,0xBA,0xF3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池包已安装完成",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xB0,0xFC,0xD2,0xD1,0xB0,0xB2,0xD7,0xB0,0xCD,0xEA,0xB3,0xC9,0x00,0x00,0x0D,0x0A,}},
|
|
//{"航车已回归安全位置",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBA,0xBD,0xB3,0xB5,0xD2,0xD1,0xBB,0xD8,0xB9,0xE9,0xB0,0xB2,0xC8,0xAB,0xCE,0xBB,0xD6,0xC3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"换电已完成,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBB,0xBB,0xB5,0xE7,0xD2,0xD1,0xCD,0xEA,0xB3,0xC9,0xA3,0xAC,0xC7,0xEB,0xCA,0xBB,0xC0,0xEB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"换电失败,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBB,0xBB,0xB5,0xE7,0xCA,0xA7,0xB0,0xDC,0xA3,0xAC,0xC7,0xEB,0xCA,0xBB,0xC0,0xEB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池入仓中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xC8,0xEB,0xB2,0xD6,0xD6,0xD0,0xA3,0xAC,0xC7,0xEB,0xC9,0xD4,0xBA,0xF3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池出仓中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xB3,0xF6,0xB2,0xD6,0xD6,0xD0,0xA3,0xAC,0xC7,0xEB,0xC9,0xD4,0xBA,0xF3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"车辆上锁失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB3,0xB5,0xC1,0xBE,0xC9,0xCF,0xCB,0xF8,0xCA,0xA7,0xB0,0xDC,0x00,0x00,0x0D,0x0A,}},
|
|
//{"通道的电池仓无可用换电电池",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x22,0x00,0x00,0x00,0x22,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xCD,0xA8,0xB5,0xC0,0xB5,0xC4,0xB5,0xE7,0xB3,0xD8,0xB2,0xD6,0xCE,0xDE,0xBF,0xC9,0xD3,0xC3,0xBB,0xBB,0xB5,0xE7,0xB5,0xE7,0xB3,0xD8,0x00,0x00,0x0D,0x0A,}},
|
|
//{"结束充电电池数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x00,0x00,0x1C,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBD,0xE1,0xCA,0xF8,0xB3,0xE4,0xB5,0xE7,0xB5,0xE7,0xB3,0xD8,0xCA,0xFD,0xC1,0xBF,0xB2,0xBB,0xD7,0xE3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"空仓数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBF,0xD5,0xB2,0xD6,0xCA,0xFD,0xC1,0xBF,0xB2,0xBB,0xD7,0xE3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"符合soc限制数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x00,0x00,0x00,0x1B,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB7,0xFB,0xBA,0xCF,0x73,0x6F,0x63,0xCF,0xDE,0xD6,0xC6,0xCA,0xFD,0xC1,0xBF,0xB2,0xBB,0xD7,0xE3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"结束充电大于3分钟的数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x23,0x00,0x00,0x00,0x23,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBD,0xE1,0xCA,0xF8,0xB3,0xE4,0xB5,0xE7,0xB4,0xF3,0xD3,0xDA,0x33,0xB7,0xD6,0xD6,0xD3,0xB5,0xC4,0xCA,0xFD,0xC1,0xBF,0xB2,0xBB,0xD7,0xE3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"换电站处于手动模式,不能自动换电",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x28,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBB,0xBB,0xB5,0xE7,0xD5,0xBE,0xB4,0xA6,0xD3,0xDA,0xCA,0xD6,0xB6,0xAF,0xC4,0xA3,0xCA,0xBD,0xA3,0xAC,0xB2,0xBB,0xC4,0xDC,0xD7,0xD4,0xB6,0xAF,0xBB,0xBB,0xB5,0xE7,0x00,0x00,0x0D,0x0A,}},
|
|
//{"换电站处于本地模式,不能远程换电",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x28,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBB,0xBB,0xB5,0xE7,0xD5,0xBE,0xB4,0xA6,0xD3,0xDA,0xCA,0xD6,0xB6,0xAF,0xC4,0xA3,0xCA,0xBD,0xA3,0xAC,0xB2,0xBB,0xC4,0xDC,0xD7,0xD4,0xB6,0xAF,0xBB,0xBB,0xB5,0xE7,0x00,0x00,0x0D,0x0A,}},
|
|
//{"车辆驶入",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB3,0xB5,0xC1,0xBE,0xCA,0xBB,0xC8,0xEB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"换电任务启动",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBB,0xBB,0xB5,0xE7,0xC8,0xCE,0xCE,0xF1,0xC6,0xF4,0xB6,0xAF,0x00,0x00,0x0D,0x0A,}},
|
|
//{"雷达定位中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1A,0x00,0x00,0x00,0x1A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xC0,0xD7,0xB4,0xEF,0xB6,0xA8,0xCE,0xBB,0xD6,0xD0,0xA3,0xAC,0xC7,0xEB,0xC9,0xD4,0xBA,0xF3,0x00,0x00,0x0D,0x0A,}},
|
|
//{"启动换电失败,请联系站务人员",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x24,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xC6,0xF4,0xB6,0xAF,0xBB,0xBB,0xB5,0xE7,0xCA,0xA7,0xB0,0xDC,0xA3,0xAC,0xC7,0xEB,0xC1,0xAA,0xCF,0xB5,0xD5,0xBE,0xCE,0xF1,0xC8,0xCB,0xD4,0xB1,0x00,0x00,0x0D,0x0A,}},
|
|
//{"即将进行消防移仓,请车辆驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x24,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xBC,0xB4,0xBD,0xAB,0xBD,0xF8,0xD0,0xD0,0xCF,0xFB,0xB7,0xC0,0xD2,0xC6,0xB2,0xD6,0xA3,0xAC,0xC7,0xEB,0xB3,0xB5,0xC1,0xBE,0xCA,0xBB,0xC0,0xEB,0x00,0x00,0x0D,0x0A,}},
|
|
//{"电池移仓中",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0x12,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xB5,0xE7,0xB3,0xD8,0xD2,0xC6,0xB2,0xD6,0xD6,0xD0,0x00,0x00,0x0D,0x0A,}},
|
|
//{"消防移仓中",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0x12,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xCF,0xFB,0xB7,0xC0,0xD2,0xC6,0xB2,0xD6,0xD6,0xD0,0x00,0x00,0x0D,0x0A,}},
|
|
//{"雷达扫描失败,请在三分钟内挪车",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x26,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x31,0xC0,0xD7,0xB4,0xEF,0xC9,0xA8,0xC3,0xE8,0xCA,0xA7,0xB0,0xDC,0xA3,0xAC,0xC7,0xEB,0xD4,0xDA,0xC8,0xFD,0xB7,0xD6,0xD6,0xD3,0xC4,0xDA,0xC5,0xB2,0xB3,0xB5,0x00,0x00,0x0D,0x0A,}},
|
|
|
|
// };
|
|
|
|
|
|
//印尼文显示
|
|
public static Dictionary<string, byte[]> Dictionary = new Dictionary<string, byte[]>()
|
|
{
|
|
|
|
{"欢迎光临换电站!(正在营业)",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3D,0x00,0x00,0x00,0x3D,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x53,0x65,0x6C,0x61,0x6D,0x61,0x74,0x20,0x64,0x61,0x74,0x61,0x6E,0x67,0x20,0x64,0x69,0x20,0x73,0x74,0x61,0x73,0x69,0x75,0x6E,0x20,0x70,0x65,0x72,0x74,0x75,0x6B,0x61,0x72,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x21,0x20,0x28,0x54,0x75,0x74,0x75,0x70,0x29,0x00,0x00,0x0D,0x0A,}},
|
|
{"标签读写失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x26,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x47,0x61,0x67,0x61,0x6C,0x20,0x6D,0x65,0x6D,0x62,0x61,0x63,0x61,0x20,0x61,0x74,0x61,0x75,0x20,0x6D,0x65,0x6E,0x75,0x6C,0x69,0x73,0x20,0x74,0x61,0x67,0x00,0x00,0x0D,0x0A,}},
|
|
{"车辆连接失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x1F,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4B,0x6F,0x6E,0x65,0x6B,0x73,0x69,0x20,0x6B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x20,0x67,0x61,0x67,0x61,0x6C,0x00,0x00,0x0D,0x0A,}},
|
|
{"云端校验失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x1E,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x56,0x65,0x72,0x69,0x66,0x69,0x6B,0x61,0x73,0x69,0x20,0x63,0x6C,0x6F,0x75,0x64,0x20,0x67,0x61,0x67,0x61,0x6C,0x00,0x00,0x0D,0x0A,}},
|
|
{"车辆已到位",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x1E,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x56,0x65,0x72,0x69,0x66,0x69,0x6B,0x61,0x73,0x69,0x20,0x63,0x6C,0x6F,0x75,0x64,0x20,0x67,0x61,0x67,0x61,0x6C,0x00,0x00,0x0D,0x0A,}},
|
|
{"请熄火挂空挡拉手刹",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x00,0x00,0x00,0x46,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x48,0x61,0x72,0x61,0x70,0x20,0x6D,0x61,0x74,0x69,0x6B,0x61,0x6E,0x20,0x6B,0x75,0x6E,0x63,0x69,0x20,0x6B,0x6F,0x6E,0x74,0x61,0x6B,0x20,0x64,0x61,0x6E,0x20,0x74,0x61,0x72,0x69,0x6B,0x20,0x72,0x65,0x6D,0x20,0x74,0x61,0x6E,0x67,0x61,0x6E,0x20,0x64,0x69,0x20,0x67,0x69,0x67,0x69,0x20,0x6E,0x65,0x74,0x72,0x61,0x6C,0x00,0x00,0x0D,0x0A,}},
|
|
|
|
|
|
{"解锁车辆失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x29,0x00,0x00,0x00,0x29,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x47,0x61,0x67,0x61,0x6C,0x20,0x6D,0x65,0x6D,0x62,0x75,0x6B,0x61,0x20,0x6B,0x75,0x6E,0x63,0x69,0x20,0x6B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"选包失败,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0x00,0x00,0x2C,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x47,0x61,0x67,0x61,0x6C,0x20,0x6D,0x65,0x6D,0x69,0x6C,0x69,0x68,0x20,0x74,0x61,0x73,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x70,0x65,0x72,0x67,0x69,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"雷达定位失败,请在三分钟内重新调整车辆位置",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x23,0x00,0x00,0x00,0x23,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x6D,0x6F,0x73,0x69,0x73,0x69,0x61,0x6E,0x20,0x72,0x61,0x64,0x61,0x72,0x20,0x67,0x61,0x67,0x61,0x6C,0x2C,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3D,0x00,0x00,0x00,0x3D,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x20,0x68,0x61,0x72,0x61,0x70,0x20,0x75,0x62,0x61,0x68,0x20,0x70,0x6F,0x73,0x69,0x73,0x69,0x20,0x6B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x20,0x64,0x61,0x6C,0x61,0x6D,0x20,0x77,0x61,0x6B,0x74,0x75,0x20,0x74,0x69,0x67,0x61,0x20,0x6D,0x65,0x6E,0x69,0x74,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"电池拆卸中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x00,0x00,0x00,0x31,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x73,0x65,0x64,0x61,0x6E,0x67,0x20,0x64,0x69,0x62,0x6F,0x6E,0x67,0x6B,0x61,0x72,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"电池安装中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x32,0x00,0x00,0x00,0x32,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x73,0x65,0x64,0x61,0x6E,0x67,0x20,0x64,0x69,0x70,0x61,0x73,0x61,0x6E,0x67,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"电池包已安装完成",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x25,0x00,0x00,0x00,0x25,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x61,0x6B,0x65,0x74,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x74,0x65,0x72,0x70,0x61,0x73,0x61,0x6E,0x67,0x0D,0x0A,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"航车已回归安全位置",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x38,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x20,0x74,0x65,0x6C,0x61,0x68,0x20,0x64,0x69,0x6B,0x65,0x6D,0x62,0x61,0x6C,0x69,0x6B,0x61,0x6E,0x20,0x6B,0x65,0x20,0x70,0x6F,0x73,0x69,0x73,0x69,0x20,0x61,0x6D,0x61,0x6E,0x6E,0x79,0x61,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"换电已完成,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3B,0x00,0x00,0x00,0x3B,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x72,0x74,0x75,0x6B,0x61,0x72,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x74,0x65,0x6C,0x61,0x68,0x20,0x73,0x65,0x6C,0x65,0x73,0x61,0x69,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x70,0x65,0x72,0x67,0x69,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"换电失败,请驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x34,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x6E,0x67,0x67,0x61,0x6E,0x74,0x69,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x67,0x61,0x67,0x61,0x6C,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x70,0x65,0x72,0x67,0x69,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"电池入仓中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x34,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x73,0x65,0x64,0x61,0x6E,0x67,0x20,0x64,0x69,0x73,0x69,0x6D,0x70,0x61,0x6E,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"电池出仓中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x6B,0x65,0x6C,0x75,0x61,0x72,0x20,0x64,0x61,0x72,0x69,0x20,0x6B,0x6F,0x6D,0x70,0x61,0x72,0x74,0x65,0x6D,0x65,0x6E,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"车辆上锁失败",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x6B,0x65,0x6C,0x75,0x61,0x72,0x20,0x64,0x61,0x72,0x69,0x20,0x6B,0x6F,0x6D,0x70,0x61,0x72,0x74,0x65,0x6D,0x65,0x6E,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"通道的电池仓无可用换电电池",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x34,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x54,0x69,0x64,0x61,0x6B,0x20,0x61,0x64,0x61,0x20,0x70,0x65,0x6E,0x75,0x6B,0x61,0x72,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x79,0x61,0x6E,0x67,0x20,0x74,0x65,0x72,0x73,0x65,0x64,0x69,0x61,0x20,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x26,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x64,0x69,0x20,0x6B,0x6F,0x6D,0x70,0x61,0x72,0x74,0x65,0x6D,0x65,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x73,0x61,0x6C,0x75,0x72,0x61,0x6E,0x00,0x00,0x0D,0x0A, }},
|
|
{"结束充电电池数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x3E,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x41,0x6B,0x68,0x69,0x72,0x69,0x20,0x6A,0x75,0x6D,0x6C,0x61,0x68,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x69,0x73,0x69,0x20,0x75,0x6C,0x61,0x6E,0x67,0x20,0x79,0x61,0x6E,0x67,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x6D,0x65,0x6E,0x63,0x75,0x6B,0x75,0x70,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"空仓数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x2D,0x00,0x00,0x00,0x2D,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4A,0x75,0x6D,0x6C,0x61,0x68,0x20,0x70,0x6F,0x73,0x69,0x73,0x69,0x20,0x73,0x68,0x6F,0x72,0x74,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x6D,0x65,0x6E,0x63,0x75,0x6B,0x75,0x70,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"符合soc限制数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x2A,0x00,0x00,0x00,0x2A,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4A,0x75,0x6D,0x6C,0x61,0x68,0x20,0x62,0x61,0x74,0x61,0x73,0x20,0x53,0x4F,0x43,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x6D,0x65,0x6E,0x63,0x75,0x6B,0x75,0x70,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"结束充电大于3分钟的数量不足",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x48,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4A,0x75,0x6D,0x6C,0x61,0x68,0x20,0x70,0x65,0x6E,0x67,0x69,0x73,0x69,0x61,0x6E,0x20,0x61,0x6B,0x68,0x69,0x72,0x20,0x79,0x61,0x6E,0x67,0x20,0x6C,0x65,0x62,0x69,0x68,0x20,0x64,0x61,0x72,0x69,0x20,0x33,0x20,0x6D,0x65,0x6E,0x69,0x74,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x6D,0x65,0x6E,0x63,0x75,0x6B,0x75,0x70,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
|
|
{"换电站处于手动模式,不能自动换电",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x34,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x53,0x74,0x61,0x73,0x69,0x75,0x6E,0x20,0x70,0x65,0x6E,0x75,0x6B,0x61,0x72,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x64,0x61,0x6C,0x61,0x6D,0x20,0x6D,0x6F,0x64,0x65,0x20,0x6D,0x61,0x6E,0x75,0x61,0x6C,0x20,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x00,0x00,0x00,0x2F,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x64,0x61,0x6E,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x64,0x61,0x70,0x61,0x74,0x20,0x64,0x69,0x67,0x61,0x6E,0x74,0x69,0x20,0x73,0x65,0x63,0x61,0x72,0x61,0x20,0x6F,0x74,0x6F,0x6D,0x61,0x74,0x69,0x73,0x00,0x00,0x0D,0x0A, }},
|
|
{"换电站处于本地模式,不能远程换电",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x00,0x00,0x00,0x33,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x53,0x74,0x61,0x73,0x69,0x75,0x6E,0x20,0x70,0x65,0x6E,0x75,0x6B,0x61,0x72,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x64,0x61,0x6C,0x61,0x6D,0x20,0x6D,0x6F,0x64,0x65,0x20,0x6C,0x6F,0x6B,0x61,0x6C,0x20,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x00,0x00,0x00,0x2F,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x64,0x61,0x6E,0x20,0x74,0x69,0x64,0x61,0x6B,0x20,0x64,0x61,0x70,0x61,0x74,0x20,0x64,0x69,0x74,0x75,0x6B,0x61,0x72,0x20,0x64,0x61,0x72,0x69,0x20,0x6A,0x61,0x72,0x61,0x6B,0x20,0x6A,0x61,0x75,0x68,0x00,0x00,0x0D,0x0A, }},
|
|
{"车辆驶入",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x00,0x00,0x00,0x19,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x20,0x6D,0x61,0x73,0x75,0x6B,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"换电任务启动",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x29,0x00,0x00,0x00,0x29,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x54,0x75,0x67,0x61,0x73,0x20,0x70,0x65,0x6E,0x75,0x6B,0x61,0x72,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x64,0x69,0x6D,0x75,0x6C,0x61,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"雷达定位中,请稍后",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x28,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x6D,0x6F,0x73,0x69,0x73,0x69,0x61,0x6E,0x20,0x72,0x61,0x64,0x61,0x72,0x2C,0x20,0x74,0x6F,0x6C,0x6F,0x6E,0x67,0x20,0x6E,0x61,0x6E,0x74,0x69,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"启动换电失败,请联系站务人员",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x48,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x4A,0x69,0x6B,0x61,0x20,0x70,0x65,0x6E,0x67,0x67,0x61,0x6E,0x74,0x69,0x61,0x6E,0x20,0x62,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x67,0x61,0x67,0x61,0x6C,0x2C,0x20,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x68,0x75,0x62,0x75,0x6E,0x67,0x69,0x20,0x73,0x74,0x61,0x66,0x20,0x73,0x74,0x61,0x73,0x69,0x75,0x6E,0x0D,0x0A,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"即将进行消防移仓,请车辆驶离",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x00,0x00,0x00,0x33,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x6D,0x61,0x64,0x61,0x6D,0x20,0x6B,0x65,0x62,0x61,0x6B,0x61,0x72,0x61,0x6E,0x20,0x61,0x6B,0x61,0x6E,0x20,0x6D,0x65,0x6D,0x69,0x6E,0x64,0x61,0x68,0x6B,0x61,0x6E,0x20,0x67,0x75,0x64,0x61,0x6E,0x67,0x2C,0x20,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x24,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x73,0x69,0x6C,0x61,0x6B,0x61,0x6E,0x20,0x74,0x69,0x6E,0x67,0x67,0x61,0x6C,0x6B,0x61,0x6E,0x20,0x6B,0x65,0x6E,0x64,0x61,0x72,0x61,0x61,0x6E,0x00,0x00,0x0D,0x0A, }},
|
|
{"电池移仓中",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x23,0x00,0x00,0x00,0x23,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x42,0x61,0x74,0x65,0x72,0x61,0x69,0x20,0x73,0x65,0x64,0x61,0x6E,0x67,0x20,0x64,0x69,0x74,0x72,0x61,0x6E,0x73,0x66,0x65,0x72,0x0D,0x0A,0x00,0x00,0x0D,0x0A,}},
|
|
{"消防移仓中",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x26,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x52,0x65,0x6C,0x6F,0x6B,0x61,0x73,0x69,0x20,0x6B,0x65,0x62,0x61,0x6B,0x61,0x72,0x61,0x6E,0x20,0x64,0x69,0x20,0x67,0x75,0x64,0x61,0x6E,0x67,0x0D,0x0A,0x00,0x00,0x0D,0x0A, }},
|
|
{"雷达扫描失败,请在三分钟内挪车",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x50,0x65,0x6D,0x69,0x6E,0x64,0x61,0x69,0x6E,0x20,0x72,0x61,0x64,0x61,0x72,0x20,0x67,0x61,0x67,0x61,0x6C,0x2C,0x20,0x00,0x00,0x0D,0x0A,0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x35,0x00,0x00,0x00,0x35,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3A,0x3A,0x20,0x68,0x61,0x72,0x61,0x70,0x20,0x70,0x69,0x6E,0x64,0x61,0x68,0x6B,0x61,0x6E,0x20,0x6D,0x6F,0x62,0x69,0x6C,0x20,0x64,0x61,0x6C,0x61,0x6D,0x20,0x77,0x61,0x6B,0x74,0x75,0x20,0x74,0x69,0x67,0x61,0x20,0x6D,0x65,0x6E,0x69,0x74,0x00,0x00,0x0D,0x0A, }},
|
|
{"前进",new byte[]{0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3B,0x3A,0x4D,0x75,0x6B,0x61,0x00,0x00,0x0D,0x0A, }},
|
|
{"后退",new byte[]{ 0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0x00,0x0E,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3B,0x3A,0x4D,0x75,0x6E,0x64,0x75,0x72,0x00,0x00,0x0D,0x0A, }},
|
|
{"停好了",new byte[]{ 0x55,0xAA,0x00,0x00,0x01,0x01,0x00,0xD9,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x14,0x00,0x25,0x64,0x69,0x73,0x70,0x30,0x3B,0x3A,0x49,0x74,0x75,0x20,0x64,0x69,0x70,0x61,0x72,0x6B,0x69,0x72,0x00,0x00,0x0D,0x0A,}},
|
|
{"退出重新停车",new byte[]{ 0x55, 0xAA, 0x00, 0x00, 0x01, 0x01, 0x00, 0xD9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x21, 0x00, 0x25, 0x64, 0x69, 0x73, 0x70, 0x30, 0x3B, 0x3A, 0x4B, 0x65, 0x6C, 0x75, 0x61, 0x72, 0x20, 0x64, 0x61, 0x6E, 0x20, 0x70, 0x61, 0x72, 0x6B, 0x69, 0x72, 0x20, 0x6B, 0x65, 0x6D, 0x62, 0x61, 0x6C, 0x69, 0x00, 0x00, 0x0D, 0x0A, }},
|
|
};
|
|
|
|
#endregion
|
|
|
|
private static readonly ILog Log = LogManager.GetLogger(typeof(LedClient));
|
|
private static Socket? _socket;
|
|
private static string _ip = "192.168.3.79";
|
|
private static int _port = 10000;
|
|
|
|
public static bool Init(string ip, int port)
|
|
{
|
|
_ip = ip;
|
|
_port = port;
|
|
Connect();
|
|
if (_socket != null)
|
|
{
|
|
return _socket.Connected;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
|
|
|
|
private static void Connect()
|
|
{
|
|
Log.Info($"begin connect {_ip}:{_port}");
|
|
try
|
|
{
|
|
_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
|
|
_socket.NoDelay = true;
|
|
_socket.Connect(_ip, _port);
|
|
Log.Info($"end connect {_ip}:{_port} {_socket.Connected}");
|
|
}
|
|
catch (SocketException ex)
|
|
{
|
|
Log.Error($"Failed to connect to {_ip}:{_port}. Reason: {ex.Message}");
|
|
_socket?.Close();
|
|
_socket = null;
|
|
}
|
|
}
|
|
|
|
public static bool InnerSend(byte[] bytes)
|
|
{
|
|
if (_socket?.Connected ?? false)
|
|
{
|
|
try
|
|
{
|
|
_socket.Send(bytes);
|
|
Log.Info($"Sent {BitUtls.BytesToHexStr(bytes)}");
|
|
return true;
|
|
}
|
|
catch (SocketException ex)
|
|
{
|
|
Log.Error($"Failed to send data. Reason: {ex.Message}");
|
|
|
|
return false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
|
|
Connect();
|
|
if (_socket?.Connected ?? false)
|
|
{
|
|
_socket.Send(bytes);
|
|
Log.Info($"Sent {BitUtls.BytesToHexStr(bytes)} after reconnect");
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
Log.Error($"Failed to reconnect and send data.");
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
|
|
public static bool SendMsgByKey(string key)
|
|
{
|
|
Log.Info($"send by {key}");
|
|
if (Dictionary.TryGetValue(key, out var bytes))
|
|
{
|
|
return InnerSend(bytes);
|
|
}
|
|
|
|
return false;
|
|
}
|
|
}
|