CoAP
このモジュールには、CoAP 通信を制御する関数が含まれています。
概要
このモジュールの関数は、CoAP API 機能(OPENTHREAD_CONFIG_COAP_API_ENABLE
)が有効な場合に利用できます。
Typedef |
|
---|---|
otCoapBlockSzx
|
typedefenum otCoapBlockSzx
CoAP ブロックサイズの指数。 |
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength)
|
typedefotError(*
ブロック単位の転送オプションを含む CoAP メッセージを受信すると、ポインタが呼び出されます。 |
otCoapBlockwiseResource
|
typedefstruct otCoapBlockwiseResource
ブロック単位の転送の CoAP リソースを表します。 |
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore)
|
typedefotError(*
ブロック単位の転送で次のブロックが送信される前に、ポインタが呼び出されます。 |
otCoapCode
|
typedefenum otCoapCode
CoAP コードの値。 |
otCoapOption
|
typedefstruct otCoapOption
CoAP オプションを表します。 |
otCoapOptionContentFormat
|
typedef CoAP Content Format コード。 |
otCoapOptionIterator
|
typedefstruct otCoapOptionIterator
CoAP オプションのイテレータとして機能します。 |
otCoapOptionType
|
typedefenum otCoapOptionType
CoAP オプション番号。 |
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
typedefvoid(*
ポインタは、指定された Uri-Path を持つ CoAP リクエストを受信すると呼び出されます。 |
otCoapResource
|
typedefstruct otCoapResource
CoAP リソースを表します。 |
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult)
|
typedefvoid(*
ポインタは、CoAP レスポンスを受信したとき、またはリクエスト タイムアウト時に呼び出されます。 |
otCoapTxParameters
|
typedefstruct otCoapTxParameters
CoAP の伝送パラメータを表します。 |
otCoapType
|
typedefenum otCoapType
CoAP タイプ値(2 ビットの符号なし整数)。 |
関数 |
|
---|---|
otCoapAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
CoAP サーバーにブロック単位のリソースを追加します。
|
otCoapAddResource(otInstance *aInstance, otCoapResource *aResource)
|
void
CoAP サーバーにリソースを追加します。
|
otCoapBlockSizeFromExponent(otCoapBlockSzx aSize)
|
uint16_t
CoAP ブロック オプションの SZX フィールドを実際のブロックサイズに変換します。
|
otCoapMessageAppendBlock1Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
|
Block1 オプションを追加します。
|
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
|
Block2 オプションを追加します。
|
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
|
https://tools.ietf.org/html/rfc7252#page-92 で指定されているように、Content Format CoAP オプションが追加されます。
|
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
|
Max-Age オプションを追加します。
|
otCoapMessageAppendObserveOption(otMessage *aMessage, uint32_t aObserve)
|
Observe オプションを追加します。
|
otCoapMessageAppendOption(otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
|
ヘッダーに CoAP オプションを追加します。
|
otCoapMessageAppendProxyUriOption(otMessage *aMessage, const char *aUriPath)
|
Proxy-Uri オプションを追加します。
|
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
|
https://tools.ietf.org/html/rfc7252#section-3.2 で指定されているとおり、符号なし整数の CoAP オプションを追加します。
|
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
|
Uri-Path オプションを追加します。
|
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
|
単一の URI クエリ オプションを追加します。
|
otCoapMessageCodeToString(const otMessage *aMessage)
|
const char *
CoAP コードを人が読める文字列として返します。
|
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
|
void
トークンの長さを設定し、その値をランダム化します。
|
otCoapMessageGetCode(const otMessage *aMessage)
|
Code 値を返します。
|
otCoapMessageGetMessageId(const otMessage *aMessage)
|
uint16_t
メッセージ ID の値を返します。
|
otCoapMessageGetToken(const otMessage *aMessage)
|
const uint8_t *
トークン値へのポインタを返します。
|
otCoapMessageGetTokenLength(const otMessage *aMessage)
|
uint8_t
トークンの長さを返します。
|
otCoapMessageGetType(const otMessage *aMessage)
|
型の値を返します。
|
otCoapMessageInit(otMessage *aMessage, otCoapType aType, otCoapCode aCode)
|
void
CoAP ヘッダーを初期化します。
|
otCoapMessageInitResponse(otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
|
レスポンス メッセージを初期化します。
|
otCoapMessageSetCode(otMessage *aMessage, otCoapCode aCode)
|
void
Code 値を設定します。
|
otCoapMessageSetPayloadMarker(otMessage *aMessage)
|
ペイロードの先頭を示すペイロード マーカーを CoAP ヘッダーに追加します。
|
otCoapMessageSetToken(otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
|
ヘッダーにトークンの値と長さを設定します。
|
otCoapNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
|
新しい CoAP メッセージを作成します。
|
otCoapOptionIteratorGetFirstOption(otCoapOptionIterator *aIterator)
|
const otCoapOption *
最初のオプションへのポインタを返します。
|
otCoapOptionIteratorGetFirstOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
|
const otCoapOption *
指定されたオプション番号に一致する最初のオプションへのポインタを返します。
|
otCoapOptionIteratorGetNextOption(otCoapOptionIterator *aIterator)
|
const otCoapOption *
次のオプションへのポインタを返します。
|
otCoapOptionIteratorGetNextOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
|
const otCoapOption *
指定されたオプション番号に一致する次のオプションへのポインタを返します。
|
otCoapOptionIteratorGetOptionUintValue(otCoapOptionIterator *aIterator, uint64_t *aValue)
|
現在の値が https://tools.ietf.org/html/rfc7252#section-3.2 に従ってエンコードされた符号なし整数であると仮定して、現在のオプション値を
aValue に入力します。 |
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
|
現在のオプション値を
aValue に入力します。 |
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
|
指定されたメッセージ内のオプションのイテレータを初期化します。
|
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
|
void
CoAP サーバーからブロック単位のリソースを削除します。
|
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
|
void
CoAP サーバーからリソースを削除します。
|
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
|
CoAP リクエストを送信します。
|
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
|
ブロック単位で CoAP リクエストを送信します。
|
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
|
カスタム転送パラメータを使用して、ブロック単位で CoAP リクエストを送信します。
|
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
|
カスタム転送パラメータを指定して CoAP リクエストを送信します。
|
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
|
サーバーから CoAP レスポンスを送信します。
|
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
|
サーバーから CoAP レスポンスをブロックごとに送信します。
|
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
|
カスタム転送パラメータを使用して、サーバーからブロックごとに CoAP レスポンスを送信します。
|
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
|
カスタム転送パラメータを使用してサーバーから CoAP レスポンスを送信します。
|
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
|
void
未処理の CoAP リクエストのデフォルト ハンドラを設定します。
|
otCoapStart(otInstance *aInstance, uint16_t aPort)
|
CoAP サーバーを起動します。
|
otCoapStop(otInstance *aInstance)
|
CoAP サーバーを停止します。
|
構造体 |
|
---|---|
otCoapBlockwiseResource |
ブロック単位の転送の CoAP リソースを表します。 |
otCoapOption |
CoAP オプションを表します。 |
otCoapOptionIterator |
CoAP オプションのイテレータとして機能します。 |
otCoapResource |
CoAP リソースを表します。 |
otCoapTxParameters |
CoAP の伝送パラメータを表します。 |
列挙型
otCoapBlockSzx
otCoapBlockSzx
CoAP ブロックサイズの指数。
otCoapCode
otCoapCode
CoAP コードの値。
otCoapOptionContentFormat
otCoapOptionContentFormat
CoAP Content Format コード。
完全なリストについては、https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats をご覧ください。
プロパティ | |
---|---|
OT_COAP_OPTION_CONTENT_FORMAT_CBOR
|
application/cbor: [RFC7049] |
OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON
|
application/coap-group+json: [RFC7390] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT
|
application/cose; cose-type="cose-encrypt": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0
|
application/cose; cose-type="cose-encrypt0": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY
|
application/cose-key: [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET
|
application/cose-key-set: [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC
|
application/cose; cose-type="cose-mac": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0
|
application/cose; cose-type="cose-mac0": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN
|
application/cose; cose-type="cose-sign": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1
|
application/cose; cose-type="cose-sign1": [RFC8152] |
OT_COAP_OPTION_CONTENT_FORMAT_CWT
|
application/cwt: [RFC8392] |
OT_COAP_OPTION_CONTENT_FORMAT_EXI
|
application/exi: ["Efficient XML Interchange (EXI) Format 1.0 (Second Edition)"、2014 年 2 月] |
OT_COAP_OPTION_CONTENT_FORMAT_JSON
|
application/json: [RFC7159] |
OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON
|
application/json-patch+json: [RFC6902] |
OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT
|
アプリケーション/リンク形式: [RFC6690] |
OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON
|
application/merge-patch+json: [RFC7396] |
OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM
|
application/octet-stream: [RFC2045][RFC2046] |
OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR
|
application/senml+cbor: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI
|
application/senml-exi: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON
|
application/senml+json: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML
|
application/senml+xml: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR
|
application/sensml+cbor: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI
|
application/sensml-exi: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON
|
application/sensml+json: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML
|
application/sensml+xml: [RFC8428] |
OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN
|
text/plain; charset=utf-8: [RFC2046][RFC3676][RFC5147] |
OT_COAP_OPTION_CONTENT_FORMAT_XML
|
application/xml: [RFC3023] |
otCoapOptionType
otCoapOptionType
CoAP オプション番号。
プロパティ | |
---|---|
OT_COAP_OPTION_ACCEPT
|
同意します。 |
OT_COAP_OPTION_BLOCK1
|
Block1(RFC7959) |
OT_COAP_OPTION_BLOCK2
|
Block2(RFC7959) |
OT_COAP_OPTION_CONTENT_FORMAT
|
Content-Format。 |
OT_COAP_OPTION_E_TAG
|
ETag。 |
OT_COAP_OPTION_IF_MATCH
|
if-Match。 |
OT_COAP_OPTION_IF_NONE_MATCH
|
if-None-Match。 |
OT_COAP_OPTION_LOCATION_PATH
|
場所のパス。 |
OT_COAP_OPTION_LOCATION_QUERY
|
地域クエリ。 |
OT_COAP_OPTION_MAX_AGE
|
最長期間。 |
OT_COAP_OPTION_OBSERVE
|
[RFC7641] を確認します。 |
OT_COAP_OPTION_PROXY_SCHEME
|
Proxy-Scheme。 |
OT_COAP_OPTION_PROXY_URI
|
Proxy-Uri。 |
OT_COAP_OPTION_SIZE1
|
サイズ 1。 |
OT_COAP_OPTION_SIZE2
|
Size2(RFC7959) |
OT_COAP_OPTION_URI_HOST
|
URI ホスト。 |
OT_COAP_OPTION_URI_PATH
|
URI パス。 |
OT_COAP_OPTION_URI_PORT
|
URI ポート |
OT_COAP_OPTION_URI_QUERY
|
URI クエリです。 |
otCoapType
otCoapType
CoAP タイプ値(2 ビットの符号なし整数)。
プロパティ | |
---|---|
OT_COAP_TYPE_ACKNOWLEDGMENT
|
確認。 |
OT_COAP_TYPE_CONFIRMABLE
|
確認可能。 |
OT_COAP_TYPE_NON_CONFIRMABLE
|
確認できません。 |
OT_COAP_TYPE_RESET
|
リセット。 |
Typedef
otCoapBlockwiseReceiveHook
otError(* otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength)
ブロック単位の転送オプションを含む CoAP メッセージを受信すると、ポインタが呼び出されます。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
詳細 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||
戻り値 |
|
otCoapBlockwiseResource
struct otCoapBlockwiseResource otCoapBlockwiseResource
ブロック単位の転送の CoAP リソースを表します。
otCoapBlockwiseTransmitHook
otError(* otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore)
ブロック単位の転送で次のブロックが送信される前に、ポインタが呼び出されます。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
aBlockLength の値を変更すると、エクスチェンジ全体のブロックサイズが再交渉されます。後で変更を行うと、他の CoAP 実装で問題が生じる可能性があるため、最初のブロックの受信後に行うことをおすすめします。
詳細 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||
戻り値 |
|
otCoapOptionContentFormat
enum otCoapOptionContentFormat otCoapOptionContentFormat
CoAP Content Format コード。
完全なリストについては、https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats をご覧ください。
otCoapRequestHandler の使用
void(* otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)
ポインタは、指定された Uri-Path を持つ CoAP リクエストを受信すると呼び出されます。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otCoapResponseHandler の使用
void(* otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult)
ポインタは、CoAP レスポンスを受信したとき、またはリクエスト タイムアウト時に呼び出されます。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
関数
otCoapAddBlockWiseResource
void otCoapAddBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
CoAP サーバーにブロック単位のリソースを追加します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapAddResource
void otCoapAddResource( otInstance *aInstance, otCoapResource *aResource )
CoAP サーバーにリソースを追加します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapBlockSizeFromExponent
uint16_t otCoapBlockSizeFromExponent( otCoapBlockSzx aSize )
CoAP ブロック オプションの SZX フィールドを実際のブロックサイズに変換します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
実際のサイズの指数値。
|
otCoapMessageAppendBlock1Option
otError otCoapMessageAppendBlock1Option( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize )
Block1 オプションを追加します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
otCoapMessageAppendBlock2Option
otError otCoapMessageAppendBlock2Option( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize )
Block2 オプションを追加します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
otCoapMessageAppendContentFormatOption
otError otCoapMessageAppendContentFormatOption( otMessage *aMessage, otCoapOptionContentFormat aContentFormat )
https://tools.ietf.org/html/rfc7252#page-92 で指定されているように、Content Format CoAP オプションが追加されます。
ペイロードをメッセージに含める場合は、otCoapMessageSetPayloadMarker を設定する前に呼び出す必要があります。
この関数は otCoapMessageAppendUintOption の便利なラッパーです。目的のフォーマット タイプが otCoapOptionContentFormat に記載されていない場合は、この基本関数を代わりに使用する必要があります。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendMaxAgeOption
otError otCoapMessageAppendMaxAgeOption( otMessage *aMessage, uint32_t aMaxAge )
Max-Age オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendObserveOption
otError otCoapMessageAppendObserveOption( otMessage *aMessage, uint32_t aObserve )
Observe オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendOption
otError otCoapMessageAppendOption( otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue )
ヘッダーに CoAP オプションを追加します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
otCoapMessageAppendProxyUriOption
otError otCoapMessageAppendProxyUriOption( otMessage *aMessage, const char *aUriPath )
Proxy-Uri オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendUintOption
otError otCoapMessageAppendUintOption( otMessage *aMessage, uint16_t aNumber, uint32_t aValue )
https://tools.ietf.org/html/rfc7252#section-3.2 で指定されているとおり、符号なし整数の CoAP オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageGetOptionUintValue
otCoapMessageAppendUriPathOptions
otError otCoapMessageAppendUriPathOptions( otMessage *aMessage, const char *aUriPath )
Uri-Path オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendUriQueryOption
otError otCoapMessageAppendUriQueryOption( otMessage *aMessage, const char *aUriQuery )
単一の URI クエリ オプションを追加します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageCodeToString
const char * otCoapMessageCodeToString( const otMessage *aMessage )
CoAP コードを人が読める文字列として返します。
@ は、CoAP コードを文字列として返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
otCoapMessageGenerateToken
void otCoapMessageGenerateToken( otMessage *aMessage, uint8_t aTokenLength )
トークンの長さを設定し、その値をランダム化します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapMessageGetCode
otCoapCode otCoapMessageGetCode( const otMessage *aMessage )
Code 値を返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
コードの値。
|
otCoapMessageGetMessageId
uint16_t otCoapMessageGetMessageId( const otMessage *aMessage )
メッセージ ID の値を返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
メッセージ ID の値。
|
otCoapMessageGetToken
const uint8_t * otCoapMessageGetToken( const otMessage *aMessage )
トークン値へのポインタを返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
トークン値へのポインタ。
|
otCoapMessageGetTokenLength
uint8_t otCoapMessageGetTokenLength( const otMessage *aMessage )
トークンの長さを返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
トークンの長さ。
|
otCoapMessageGetType
otCoapType otCoapMessageGetType( const otMessage *aMessage )
型の値を返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
Type の値。
|
otCoapMessageInit
void otCoapMessageInit( otMessage *aMessage, otCoapType aType, otCoapCode aCode )
CoAP ヘッダーを初期化します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otCoapMessageInitResponse
otError otCoapMessageInitResponse( otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode )
レスポンス メッセージを初期化します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
otCoapMessageSetCode
void otCoapMessageSetCode( otMessage *aMessage, otCoapCode aCode )
Code 値を設定します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapMessageSetPayloadMarker
otError otCoapMessageSetPayloadMarker( otMessage *aMessage )
ペイロードの先頭を示すペイロード マーカーを CoAP ヘッダーに追加します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otCoapMessageSetToken
otError otCoapMessageSetToken( otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength )
ヘッダーにトークンの値と長さを設定します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapNewMessage
otMessage * otCoapNewMessage( otInstance *aInstance, const otMessageSettings *aSettings )
新しい CoAP メッセージを作成します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
メッセージ バッファへのポインタ。使用可能なメッセージ バッファがない場合、またはパラメータが無効な場合は NULL。
|
otCoapOptionIteratorGetFirstOption
const otCoapOption * otCoapOptionIteratorGetFirstOption( otCoapOptionIterator *aIterator )
最初のオプションへのポインタを返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
最初のオプションへのポインタ。オプションが存在しない場合は、NULL ポインタが返されます。
|
otCoapOptionIteratorGetFirstOptionMatching
const otCoapOption * otCoapOptionIteratorGetFirstOptionMatching( otCoapOptionIterator *aIterator, uint16_t aOption )
指定されたオプション番号に一致する最初のオプションへのポインタを返します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
最初に一致したオプションへのポインタ。一致するオプションが存在しない場合、NULL ポインタが返されます。
|
otCoapOptionIteratorGetNextOption
const otCoapOption * otCoapOptionIteratorGetNextOption( otCoapOptionIterator *aIterator )
次のオプションへのポインタを返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
次のオプションへのポインタ。これ以上オプションが存在しない場合は、NULL ポインタが返されます。
|
otCoapOptionIteratorGetNextOptionMatching
const otCoapOption * otCoapOptionIteratorGetNextOptionMatching( otCoapOptionIterator *aIterator, uint16_t aOption )
指定されたオプション番号に一致する次のオプションへのポインタを返します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
次の一致オプションへのポインタ。一致するオプションが存在しない場合、NULL ポインタが返されます。
|
otCoapOptionIteratorGetOptionUintValue
otError otCoapOptionIteratorGetOptionUintValue( otCoapOptionIterator *aIterator, uint64_t *aValue )
現在の値が https://tools.ietf.org/html/rfc7252#section-3.2 に従ってエンコードされた符号なし整数であると仮定して、現在のオプション値を aValue
に入力します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapMessageAppendUintOption
otCoapOptionIteratorGetOptionValue
otError otCoapOptionIteratorGetOptionValue( otCoapOptionIterator *aIterator, void *aValue )
現在のオプション値を aValue
に入力します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otCoapOptionIteratorInit
otError otCoapOptionIteratorInit( otCoapOptionIterator *aIterator, const otMessage *aMessage )
指定されたメッセージ内のオプションのイテレータを初期化します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otCoapRemoveBlockWiseResource
void otCoapRemoveBlockWiseResource( otInstance *aInstance, otCoapBlockwiseResource *aResource )
CoAP サーバーからブロック単位のリソースを削除します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapRemoveResource
void otCoapRemoveResource( otInstance *aInstance, otCoapResource *aResource )
CoAP サーバーからリソースを削除します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
otCoapSendRequest
otError otCoapSendRequest( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext )
CoAP リクエストを送信します。
リクエストに対するレスポンスが期待される場合、対応する機能とコンテキスト情報を提供する必要があります。レスポンスが想定されない場合は、これらの引数を NULL ポインタにする必要があります。
詳細 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||
戻り値 |
|
otCoapSendRequestBlockWise
otError otCoapSendRequestBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
ブロック単位で CoAP リクエストを送信します。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
リクエストに対するレスポンスが期待される場合、対応する機能とコンテキスト情報を提供する必要があります。レスポンスがブロック単位であると想定される場合は、それぞれのフック関数を指定する必要があります。レスポンスが想定されない場合は、これらの引数を NULL ポインタにする必要があります。
詳細 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||||
戻り値 |
|
otCoapSendRequestBlockWiseWithParameters
otError otCoapSendRequestBlockWiseWithParameters( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook )
カスタム転送パラメータを使用して、ブロック単位で CoAP リクエストを送信します。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
リクエストに対するレスポンスが期待される場合、対応する機能とコンテキスト情報を提供する必要があります。レスポンスがブロック単位であると想定される場合は、それぞれのフック関数を指定する必要があります。レスポンスが想定されない場合は、これらの引数を NULL ポインタにする必要があります。
詳細 | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||||||
戻り値 |
|
otCoapSendRequestWithParameters
otError otCoapSendRequestWithParameters( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters )
カスタム転送パラメータを指定して CoAP リクエストを送信します。
リクエストに対するレスポンスが期待される場合、対応する機能とコンテキスト情報を提供する必要があります。レスポンスが想定されない場合は、これらの引数を NULL ポインタにする必要があります。
詳細 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||
戻り値 |
|
otCoapSendResponse
otError otCoapSendResponse( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo )
サーバーから CoAP レスポンスを送信します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
||||||
戻り値 |
|
otCoapSendResponseBlockWise
otError otCoapSendResponseBlockWise( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
サーバーから CoAP レスポンスをブロックごとに送信します。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
詳細 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||
戻り値 |
|
otCoapSendResponseBlockWiseWithParameters
otError otCoapSendResponseBlockWiseWithParameters( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook )
カスタム転送パラメータを使用して、サーバーからブロックごとに CoAP レスポンスを送信します。
OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に使用できます。
詳細 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||||||
戻り値 |
|
otCoapSendResponseWithParameters
otError otCoapSendResponseWithParameters( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters )
カスタム転送パラメータを使用してサーバーから CoAP レスポンスを送信します。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
||||||||
戻り値 |
|
otCoapSetDefaultHandler の使用
void otCoapSetDefaultHandler( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext )
未処理の CoAP リクエストのデフォルト ハンドラを設定します。
詳細 | |||||||
---|---|---|---|---|---|---|---|
パラメータ |
|
otCoapStart
otError otCoapStart( otInstance *aInstance, uint16_t aPort )
CoAP サーバーを起動します。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
||||
戻り値 |
|
otCoapStop
otError otCoapStop( otInstance *aInstance )
CoAP サーバーを停止します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
|
マクロ
OT_COAP_CODE
OT_COAP_CODE ((((c)&0x7) << 5) | ((d)&0x1f))
CoAP コードの値を定義するヘルパーマクロ。
OT_COAP_DEFAULT_TOKEN_LENGTH
OT_COAP_DEFAULT_TOKEN_LENGTH 2
トークンのデフォルトの長さ。
OT_COAP_MAX_RETRANSMIT
OT_COAP_MAX_RETRANSMIT 20
OpenThread でサポートされる最大再送回数。
OT_COAP_MAX_TOKEN_LENGTH
OT_COAP_MAX_TOKEN_LENGTH 8
指定された最大トークン長(RFC 7252)。
OT_COAP_MIN_ACK_TIMEOUT
OT_COAP_MIN_ACK_TIMEOUT 1000
OpenThread でサポートされる最小の ACK タイムアウト(ミリ秒)。
OT_DEFAULT_COAP_PORT
OT_DEFAULT_COAP_PORT 5683
RFC 7252 で規定されているデフォルトの CoAP ポート。
関連情報
OpenThread API リファレンス トピックは、GitHub で入手可能なソースコードに基づいています。詳細やドキュメントへの貢献については、リソースをご覧ください。