Example #1
0
    public bool SendMessage(string mobileNo, string message)
    {
        //短信PDU编码
        string msgPDU = _enCodingPDU.EncodedSM(this._centerNo, mobileNo, message);
        //PDU编码格式下,短信长度
        string legthMsg = _enCodingPDU.NLength;
        //发送短信at指令,发送短信长度
        string atcmgs = "AT+CMGS=" + legthMsg + (char)13;

        strSendMessage = atcmgs;

        _channel.Send(atcmgs);
        //启动超时接收
        //_atCmgsResult = true;
        //WaitReceive(1500);
        ////At发送失败
        //if (!_atCmgsResult)
        //{
        //    //byte[] ctrZ = new byte[1];
        //    //ctrZ[0] = 0X1A;
        //    //_channel.Send(ctrZ);
        //    Refresh();
        //    return false;
        //}
        strSendMessage += "," + msgPDU;
        //发送短信息内容
        _channel.Send(msgPDU);
        //启动超时接收
        //_msgSendResult = false;
        //WaitReceive(15000);

        ////duanxin
        //if (!_msgSendResult)
        //{
        //    //ModemClear();
        //    //下面是2009-03-02
        //    Refresh();
        //    //上面是2009-03-02
        //    return false;
        //}
        return(true);
    }
Example #2
0
        private void Ac_ReadCallback(AChannel ac, MemoryStream ms)
        {
            var str_rv = Encoding.UTF8.GetString(ms.ToArray());

            Log.Debug($"{ac.Id}Msg:{str_rv}");
            var word_byts = Encoding.UTF8.GetBytes("Server:" + str_rv);

            ms.Write(word_byts, 0, word_byts.Length);
            ms.Position = 0;
            ac.Send(ms);
        }
Example #3
0
        public void SendMessage(ushort nOpcode, byte[] rMessageBytes)
        {
            if (rMessageBytes.Length > 100)
            {
                byte[] rNewMessageBytes = ZipHelper.Compress(rMessageBytes);
                if (rNewMessageBytes.Length < rMessageBytes.Length)
                {
                    rMessageBytes = rNewMessageBytes;
                    nOpcode      |= 0x8000;
                }
            }

            byte[] rOpcodeBytes = BitConverter.GetBytes(nOpcode);

            this.mByteses[0] = rOpcodeBytes;
            this.mByteses[1] = rMessageBytes;

            mChannel.Send(this.mByteses);
        }
Example #4
0
    public void OnGUI()
    {
        if (ChannelType == NetworkProtocol.TCP)
        {
            GUILayout.BeginVertical();
            if (GUILayout.Button("Connect", GUILayout.Width(200)))
            {
                m_AChannel = (TChannel)m_AService.ConnectChannel(NetHelper.ToIPEndPoint("127.0.0.1", 2500));
                m_AChannel.ReadCallback += AChannel_ReadCallback;
            }

            if (GUILayout.Button("Send", GUILayout.Width(200)))
            {
                using (var mem = new MemoryStream())
                {
                    var word_byts = Encoding.UTF8.GetBytes("Hello Tcp!");
                    mem.Write(word_byts, 0, word_byts.Length);
                    mem.Position = 0;
                    m_AChannel.Send(mem);
                }
            }

            if (GUILayout.Button("DisConnect", GUILayout.Width(200)))
            {
                m_AChannel.DisConnect();
            }
            GUILayout.EndVertical();
        }
        else if (ChannelType == NetworkProtocol.KCP)
        {
            GUILayout.BeginVertical();
            if (GUILayout.Button("Connect", GUILayout.Width(200)))
            {
                m_AChannel = m_AService.ConnectChannel(NetHelper.ToIPEndPoint("127.0.0.1", 2000));
                m_AChannel.ReadCallback += AChannel_ReadCallback;
            }

            if (GUILayout.Button("Send", GUILayout.Width(200)))
            {
                using (var mem = new MemoryStream())
                {
                    var word_byts = Encoding.UTF8.GetBytes("Hello Kcp!");
                    mem.Write(word_byts, 0, word_byts.Length);
                    mem.Position = 0;
                    m_AChannel.Send(mem);
                }
            }

            if (GUILayout.Button("DisConnect", GUILayout.Width(200)))
            {
                m_AChannel.DisConnect();
            }
            GUILayout.EndVertical();
        }
        else if (ChannelType == NetworkProtocol.WebSocket)
        {
            GUILayout.BeginVertical();
            if (GUILayout.Button("Connect", GUILayout.Width(200)))
            {
                m_AChannel = m_AService.ConnectChannel("ws://127.0.0.1:3000/");
                m_AChannel.ReadCallback += AChannel_ReadCallback;
            }

            if (GUILayout.Button("Send", GUILayout.Width(200)))
            {
                using (var mem = new MemoryStream())
                {
                    var word_byts = Encoding.UTF8.GetBytes("Hello websocket!");
                    mem.Write(word_byts, 0, word_byts.Length);
                    mem.Position = 0;
                    m_AChannel.Send(mem);
                }
            }

            if (GUILayout.Button("DisConnect", GUILayout.Width(200)))
            {
                m_AChannel.DisConnect();
            }
            GUILayout.EndVertical();
        }
    }