Пример #1
0
        /// <summary>
        ///   打开socket链接
        /// </summary>
        private ResultModel OpenSocketConnect(CmppConnectionOption opt)
        {
            try
            {
                if (!_socket.Connected)
                {
                    _socket.Connect(opt.IpAddress, opt.Port);
                }

                var connectReq = new ConnectReq(opt.SpCode, opt.Pwd, Option.Version);
                connectReq.MsgHeader.SequenceId = GetNextSequenceId();
                _socket.Send(connectReq.ToBytes());

                opt.ConnectedStatu = ConnectionStatu.Waiting;

                LogUtil.Info("发送打开连接请求", "connect_req");
            }
            catch (Exception ex)
            {
                var keyCode = LogUtil.Error(string.Concat("连接短信服务方异常失败,详情:", ex.Message), "connect_failed");

                opt.ConnectedStatu = ConnectionStatu.Failed;
                return(new ResultModel(ResultTypes.InnerError, string.Concat("连接短信服务方失败,错误码:", keyCode)));
            }
            return(new ResultModel());
        }
Пример #2
0
        static byte[] MarshalToBytes()
        {
            byte[]     bytes;
            ConnectReq connectReq = new ConnectReq {
                Uid = 55555
            };

            using (MemoryStream stream = new MemoryStream()) {
                connectReq.WriteTo(stream);
                bytes = stream.ToArray();
            }
            string str = connectReq.ToString();

            Console.WriteLine("edwin #32 {0}", str);

            foreach (var i in bytes)
            {
                Console.WriteLine(i);
            }
            return(bytes);
        }
Пример #3
0
        static void UnmarshalFromBytes(byte[] bytes)
        {
            ConnectReq connectReq = ConnectReq.Parser.ParseFrom(bytes);

            Console.WriteLine(connectReq.Uid);
        }