Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

CoAP

このモジュールには、CoAP 通信を制御する関数が含まれています。

概要

このモジュールの関数は、CoAP API 機能(OPENTHREAD_CONFIG_COAP_API_ENABLE)が有効な場合に利用可能です。

列挙型

otCoapBlockSzx 列挙型
CoAP ブロックサイズの指数。
otCoapCode{
  OT_COAP_CODE_EMPTY = (((( 0 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_GET = (((( 0 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_POST = (((( 0 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_PUT = (((( 0 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_DELETE = (((( 0 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_RESPONSE_MIN = (((( 2 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_CREATED = (((( 2 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_DELETED = (((( 2 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_VALID = (((( 2 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_CHANGED = (((( 2 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_CONTENT = (((( 2 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_CONTINUE = (((( 2 )&0x7) << 5) | (( 31 )&0x1f)),
  OT_COAP_CODE_BAD_REQUEST = (((( 4 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_UNAUTHORIZED = (((( 4 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_OPTION = (((( 4 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_FORBIDDEN = (((( 4 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_NOT_FOUND = (((( 4 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_METHOD_NOT_ALLOWED = (((( 4 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_NOT_ACCEPTABLE = (((( 4 )&0x7) << 5) | (( 6 )&0x1f)),
  OT_COAP_CODE_REQUEST_INCOMPLETE = (((( 4 )&0x7) << 5) | (( 8 )&0x1f)),
  OT_COAP_CODE_PRECONDITION_FAILED = (((( 4 )&0x7) << 5) | (( 12 )&0x1f)),
  OT_COAP_CODE_REQUEST_TOO_LARGE = (((( 4 )&0x7) << 5) | (( 13 )&0x1f)),
  OT_COAP_CODE_UNSUPPORTED_FORMAT = (((( 4 )&0x7) << 5) | (( 15 )&0x1f)),
  OT_COAP_CODE_INTERNAL_ERROR = (((( 5 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_NOT_IMPLEMENTED = (((( 5 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_GATEWAY = (((( 5 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_SERVICE_UNAVAILABLE = (((( 5 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_GATEWAY_TIMEOUT = (((( 5 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_PROXY_NOT_SUPPORTED = (((( 5 )&0x7) << 5) | (( 5 )&0x1f))
}
列挙型
CoAP コードの値。
otCoapOptionContentFormat{
  OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN = 0,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0 = 16,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0 = 17,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1 = 18,
  OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT = 40,
  OT_COAP_OPTION_CONTENT_FORMAT_XML = 41,
  OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM = 42,
  OT_COAP_OPTION_CONTENT_FORMAT_EXI = 47,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON = 50,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON = 51,
  OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON = 52,
  OT_COAP_OPTION_CONTENT_FORMAT_CBOR = 60,
  OT_COAP_OPTION_CONTENT_FORMAT_CWT = 61,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT = 96,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC = 97,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN = 98,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY = 101,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET = 102,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON = 110,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON = 111,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR = 112,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR = 113,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI = 114,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI = 115,
  OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON = 256,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML = 310,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML = 311
}
列挙型
CoAP コンテンツ形式コード
otCoapOptionType{
  OT_COAP_OPTION_IF_MATCH = 1,
  OT_COAP_OPTION_URI_HOST = 3,
  OT_COAP_OPTION_E_TAG = 4,
  OT_COAP_OPTION_IF_NONE_MATCH = 5,
  OT_COAP_OPTION_OBSERVE = 6,
  OT_COAP_OPTION_URI_PORT = 7,
  OT_COAP_OPTION_LOCATION_PATH = 8,
  OT_COAP_OPTION_URI_PATH = 11,
  OT_COAP_OPTION_CONTENT_FORMAT = 12,
  OT_COAP_OPTION_MAX_AGE = 14,
  OT_COAP_OPTION_URI_QUERY = 15,
  OT_COAP_OPTION_ACCEPT = 17,
  OT_COAP_OPTION_LOCATION_QUERY = 20,
  OT_COAP_OPTION_BLOCK2 = 23,
  OT_COAP_OPTION_BLOCK1 = 27,
  OT_COAP_OPTION_SIZE2 = 28,
  OT_COAP_OPTION_PROXY_URI = 35,
  OT_COAP_OPTION_PROXY_SCHEME = 39,
  OT_COAP_OPTION_SIZE1 = 60
}
列挙型
CoAP オプション番号
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
列挙型
CoAP タイプ値(2 ビットの符号なし整数)。

Typedef

otCoapBlockSzx typedef
CoAP ブロックサイズの指数。
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) typedef
この関数ポインタは、ブロック単位の転送オプションを持つ CoAP メッセージを受信すると呼び出されます。
otCoapBlockwiseResource typedef
この構造は、ブロック単位の転送を使用する CoAP リソースを表します。
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) typedef
この関数ポインタは、ブロック単位の転送の次のブロックが送信される前に呼び出されます。
otCoapCode typedef
enum otCoapCode
CoAP コードの値。
otCoapOption typedef
struct otCoapOption
この構造は CoAP オプションを表します。
otCoapOptionContentFormat typedef
CoAP コンテンツ形式コード
otCoapOptionIterator typedef
この構造は、CoAP オプションのイテレータとして機能します。
otCoapOptionType typedef
CoAP オプション番号
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
この関数ポインタは、指定された Uri-Path を持つ CoAP リクエストを受信すると呼び出されます。
otCoapResource typedef
この構造は CoAP リソースを表します。
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
この関数ポインタは、CoAP レスポンスが受信されたときまたはリクエストのタイムアウト時に呼び出されます。
otCoapTxParameters typedef
この構造は、CoAP 送信パラメータを表します。
otCoapType typedef
enum 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)
この関数は、最長存続期間のオプションを追加します。
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-Query オプションを追加します。
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
このメソッドは、CoAP コードを人が読める文字列として返します。
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
この関数は、トークンの長さを設定し、その値をランダム化します。
otCoapMessageGetCode(const otMessage *aMessage)
この関数は、コード値を返します。
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
この関数はメッセージ ID の値を返します。
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
この関数は、Token 値へのポインタを返します。
otCoapMessageGetTokenLength(const otMessage *aMessage)
uint8_t
この関数はトークンの長さを返します。
otCoapMessageGetType(const otMessage *aMessage)
この関数は、Type の値を返します。
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 コードの値。

Properties
OT_COAP_CODE_BAD_GATEWAY

不正なゲートウェイです。

OT_COAP_CODE_BAD_OPTION

選択肢が不適切です。

OT_COAP_CODE_BAD_REQUEST

不正なリクエストです。

OT_COAP_CODE_CHANGED

変更しました。

OT_COAP_CODE_CONTENT

コンテンツ。

OT_COAP_CODE_CONTINUE

RFC7959 続行。

OT_COAP_CODE_CREATED

作成しました。

OT_COAP_CODE_DELETE

削除] をクリックします。

OT_COAP_CODE_DELETED

削除されました。

OT_COAP_CODE_EMPTY

メッセージ コードが空です。

OT_COAP_CODE_FORBIDDEN

禁止。

OT_COAP_CODE_GATEWAY_TIMEOUT

ゲートウェイ タイムアウト。

OT_COAP_CODE_GET

さあ、

OT_COAP_CODE_INTERNAL_ERROR

内部サーバーエラーです。

OT_COAP_CODE_METHOD_NOT_ALLOWED

許可されていないメソッド。

OT_COAP_CODE_NOT_ACCEPTABLE

許可されない

OT_COAP_CODE_NOT_FOUND

ページが見つかりません。

OT_COAP_CODE_NOT_IMPLEMENTED

実装されていません。

OT_COAP_CODE_POST

投稿。

OT_COAP_CODE_PRECONDITION_FAILED

前提条件で失敗しました。

OT_COAP_CODE_PROXY_NOT_SUPPORTED

プロキシはサポートされていません。

OT_COAP_CODE_PUT

置いて

OT_COAP_CODE_REQUEST_INCOMPLETE

RFC7959 Request Entity Incomplete です。

OT_COAP_CODE_REQUEST_TOO_LARGE

リクエスト エンティティが大きすぎます。

OT_COAP_CODE_RESPONSE_MIN

2.00

OT_COAP_CODE_SERVICE_UNAVAILABLE

サービスを利用できません。

OT_COAP_CODE_UNAUTHORIZED

未承認。

OT_COAP_CODE_UNSUPPORTED_FORMAT

サポートされていないコンテンツ形式です。

OT_COAP_CODE_VALID

有効です。

otCoapOptionContentFormat(英語)

 otCoapOptionContentFormat

CoAP コンテンツ形式コード

詳細なリストについては、https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats をご覧ください。

Properties
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

申請/作成 cose-type="cose-encrypt": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

申請/作成 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

申請/作成 cose-type="cose-mac": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

申請/作成 cose-type="cose-mac0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

申請/作成 cose-type="cose-sign": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

申請/作成 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

application/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 オプション番号

Properties
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

Location-Path。

OT_COAP_OPTION_LOCATION_QUERY

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-Host

OT_COAP_OPTION_URI_PATH

Uri-Path。

OT_COAP_OPTION_URI_PORT

URI ポート。

OT_COAP_OPTION_URI_QUERY

Uri-Query。

otCoapType

 otCoapType

CoAP タイプ値(2 ビットの符号なし整数)。

Properties
OT_COAP_TYPE_ACKNOWLEDGMENT

謝辞。

OT_COAP_TYPE_CONFIRMABLE

確認可能です。

OT_COAP_TYPE_NON_CONFIRMABLE

確認できません。

OT_COAP_TYPE_RESET

リセット

Typedef

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

CoAP ブロックサイズの指数。

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 構成が有効な場合に利用可能です。

詳細
パラメータ
[in] aContext
アプリ固有のコンテキストへのポインタ。
[in] aBlock
ブロック セグメントへのポインタ。
[in] aPosition
シーケンス内の aBlock の位置(バイト単位)。
[in] aBlockLength
ブロック セグメントの長さ(バイト数)。
[in] aMore
ブロック セグメントが他にもある場合にフラグを付ける。
[in] aTotalLength
転送された情報の合計サイズ(バイト単位)。Size1 または Size2 オプションで指定します。
戻り値
OT_ERROR_NONE
ブロック セグメントが正常に保存されました。
OT_ERROR_NO_BUFS
ブロックを格納するためのメモリがなくなりました。
OT_ERROR_NO_FRAME_RECEIVED
ブロック セグメントが見つかりません。

otCoapBlockwiseResource(OTC によるブロックワイズ リソース)

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 の実装で問題が生じる可能性があるため、変更することをおすすめします。

詳細
パラメータ
[in] aContext
アプリ固有のコンテキストへのポインタ。
[in,out] aBlock
ブロック セグメントの書き込み先のポインタ。
[in] aPosition
ブロック セグメントの取得元となるシーケンス内の位置。
[in,out] aBlockLength
エントリ時のブロック セグメントの最大文字数。
[out] aMore
ブロック セグメントが続く場合にフラグを指すポインタ。
戻り値
OT_ERROR_NONE
エラーが発生しませんでした。
OT_ERROR_INVALID_ARGS
aPosition のブロックは存在しません。

OTCoapCode

enum otCoapCode otCoapCode

CoAP コードの値。

otCoapOption

struct otCoapOption otCoapOption

この構造は CoAP オプションを表します。

otCoapOptionContentFormat(英語)

enum otCoapOptionContentFormat otCoapOptionContentFormat

CoAP コンテンツ形式コード

詳細なリストについては、https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats をご覧ください。

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

この構造は、CoAP オプションのイテレータとして機能します。

otCoapOptionType

enum otCoapOptionType otCoapOptionType

CoAP オプション番号

otCoapRequestHandler

void(* otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)

この関数ポインタは、指定された Uri-Path を持つ CoAP リクエストを受信すると呼び出されます。

詳細
パラメータ
[in] aContext
任意のコンテキスト情報へのポインタ。
[in] aMessage
メッセージへのポインタ。
[in] aMessageInfo
aMessage のメッセージ情報へのポインタ。

otCoapResource

struct otCoapResource otCoapResource

この構造は CoAP リソースを表します。

otCoapResponseHandler

void(* otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult)

この関数ポインタは、CoAP レスポンスが受信されたときまたはリクエストのタイムアウト時に呼び出されます。

詳細
パラメータ
[in] aContext
アプリ固有のコンテキストへのポインタ。
[in] aMessage
レスポンスを含むメッセージ バッファへのポインタ。レスポンスを受信しなかった場合は NULL。
[in] aMessageInfo
aMessage のメッセージ情報へのポインタ。レスポンスを受信しなかった場合は NULL。
[in] aResult
CoAP トランザクションの結果。
戻り値
OT_ERROR_NONE
レスポンスは正常に受信されました。
OT_ERROR_ABORT
CoAP トランザクションがピアによってリセットされました。
OT_ERROR_RESPONSE_TIMEOUT
タイムアウト中にレスポンスや確認応答を受信しませんでした。

otCoapTxParameters

struct otCoapTxParameters otCoapTxParameters

この構造は、CoAP 送信パラメータを表します。

otCoapType

enum otCoapType otCoapType

CoAP Type 値(2 ビットの符号なし整数)。

関数

otCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

この関数は、ブロック単位のリソースを CoAP サーバーに追加します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aResource
リソースへのポインタ。

otCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

この関数は、CoAP サーバーにリソースを追加します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aResource
リソースへのポインタ。

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

この関数は、CoAP ブロック オプションの SZX フィールドを実際のブロックサイズに変換します。

詳細
パラメータ
[in] aSize
ブロックサイズの指数。
戻り値
実際のサイズの指数値。

otCoapMessageAppendBlock1Option

otError otCoapMessageAppendBlock1Option(
  otMessage *aMessage,
  uint32_t aNum,
  bool aMore,
  otCoapBlockSzx aSize
)

この関数は、Block1 オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aNum
現在のブロック番号。
[in] aMore
より多くのブロックを送信することを示すブール値。
[in] aSize
ブロックサイズの指数。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendBlock2Option

otError otCoapMessageAppendBlock2Option(
  otMessage *aMessage,
  uint32_t aNum,
  bool aMore,
  otCoapBlockSzx aSize
)

この関数は、Block2 オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aNum
現在のブロック番号。
[in] aMore
より多くのブロックを送信することを示すブール値。
[in] aSize
ブロックサイズの指数。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

この関数は、https://tools.ietf.org/html/rfc7252#page-92 で指定されているように Content Format CoAP オプションを追加します。

ペイロードをメッセージに含める場合は、otCoapMessageSetPayloadMarker を設定する前に呼び出す必要があります

この関数は otCoapMessageAppendUintOption の便利なラッパーであり、必要な形式タイプのコードが otCoapOptionContentFormat にリストされていない場合は、代わりにこの基本関数を使用する必要があります。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aContentFormat
上記の otCoapOptionContentFormat に記載されたコンテンツ形式のいずれか。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

この関数は、最長存続期間のオプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aMaxAge
最長エージ値。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

この関数は Observe オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aObserve
フィールド値を確認します。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendOption

otError otCoapMessageAppendOption(
  otMessage *aMessage,
  uint16_t aNumber,
  uint16_t aLength,
  const void *aValue
)

この関数は、ヘッダーに CoAP オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aNumber
CoAP オプション番号。
[in] aLength
CoAP オプションの長さ。
[in] aValue
CoAP 値へのポインタ。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendProxyUriOption

otError otCoapMessageAppendProxyUriOption(
  otMessage *aMessage,
  const char *aUriPath
)

この関数は Proxy-Uri オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aUriPath
NULL で終わる文字列へのポインタ。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendUintOption

otError otCoapMessageAppendUintOption(
  otMessage *aMessage,
  uint16_t aNumber,
  uint32_t aValue
)

この関数は、https://tools.ietf.org/html/rfc7252#section-3.2 で指定されているように符号なし整数 CoAP オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aNumber
CoAP オプション番号。
[in] aValue
CoAP オプションの符号なし整数値。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。
関連項目:
otCoapMessageGetOptionUintValue

otCoapMessageAppendUriPathOptions(省略可)

otError otCoapMessageAppendUriPathOptions(
  otMessage *aMessage,
  const char *aUriPath
)

この関数は、Uri-Path オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aUriPath
NULL で終わる文字列へのポインタ。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageAppendUriQueryOption

otError otCoapMessageAppendUriQueryOption(
  otMessage *aMessage,
  const char *aUriQuery
)

この関数は、単一の Uri-Query オプションを追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aUriQuery
NULL で終わる文字列へのポインタ。Key-Value ペアが 1 つ含まれます。
戻り値
OT_ERROR_NONE
オプションが正常に追加されました。
OT_ERROR_INVALID_ARGS
オプション タイプが、最後のオプション タイプ以上である。
OT_ERROR_NO_BUFS
オプションの長さがバッファのサイズを超えています。

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

このメソッドは、CoAP コードを人が読める文字列として返します。

@ は、CoAP コードを文字列として返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

この関数は、トークンの長さを設定し、その値をランダム化します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aTokenLength
設定するトークンの長さ。

otCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

この関数は、コード値を返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
コード値。

otCoapMessageGetMessageId

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

この関数はメッセージ ID の値を返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
メッセージ ID の値。

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

この関数は、Token 値へのポインタを返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
Token 値へのポインタ。

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

この関数はトークンの長さを返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
トークンの長さ。

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

この関数は、Type の値を返します。

詳細
パラメータ
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
Type の値。

otCoapMessageInit

void otCoapMessageInit(
  otMessage *aMessage,
  otCoapType aType,
  otCoapCode aCode
)

この関数は、CoAP ヘッダーを初期化します。

詳細
パラメータ
[in,out] aMessage
初期化する CoAP メッセージへのポインタ。
[in] aType
CoAP メッセージのタイプ。
[in] aCode
CoAP メッセージ コード。

otCoapMessageInitResponse

otError otCoapMessageInitResponse(
  otMessage *aResponse,
  const otMessage *aRequest,
  otCoapType aType,
  otCoapCode aCode
)

この関数は、レスポンス メッセージを初期化します。

詳細
パラメータ
[in,out] aResponse
CoAP レスポンス メッセージへのポインタ。
[in] aRequest
CoAP リクエスト メッセージへのポインタ。
[in] aType
CoAP メッセージのタイプ。
[in] aCode
CoAP メッセージ コード。
戻り値
OT_ERROR_NONE
レスポンス メッセージを正常に初期化しました。
OT_ERROR_NO_BUFS
レスポンス メッセージを初期化するためのメッセージ バッファが不足しています。

otCoapMessageSetCode

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

この関数は、Code 値を設定します。

詳細
パラメータ
[in,out] aMessage
初期化する CoAP メッセージへのポインタ。
[in] aCode
CoAP メッセージ コード。

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

この関数は、ペイロードの先頭を示すペイロード マーカーを CoAP ヘッダーに追加します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
戻り値
OT_ERROR_NONE
ペイロード マーカーを追加しました。
OT_ERROR_NO_BUFS
ヘッダー ペイロード マーカーがバッファサイズを超えています。

otCoapMessageSetToken

otError otCoapMessageSetToken(
  otMessage *aMessage,
  const uint8_t *aToken,
  uint8_t aTokenLength
)

この関数は、ヘッダーにトークンの値と長さを設定します。

詳細
パラメータ
[in,out] aMessage
CoAP メッセージへのポインタ。
[in] aToken
Token 値へのポインタ。
[in] aTokenLength
aToken の長さ。
戻り値
OT_ERROR_NONE
トークンの値を設定しました。
OT_ERROR_NO_BUFS
トークンの値を設定するためのバッファが不十分です。

otCoapNewMessage

otMessage * otCoapNewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

この関数は、新しい CoAP メッセージを作成します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aSettings
メッセージ設定を指すポインタ。または、デフォルト設定を指定する場合は NULL を指定します。
戻り値
メッセージ バッファへのポインタ。使用可能なメッセージ バッファがない場合やパラメータが無効な場合は NULL。

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

この関数は、最初のオプションへのポインタを返します。

詳細
パラメータ
[in,out] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
戻り値
最初のオプションへのポインタ。オプションが存在しない場合、NULL ポインタが返されます。

otCoapOptionIteratorGetFirstOptionMatching

const otCoapOption * otCoapOptionIteratorGetFirstOptionMatching(
  otCoapOptionIterator *aIterator,
  uint16_t aOption
)

この関数は、指定されたオプション番号に一致する最初のオプションへのポインタを返します。

詳細
パラメータ
[in] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
[in] aOption
必要だったオプション番号。
戻り値
最初の一致オプションへのポインタ。一致するオプションが存在しない場合、NULL ポインタが返されます。

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

この関数は、次のオプションへのポインタを返します。

詳細
パラメータ
[in,out] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
戻り値
次のオプションを指すポインタ。オプションが他にない場合は、NULL ポインタが返されます。

otCoapOptionIteratorGetNextOptionMatching

const otCoapOption * otCoapOptionIteratorGetNextOptionMatching(
  otCoapOptionIterator *aIterator,
  uint16_t aOption
)

この関数は、指定されたオプション番号に一致する次のオプションへのポインタを返します。

詳細
パラメータ
[in] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
[in] aOption
必要だったオプション番号。
戻り値
次のマッチング オプションへのポインタ。一致するオプションが他にない場合は、NULL ポインタが返されます。

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

この関数は、現在の値が https://tools.ietf.org/html/rfc7252#section-3.2 に従ってエンコードされた符号なし整数であると仮定して、現在のオプション値を aValue に入力します。

詳細
パラメータ
[in,out] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
[out] aValue
オプション値を受け取る符号なし整数へのポインタ。
戻り値
OT_ERROR_NONE
値が正常に入力されました。
OT_ERROR_NOT_FOUND
現在のオプションなし。
OT_ERROR_NO_BUFS
値が長すぎて uint64_t に収まりません。
関連項目:
otCoapMessageAppendUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

この関数は、現在のオプションの値を aValue に入力します。

詳細
パラメータ
[in,out] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
[out] aValue
オプション値を受け取るバッファへのポインタ。
戻り値
OT_ERROR_NONE
値が正常に入力されました。
OT_ERROR_NOT_FOUND
現在のオプションなし。

otCoapOptionIteratorInit

otError otCoapOptionIteratorInit(
  otCoapOptionIterator *aIterator,
  const otMessage *aMessage
)

この関数は、指定されたメッセージ内のオプションのイテレータを初期化します。

詳細
パラメータ
[in,out] aIterator
CoAP メッセージ オプション イテレータへのポインタ。
[in] aMessage
CoAP メッセージへのポインタ。
戻り値
OT_ERROR_NONE
正常に初期化されました。
OT_ERROR_PARSE
メッセージの状態に一貫性がありません。

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

この関数は、CoAP サーバーからブロック単位のリソースを削除します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aResource
リソースへのポインタ。

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

この関数は、CoAP サーバーからリソースを削除します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aResource
リソースへのポインタ。

otCoapSendRequest

otError otCoapSendRequest(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext
)

この関数は、CoAP リクエストを送信します。

リクエストに対するレスポンスが期待される場合は、それぞれの関数とコンテキスト情報を提供する必要があります。応答が想定されていない場合、これらの引数は NULL ポインタでなければなりません。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信するメッセージへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aHandler
レスポンスの受信時またはタイムアウト時に呼び出される関数ポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
戻り値
OT_ERROR_NONE
CoAP メッセージを送信しました。
OT_ERROR_NO_BUFS
再送データを割り当てることができませんでした。

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 ポインタでなければなりません。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信するメッセージへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aHandler
レスポンスの受信時またはタイムアウト時に呼び出される関数ポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
[in] aTransmitHook
送信ブロック単位の転送用のフック関数へのポインタ。
[in] aReceiveHook
ブロック単位の着信転送用のフック関数へのポインタ。
戻り値
OT_ERROR_NONE
CoAP メッセージを送信しました。
OT_ERROR_NO_BUFS
再送データを割り当てることができませんでした。

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 ポインタでなければなりません。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信するメッセージへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aHandler
レスポンスの受信時またはタイムアウト時に呼び出される関数ポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
[in] aTxParameters
このリクエストの送信パラメータへのポインタ。デフォルトは NULL です。
[in] aTransmitHook
送信ブロック単位の転送用のフック関数へのポインタ。
[in] aReceiveHook
ブロック単位の着信転送用のフック関数へのポインタ。
戻り値
OT_ERROR_NONE
CoAP メッセージを送信しました。
OT_ERROR_NO_BUFS
再送データを割り当てることができませんでした。

otCoapSendRequestWithParameters

otError otCoapSendRequestWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext,
  const otCoapTxParameters *aTxParameters
)

この関数は、カスタム送信パラメータを含む CoAP リクエストを送信します。

リクエストに対するレスポンスが期待される場合は、それぞれの関数とコンテキスト情報を提供する必要があります。応答が想定されていない場合、これらの引数は NULL ポインタでなければなりません。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信するメッセージへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aHandler
レスポンスの受信時またはタイムアウト時に呼び出される関数ポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
[in] aTxParameters
このリクエストの送信パラメータへのポインタ。デフォルトは NULL です。それ以外の場合、指定するパラメータは次の条件を満たす必要があります。
  1. mMaxRetransmit は OT_COAP_MAX_RETRANSMIT 以下。
  2. mAckRandomFactorNumerator / mAckRandomFactorDenominator は 1.0 未満でなければなりません。
  3. 計算されたエクスチェンジの存続時間は uint32_t をオーバーフローしてはなりません。
戻り値
OT_ERROR_INVALID_ARGS
aTxParameters は無効です。
OT_ERROR_NONE
CoAP メッセージを送信しました。
OT_ERROR_NO_BUFS
再送データを割り当てることができませんでした。

otCoapSendResponse

otError otCoapSendResponse(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo
)

この関数は、サーバーから CoAP レスポンスを送信します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信する CoAP レスポンスへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
戻り値
OT_ERROR_NONE
CoAP レスポンス メッセージをキューに追加しました。
OT_ERROR_NO_BUFS
CoAP レスポンスを送信するのに十分なバッファがありません。

otCoapSendResponseBlockWise(英語)

otError otCoapSendResponseBlockWise(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook
)

この関数は、CoAP レスポンスをブロック単位でサーバーから送信します。

この関数は、OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に利用可能です。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信する CoAP レスポンスへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
[in] aTransmitHook
送信ブロック単位の転送用のフック関数へのポインタ。
戻り値
OT_ERROR_NONE
CoAP レスポンス メッセージをキューに追加しました。
OT_ERROR_NO_BUFS
CoAP レスポンスを送信するのに十分なバッファがありません。

otCoapSendResponseBlockWiseWithParameters

otError otCoapSendResponseBlockWiseWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  const otCoapTxParameters *aTxParameters,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook
)

この関数は、カスタム送信パラメータを使用して、サーバーから個別に CoAP レスポンスを送信します。

この関数は、OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 構成が有効な場合に利用可能です。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信する CoAP レスポンスへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aTxParameters
このレスポンスの送信パラメータへのポインタ。デフォルトは NULL です。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。
[in] aTransmitHook
送信ブロック単位の転送用のフック関数へのポインタ。
戻り値
OT_ERROR_NONE
CoAP レスポンス メッセージをキューに追加しました。
OT_ERROR_NO_BUFS
CoAP レスポンスを送信するのに十分なバッファがありません。

otCoapSendResponseWithParameters

otError otCoapSendResponseWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  const otCoapTxParameters *aTxParameters
)

この関数は、カスタム送信パラメータを含むサーバーからの CoAP レスポンスを送信します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMessage
送信する CoAP レスポンスへのポインタ。
[in] aMessageInfo
aMessage に関連付けられているメッセージ情報へのポインタ。
[in] aTxParameters
このレスポンスの送信パラメータへのポインタ。デフォルトは NULL です。
戻り値
OT_ERROR_NONE
CoAP レスポンス メッセージをキューに追加しました。
OT_ERROR_NO_BUFS
CoAP レスポンスを送信するのに十分なバッファがありません。

otCoapSetDefaultHandler

void otCoapSetDefaultHandler(
  otInstance *aInstance,
  otCoapRequestHandler aHandler,
  void *aContext
)

この関数は、未処理の CoAP リクエストのデフォルト ハンドラを設定します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aHandler
未処理のリクエストが到着したときに呼び出す関数ポインタ。
[in] aContext
任意のコンテキスト情報へのポインタ。使用しない場合は、NULL も指定できます。

OTCoaPStart

otError otCoapStart(
  otInstance *aInstance,
  uint16_t aPort
)

この関数は CoAP サーバーを起動します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aPort
バインドするローカル UDP ポート。
戻り値
OT_ERROR_NONE
CoAP サーバーが正常に起動しました。
OT_ERROR_FAILED
CoAP サーバーを起動できませんでした。

OTCoaPStop

otError otCoapStop(
  otInstance *aInstance
)

この関数は CoAP サーバーを停止します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
OT_ERROR_NONE
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 で入手可能なソースコードに基づいています。 詳細またはドキュメントへの投稿については、リソースをご覧ください。