ネットワーク時刻の同期

このモジュールには、ネットワーク タイム同期サービスを制御する関数が含まれています。

概要

列挙型

otNetworkTimeStatus{
  OT_NETWORK_TIME_UNSYNCHRONIZED = -1,
  OT_NETWORK_TIME_RESYNC_NEEDED = 0,
  OT_NETWORK_TIME_SYNCHRONIZED = 1
}
enum
OpenThread 時刻同期ステータスを表します。

Typedef

otNetworkTimeStatus typedef
OpenThread 時刻同期ステータスを表します。
otNetworkTimeSyncCallbackFn)(void *aCallbackContext) typedef
void(*
ポインタは、ネットワーク タイムの同期またはステータスの変更が発生したときに呼び出されます。

関数

otNetworkTimeGet(otInstance *aInstance, uint64_t *aNetworkTime)
Thread ネットワーク時間を取得します。
otNetworkTimeGetSyncPeriod(otInstance *aInstance)
uint16_t
時刻の同期期間を取得します。
otNetworkTimeGetXtalThreshold(otInstance *aInstance)
uint16_t
Router の時刻同期 XTAL 精度のしきい値を取得します。
otNetworkTimeSetSyncPeriod(otInstance *aInstance, uint16_t aTimeSyncPeriod)
時刻を同期する期間を設定します。
otNetworkTimeSetXtalThreshold(otInstance *aInstance, uint16_t aXTALThreshold)
ルーター対応デバイスの時刻同期 XTAL 精度のしきい値を設定します。
otNetworkTimeSyncSetCallback(otInstance *aInstance, otNetworkTimeSyncCallbackFn aCallbackFn, void *aCallbackContext)
void
ネットワーク タイムの同期またはステータスの変化が発生したときに呼び出されるコールバックを設定します。

列挙型

otNetworkTimeStatus

 otNetworkTimeStatus

OpenThread 時刻同期ステータスを表します。

プロパティ
OT_NETWORK_TIME_RESYNC_NEEDED

デバイスが時刻の同期を受信していない期間が 3 回を超えています。

OT_NETWORK_TIME_SYNCHRONIZED

デバイスのネットワーク時刻が同期されます。

OT_NETWORK_TIME_UNSYNCHRONIZED

デバイスがネットワークに接続されていません。

Typedef

otNetworkTimeStatus

enum otNetworkTimeStatus otNetworkTimeStatus

OpenThread 時刻同期ステータスを表します。

otNetworkTimeSyncCallbackFn

void(* otNetworkTimeSyncCallbackFn)(void *aCallbackContext)

ポインタは、ネットワーク タイムの同期またはステータスの変更が発生したときに呼び出されます。

関数

otNetworkTimeGet

otNetworkTimeStatus otNetworkTimeGet(
  otInstance *aInstance,
  uint64_t *aNetworkTime
)

Thread ネットワーク時間を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in,out] aNetworkTime
Thread ネットワーク時間(マイクロ秒単位)。
戻り値
時刻同期のステータス。

otNetworkTimeGetSyncPeriod

uint16_t otNetworkTimeGetSyncPeriod(
  otInstance *aInstance
)

時刻の同期期間を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
戻り値
時刻同期の期間。

otNetworkTimeGetXtalThreshold

uint16_t otNetworkTimeGetXtalThreshold(
  otInstance *aInstance
)

Router の時刻同期 XTAL 精度のしきい値を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
戻り値
ルーターの XTAL 精度のしきい値(PPM)。

otNetworkTimeSetSyncPeriod

otError otNetworkTimeSetSyncPeriod(
  otInstance *aInstance,
  uint16_t aTimeSyncPeriod
)

時刻を同期する期間を設定します。

Thread プロトコルが無効になっている場合にのみ呼び出すことができます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aTimeSyncPeriod
時刻の同期期間(秒)。
戻り値
OT_ERROR_NONE
同期時間を設定しました。
OT_ERROR_INVALID_STATE
スレッド プロトコルが有効になっている。

otNetworkTimeSetXtalThreshold

otError otNetworkTimeSetXtalThreshold(
  otInstance *aInstance,
  uint16_t aXTALThreshold
)

ルーター対応デバイスの時刻同期 XTAL 精度のしきい値を設定します。

Thread プロトコルが無効になっている場合にのみ呼び出すことができます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aXTALThreshold
ルーターの XTAL 精度のしきい値(PPM)。
戻り値
OT_ERROR_NONE
同期時間を設定しました。
OT_ERROR_INVALID_STATE
スレッド プロトコルが有効になっている。

otNetworkTimeSyncSetCallback

void otNetworkTimeSyncSetCallback(
  otInstance *aInstance,
  otNetworkTimeSyncCallbackFn aCallbackFn,
  void *aCallbackContext
)

ネットワーク タイムの同期またはステータスの変化が発生したときに呼び出されるコールバックを設定します。

このコールバックは、ネットワーク タイム オフセットが OPENTHREAD_CONFIG_TIME_SYNC_JUMP_NOTIF_MIN_US だけ増加したとき、またはステータスが変化したときにのみ呼び出されます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aCallbackFn
呼び出すコールバック関数
[in] aCallbackContext
呼び出し時にコールバック関数に渡されるコンテキスト

マクロ

OT_TIME_SYNC_INVALID_SEQ

 OT_TIME_SYNC_INVALID_SEQ 0

ゼロは無効な時刻同期シーケンスとみなされます。

関連情報

OpenThread API リファレンスのトピックは、GitHub で入手できるソースコードに由来しています。 詳細について、またはドキュメントへの投稿については、リソースをご覧ください。