Ejemplo n.º 1
0
 public CoapRequest(CoapMethod method, CoapMessageType type)
 {
     MessageType = type;
     Method      = method;
     Token       = new byte[] { };
     Options     = new List <CoapOption>();
 }
Ejemplo n.º 2
0
        // construct message with token
        public CoapMessage(CoapMessageType type, byte[] token, CoapMessageCode code) : this(type, code)
        {
            if (token.Length > 8)
            {
                throw new CoapMessageFormatException("Token length must be 0-8 characters");
            }

            TokenValue = token;
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Create a new <c>text/plain</c> CoAP message
 /// </summary>
 /// <param name="code"></param>
 /// <param name="message"></param>
 /// <param name="type"></param>
 /// <returns></returns>
 public static CoapMessage Create(CoapMessageCode code, string message, CoapMessageType type = CoapMessageType.Confirmable)
 {
     return(new CoapMessage
     {
         Code = code,
         Type = type,
         Options = { new ContentFormat(ContentFormatType.TextPlain) },
         Payload = Encoding.UTF8.GetBytes(message)
     });
 }
Ejemplo n.º 4
0
 internal CoapMessage(CoapMessageType Type, CoapCode Code, ushort MessageId, ulong Token, CoapOption[] Options, byte[] Payload,
                      IPEndPoint From)
 {
     this.type      = Type;
     this.code      = Code;
     this.messageId = MessageId;
     this.token     = Token;
     this.options   = Options;
     this.payload   = Payload;
     this.from      = From;
 }
Ejemplo n.º 5
0
        public void SendDelete(Uri uri, bool reliable)
        {
            CoapMessageType type = CoapMessageType.NonConfirmable;

            if (reliable)
            {
                type = CoapMessageType.Confirmable;
            }

            CoapMessage message = new CoapMessage(type, CoapMessageCode.DELETE);

            message.Uri = uri;
            SendRequest(message);
        }
Ejemplo n.º 6
0
        public void SendPut(Uri uri, bool reliable, string content)
        {
            CoapMessageType type = CoapMessageType.NonConfirmable;

            if (reliable)
            {
                type = CoapMessageType.Confirmable;
            }

            CoapMessage message = new CoapMessage(type, CoapMessageCode.PUT);

            message.Uri     = uri;
            message.Payload = System.Text.Encoding.UTF8.GetBytes(content);
            SendRequest(message);
        }
Ejemplo n.º 7
0
        public CoapMessageIdentifier(CoapMessage message, ICoapEndpoint endpoint = null, bool isRequest = false)
        {
            Id          = message.Id;
            MessageType = message.Type;
            Endpoint    = endpoint;
            IsRequest   = isRequest;

            // Even no tokens are treated as a zero-length token representing 0x0
            Token = new byte[message.Token?.Length ?? 0];

            if (message.Token != null)
            {
                Array.Copy(message.Token, Token, message.Token.Length);
            }
        }
Ejemplo n.º 8
0
        public void SendPost(IPEndPoint destination, Uri uri, bool reliable, string content)
        {
            CoapMessageType type = CoapMessageType.NonConfirmable;

            if (reliable)
            {
                type = CoapMessageType.Confirmable;
            }

            CoapMessage message = new CoapMessage(type, CoapMessageCode.POST);

            message.Destination = destination;
            message.Uri         = uri;
            message.Payload     = content == null ? null : System.Text.Encoding.UTF8.GetBytes(content);
            SendRequest(message);
        }
Ejemplo n.º 9
0
 public CoapMessageIdentifier(int id, CoapMessageType messageType, in byte[] token = null, ICoapEndpoint endpoint = null, bool isRequest = false)
Ejemplo n.º 10
0
 public static CoapMessage CreateMessage(CoapMessageCode code, string message, CoapMessageType type = CoapMessageType.Confirmable)
 => CoapMessage.Create(code, message, type);
Ejemplo n.º 11
0
 // Construct a request message with payload
 public CoapRequest(CoapMessageType type, CoapMessageCode code, Uri uri, byte[] payload, ContentFormat format) : this(type, code, uri)
 {
     Payload = payload;
 }
Ejemplo n.º 12
0
 // Construct a request message without payload
 public CoapRequest(CoapMessageType type, CoapMessageCode code, Uri uri)
 {
     Type = type;
     Uri  = uri;
     Code = code;
 }
Ejemplo n.º 13
0
 // useful constructor for serialising messages
 public CoapMessage(CoapMessageType type, CoapMessageCode code) : this()
 {
     Type = type;
     Code = code;
 }
Ejemplo n.º 14
0
 // construct request with url, token and payload
 public CoapMessage(CoapMessageType type, byte[] token, CoapMessageCode code, Uri url, byte[] payload) : this(type, token, code, url)
 {
     Payload = payload;
 }
Ejemplo n.º 15
0
 // construct request with url and token
 public CoapMessage(CoapMessageType type, byte[] token, CoapMessageCode code, Uri url) : this(type, token, code)
 {
     Uri = url;
 }
Ejemplo n.º 16
0
 // construct request with url
 public CoapMessage(CoapMessageType type, CoapMessageCode code, Uri url) : this(type, code)
 {
     Uri = url;
 }