Documentation

Documentation

Includes

address.h

#include "address.h"
#include "address.h"

coap_io.h

#include "coap_io.h"
#include "coap_io.h"

block.h

#include "block.h"
#include "block.h"

Macros

Marco COAP_SUBSCRIBE_H_

#define COAP_SUBSCRIBE_H_


      

Marco COAP_OBSERVE_ESTABLISH

#define COAP_OBSERVE_ESTABLISH 0
/**
 * The value COAP_OBSERVE_ESTABLISH in a GET request indicates a new observe
 * relationship for (sender address, token) is requested.
 */

Marco COAP_OBSERVE_CANCEL

#define COAP_OBSERVE_CANCEL 1
/**
 * The value COAP_OBSERVE_CANCEL in a GET request indicates that the observe
 * relationship for (sender address, token) must be cancelled.
 */

Marco COAP_OBS_MAX_NON

#define COAP_OBS_MAX_NON  5
/**
 * Number of notifications that may be sent non-confirmable before a confirmable
 * message is sent to detect if observers are alive. The maximum allowed value
 * here is @c 15.
 */

Marco COAP_OBS_MAX_FAIL

#define COAP_OBS_MAX_FAIL 3
/**
 * Number of confirmable notifications that may fail (i.e. time out without
 * being ACKed) before an observer is removed. The maximum value for
 * COAP_OBS_MAX_FAIL is @c 3.
 */

Functions

Func coap_subscription_init

void coap_subscription_init(coap_subscription_t *);

      

Vars

Consts

Types

Typedefs

Typedef coap_subscription_t;

typedef struct coap_subscription_t {
 struct coap_subscription_t *next; /**< next element in linked list */
 coap_session_t *session;         /**< subscriber session */

 unsigned int non_cnt:4; /**< up to 15 non-confirmable notifies allowed */
 unsigned int fail_cnt:2; /**< up to 3 confirmable notifies can fail */
 unsigned int dirty:1;   /**< set if the notification temporarily could not be
                            *   sent (in that case, the resource's partially
                            *   dirty flag is set too) */
 unsigned int has_block2:1; /**< GET request had Block2 definition */
 coap_block_t block2;    /**< GET request Block2 definition */
 size_t token_length;    /**< actual length of token */
 unsigned char token[8]; /**< token used for subscription */
 coap_string_t *query;   /**< query string used for subscription, if any */
} coap_subscription_t;
/** Subscriber information */