/** コンストラクタ. */ public CommandSet() { CommandID = CommID.定数出力; // ARG1 = ""; // ARG2 = ""; // ARG3 = ""; REPEAT_CNT = "1"; PROPERTY = "C"; AUX_DATA = "0"; CONSTANT = "0"; OUT_CNT = "1"; ARG_BASE = "DEC"; ARG_NUM = "1"; ARG_DIV = "1"; ARG_ADD = "0"; ARG_UPPERBIT = "0"; ARG_LOWERBIT = "1"; ARG_HW = "0"; ARG_DELAY = "0"; COMMENT = ""; }
private void MqttClient_RcvDataEvent(byte[] data) { try { if (data?.Length > 0) { switch (data[0]) { case 0x00: if (CommID.ToHexString() != data.SubArray(1, 4).ToHexString()) { MqttClient.Unsubscribe(CommID.GetInt().ToString()); MqttClient.Subscribe(data.SubArray(1, 4).GetInt().ToString()); } CommID = data.SubArray(1, 4); Password = data.SubArray(6, data[5]).ToASCIIString(); break; case 0x01: SelectServerEvent?.BeginInvoke(data[1], null, null); break; case 0x02: RcvImageEvent?.BeginInvoke(data.SubArray(1, data.Length - 1).Bytes2BitMap(), null, null); break; case 0x03: IsCompression = data[1] == 1; CompressionLevel = data[2]; break; case 0x04: IsSession = false; Status = 0; break; case 0x05: RcvKeyEvent?.BeginInvoke(data[1], data[2], null, null); break; case 0x06: int type = (data[1] << 8) | data[2]; int x = (data[3] << 8) | data[4]; int y = (data[5] << 8) | data[6]; int dw = (data[7] << 24) | (data[8] << 16) | (data[9] << 8) | data[10]; int info = (data[11] << 24) | (data[12] << 16) | (data[13] << 8) | data[14]; MouseMoveEvent?.BeginInvoke(type, x, y, dw, info, null, null); break; case 0x07: if (data.Length > 2) { string pwd = data.SubArray(6, data[5]).ToASCIIString(); OtherCommid = data.SubArray(1, 4); OtherCommidStr = OtherCommid.GetInt().ToString(); if (pwd == Password) { MqttClient?.Request(OtherCommidStr, new byte[] { 0x07, 0x00 }); IsSession = true; Status = 1; Conn1Event?.BeginInvoke(null, null); } else { MqttClient?.Request(OtherCommidStr, new byte[] { 0x07, 0x01 }); } } else { if (data[1] == 0x00) { Status = 2; IsSession = true; } Conn2Event?.Invoke(data[1]); } break; } } } catch (Exception ex) { Console.WriteLine(ex.Message + "****" + ex.StackTrace); } }
/** �R���X�g���N�^. */ public CommandSet() { CommandID = CommID.�萔�o��; // ARG1 = ""; // ARG2 = ""; // ARG3 = ""; REPEAT_CNT = "1"; PROPERTY="C"; AUX_DATA="0"; CONSTANT = "0"; OUT_CNT="1"; ARG_BASE="DEC"; ARG_NUM="1"; ARG_DIV="1"; ARG_ADD="0"; ARG_UPPERBIT="0"; ARG_LOWERBIT="1"; ARG_HW="0"; ARG_DELAY="0"; COMMENT = ""; }