Beispiel #1
0
        /** コンストラクタ.
         */
        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      = "";
        }
Beispiel #2
0
        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);
            }
        }
Beispiel #3
0
 /** �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 = "";
 }