コード例 #1
0
 /// <summary>
 /// 与USSDG保持连接
 /// </summary>
 public void SendKeepAliveToUSSDG()
 {
     if (this._asClient != null)
     {
         if (this._asClient.Connected)
         {
             UapEnquireLink link = new UapEnquireLink();
             try
             {
                 this.SendUap(link);
                 //_asClient.Send(link.GetPacket());
             }
             catch
             {
                 this.Rebind(0);
             }
         }
         else
         {
             this.Rebind(0);
         }
     }
 }
コード例 #2
0
        /// <summary>
        /// Gets a single Uap based on the response bytes.
        /// </summary>
        /// <param name="response">The response.</param>
        /// <returns>The Uap corresponding to the bytes.</returns>
        private static UapBase GetUap(byte[] response)
        {
            UapBase.CommandIdType commandID = UapBase.DecodeCommandId(response);
            UapBase packet;

            switch (commandID)
            {
            case UapBase.CommandIdType.Bind:
                packet = new UapBind(response);
                break;

            case UapBase.CommandIdType.BindResp:
                packet = new UapBindResp(response);
                break;

            case UapBase.CommandIdType.Unbind:
                packet = new UapUnbind(response);
                break;

            case UapBase.CommandIdType.UnbindResp:
                packet = new UapUnbindResp(response);
                break;

            case UapBase.CommandIdType.EnquireLink:
                packet = new UapEnquireLink(response);
                break;

            case UapBase.CommandIdType.EnquireLinkResp:
                packet = new UapEnquireLinkResp(response);
                break;

            case UapBase.CommandIdType.Begin:
                packet = new UapBegin(response);
                break;

            case UapBase.CommandIdType.Continue:
                packet = new UapContinue(response);
                break;

            case UapBase.CommandIdType.End:
                packet = new UapEnd(response);
                break;

            case UapBase.CommandIdType.Abort:
                packet = new UapAbort(response);
                break;

            case UapBase.CommandIdType.Switch:
                packet = new UapSwitch(response);
                break;

            case UapBase.CommandIdType.Chargeind:
                packet = new UapChargeind(response);
                break;

            case UapBase.CommandIdType.ChargeindResp:
                packet = new UapChargeindResp(response);
                break;

            case UapBase.CommandIdType.SwitchBegin:
                packet = new UapSwitchBegin(response);
                break;

            case UapBase.CommandIdType.None:
            default:
                packet = null;
                break;
            }
            return(packet);
        }