Documentation ¶
Index ¶
- Constants
- func Asset(name string) ([]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func CreateDefaultConfig(configPath string) error
- func DtlsClientRandom() []byte
- func DtlsPreMasterSecretFromPSK(psk []byte) []byte
- func LoadLwm2mDefinitions(modelsPath string) (lwm2mObjectDefinitions, error)
- func MustAsset(name string) []byte
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- func SaveConfig(configPath string, config *Config) error
- func SetSecurityParams(config *Config, handler Lwm2mHandler, identity string, pskOpaque string) error
- type Coap
- func (coap *Coap) Close()
- func (coap *Coap) Initialize(conn net.Conn, recvHandler func(*CoapMessage))
- func (coap *Coap) ParseMessage(raw []byte) *CoapMessage
- func (coap *Coap) ReadCoapMessage(stopCh chan bool)
- func (coap *Coap) SendRelatedMessage(code CoapCode, token []byte, options []CoapOption, payload []byte) uint16
- func (coap *Coap) SendRequest(code CoapCode, options []CoapOption, payload []byte, ch chan int) uint16
- func (coap *Coap) SendResponse(request *CoapMessage, code CoapCode, options []CoapOption, payload []byte)
- type CoapCode
- type CoapMessage
- type CoapOption
- type Config
- type Dtls
- func (dtls *Dtls) Close() error
- func (dtls *Dtls) GenerateSecurityParams()
- func (dtls *Dtls) GetCookie() error
- func (dtls *Dtls) GetSession() error
- func (dtls *Dtls) LocalAddr() net.Addr
- func (dtls *Dtls) ParsePacket(raw []byte) *DtlsPacket
- func (dtls *Dtls) Read(data []byte) (int, error)
- func (dtls *Dtls) RemoteAddr() net.Addr
- func (dtls *Dtls) SendChangeCipherSpec() error
- func (dtls *Dtls) SendClientKeyExchange() error
- func (dtls *Dtls) SendFinished() error
- func (dtls *Dtls) SetDeadline(t time.Time) error
- func (dtls *Dtls) SetReadDeadline(t time.Time) error
- func (dtls *Dtls) SetWriteDeadline(t time.Time) error
- func (dtls *Dtls) Write(data []byte) (int, error)
- type DtlsHandshake
- type DtlsHandshakeParams
- type DtlsPacket
- type HandlerFile
- func (handler *HandlerFile) CreateInstance(instance *Lwm2mInstance) CoapCode
- func (handler *HandlerFile) DeleteObject(object *Lwm2mObject) CoapCode
- func (handler *HandlerFile) ExecuteResource(resource *Lwm2mResource, value string) CoapCode
- func (handler *HandlerFile) ListInstanceIDs(object *Lwm2mObject) ([]uint16, CoapCode)
- func (handler *HandlerFile) ListObjectIDs() ([]uint16, CoapCode)
- func (handler *HandlerFile) ListResourceIDs(instance *Lwm2mInstance) ([]uint16, CoapCode)
- func (handler *HandlerFile) ReadResource(resource *Lwm2mResource) (string, CoapCode)
- func (handler *HandlerFile) WriteResource(resource *Lwm2mResource, value string) CoapCode
- type Inventoryd
- type Lwm2m
- func (lwm2m *Lwm2m) CheckSecurityParams() error
- func (lwm2m *Lwm2m) ExecuteRequest(message *CoapMessage) error
- func (lwm2m *Lwm2m) Initialize(endpointClientName string, definitions lwm2mObjectDefinitions, ...) error
- func (lwm2m *Lwm2m) NotifyInstance(observe *Lwm2mObservedInstance)
- func (lwm2m *Lwm2m) NotifyResource(observe *Lwm2mObservedResource)
- func (lwm2m *Lwm2m) Observe()
- func (lwm2m *Lwm2m) ObserveDeregister(message *CoapMessage)
- func (lwm2m *Lwm2m) ReadRequest(message *CoapMessage) error
- func (lwm2m *Lwm2m) ReceiveMessage(message *CoapMessage)
- func (lwm2m *Lwm2m) Register() error
- func (lwm2m *Lwm2m) RegisterDone(message *CoapMessage)
- func (lwm2m *Lwm2m) StartObserving(interval time.Duration, stopCh chan bool)
- func (lwm2m *Lwm2m) StartUpdate(interval time.Duration, stopCh chan bool)
- func (lwm2m *Lwm2m) Update() error
- func (lwm2m *Lwm2m) UpdateDone(message *CoapMessage)
- func (lwm2m *Lwm2m) WriteRequest(message *CoapMessage) error
- type Lwm2mDefinitionXML
- type Lwm2mHandler
- type Lwm2mInstance
- type Lwm2mObject
- type Lwm2mObjectDefinition
- type Lwm2mObjectDefinitionXML
- type Lwm2mObservedInstance
- type Lwm2mObservedResource
- type Lwm2mResource
- type Lwm2mResourceDefinition
- type Lwm2mResourceDefinitionXML
- type Lwm2mTLV
Constants ¶
const ( CoapTypeConfirmable = 0 CoapTypeNonConfirmable = 1 CoapTypeAcknowledgement = 2 CoapTypeReset = 3 )
Coap Type RFC7252 3. Message Format Type(T)参照
Variables ¶
This section is empty.
Functions ¶
func Asset ¶
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDir ¶
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.
func AssetInfo ¶
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func CreateDefaultConfig ¶
CreateDefaultConfig : デフォルトの設定ファイルを生成する
func DtlsClientRandom ¶
func DtlsClientRandom() []byte
DtlsClientRandom : ClientRandomを生成する 先頭4byteをUNIX timestamp そのあとの28byteをランダムのbyteとする RFC5246 7.4.1.2 ClientHello参照
func DtlsPreMasterSecretFromPSK ¶
DtlsPreMasterSecretFromPSK : PSKからPreMasterSecretを生成する 生成方法 : PSKのバイト長をNとすると、uint16(N) || 0をNバイト || uint16(N) || PSK RFC4279 2. PSK Key Exchange Algorithmの以下の記述より The premaster secret is formed as follows: if the PSK is N octets long, concatenate a uint16 with the value N, N zero octets, a second uint16 with the value N, and the PSK itself.
func LoadLwm2mDefinitions ¶
LoadLwm2mDefinitions : 定義ファイルから定義構造体を生成する
func MustAsset ¶
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func RestoreAsset ¶
RestoreAsset restores an asset under the given directory
func RestoreAssets ¶
RestoreAssets restores an asset under the given directory recursively
func SaveConfig ¶
func SetSecurityParams ¶
func SetSecurityParams(config *Config, handler Lwm2mHandler, identity string, pskOpaque string) error
SetSecurityParams : コマンドラインで指定されたデバイスID、PSKを設定する 既存のデバイスID、PSKは削除する
Types ¶
type Coap ¶
type Coap struct { Connection net.Conn // 接続 NextMessageID uint16 ChInProcess map[uint16]chan int RecvHandler func(*CoapMessage) // contains filtered or unexported fields }
Coap : Coap接続に関わるパラメータ
func (*Coap) Initialize ¶
func (coap *Coap) Initialize(conn net.Conn, recvHandler func(*CoapMessage))
Initialize : Coap構造体を初期化する
func (*Coap) ParseMessage ¶
func (coap *Coap) ParseMessage(raw []byte) *CoapMessage
ParseMessage : 受信生データを解析してCoapMessageを生成する 生成できない場合はnilを返す
func (*Coap) ReadCoapMessage ¶
ReadCoapMessage : メッセージを受信する stopChを受信すると受信動作を停止する
func (*Coap) SendRelatedMessage ¶
func (coap *Coap) SendRelatedMessage(code CoapCode, token []byte, options []CoapOption, payload []byte) uint16
SendRelatedMessage : 関連メッセージ(新規メッセージだがトークンが同じ)を送信する Lwm2m Notifyメッセージで使用する メッセージIDを返す
func (*Coap) SendRequest ¶
func (coap *Coap) SendRequest(code CoapCode, options []CoapOption, payload []byte, ch chan int) uint16
SendRequest : リクエスト(CON)を送信する ACKが返ってきたらチャネルに1を送る メッセージIDを返す
func (*Coap) SendResponse ¶
func (coap *Coap) SendResponse(request *CoapMessage, code CoapCode, options []CoapOption, payload []byte)
SendResponse : レスポンス(ACK)を送信する
type CoapCode ¶
type CoapCode byte
const ( CoapCodeGet CoapCode = 1 CoapCodePost CoapCode = 2 CoapCodePut CoapCode = 3 CoapCodeDelete CoapCode = 4 )
Coap Method Code RFC7252 12.1.1 Method Codes参照
const ( CoapCodeEmpty CoapCode = 0 // 0.00 Empty CoapCodeCreated CoapCode = 65 // 2.01 Created CoapCodeDeleted CoapCode = 66 // 2.02 Deleted CoapCodeChanged CoapCode = 68 // 2.04 Changed CoapCodeContent CoapCode = 69 // 2.05 Content CoapCodeBadRequest CoapCode = 128 // 4.00 Bad Request CoapCodeNotFound CoapCode = 132 // 4.04 Not Found CoapCodeNotAllowed CoapCode = 133 // 4.05 Method Not Allowed )
Coap Response Code RFC7252 12.1.2 Response Codes参照
type CoapMessage ¶
type CoapMessage struct { Version byte Type byte TokenLength byte Code CoapCode MessageID uint16 Token []byte Options []CoapOption Payload []byte }
CoapMessage : Coapのメッセージ RFC7252 3. Message Format参照
func (*CoapMessage) BuildOptions ¶
func (message *CoapMessage) BuildOptions() []byte
BuildOptions : Coapのオプション部を生成する
func (*CoapMessage) ConvertToBytes ¶
func (message *CoapMessage) ConvertToBytes() []byte
ConvertToBytes : Messageを[]byteに変換する
func (*CoapMessage) IsObserve ¶
func (message *CoapMessage) IsObserve() bool
IsObserve : Observeメッセージかを判定する
func (*CoapMessage) ParseOptions ¶
func (message *CoapMessage) ParseOptions(raw []byte) int
ParseOptions : 生データのオプション部以降を解析しオプションをセットする 戻り値:オプション部の長さ
type CoapOption ¶
CoapOption : Coapのオプション RFC7252 5.10参照
func (*CoapOption) BuildOption ¶
func (option *CoapOption) BuildOption(base uint) []byte
BuildOption : Coapの各オプション部を生成する RFC7252 3.1 Option Format参照
func (*CoapOption) ParseOption ¶
func (option *CoapOption) ParseOption(raw []byte, base uint) int
ParseOption : 生データの各オプションをセットする 戻り値:オプションの長さ
type Config ¶
type Config struct { RootPath string `json:"rootPath"` ObserveInterval int `json:"observeInterval"` BootstrapServer string `json:"bootstrapServer"` EndpointClientName string `json:"endpointClientName"` }
Config : inventorydの設定
func LoadInventorydConfig ¶
LoadInventorydConfig : 設定ファイルから設定を読み出す
type Dtls ¶
type Dtls struct { Connection net.Conn // 接続 ServerEpoch uint16 ClientEpoch uint16 ServerSequence uint64 ClientSequence uint64 ServerWriteKey []byte ClientWriteKey []byte ServerIV []byte ClientIV []byte ClientEncrypt bool ServerEncrypt bool Handshake *DtlsHandshakeParams }
Dtls : Dtls接続管理
func (*Dtls) GenerateSecurityParams ¶
func (dtls *Dtls) GenerateSecurityParams()
GenerateSecurityParams : Master Secret / KeyBlockを生成する
func (*Dtls) GetCookie ¶
GetCookie : stateless cookieを取得する RFC6347 4.2.1 Denial-of-Service Contermeasures参照 Cookie 取得までのHandshakeはFinishedの際のVerify Data算出には含めない If HelloVerifyRequest is used, the initial ClientHello and HelloVerifyRequest are not included in the calculation of the handshake_messages (for the CertificateVerify message) and verify_data (for the Finished message).
func (*Dtls) ParsePacket ¶
func (dtls *Dtls) ParsePacket(raw []byte) *DtlsPacket
ParsePacket : パケット生データからDTLSパケットを生成する
func (*Dtls) SendChangeCipherSpec ¶
SendChangeCipherSpec : Change Cipher Specを送信する Change Cipher Specの際にEpochを加算し、Sequenceはクリアする The epoch number is initially zero and is incremented each time a ChangeCipherSpec message is sent. Sequence numbers are maintained separately for each epoch, with each sequence_number initially being 0 for each epoch. 詳細はRFC6347 4.1 Record Layer参照 なお、Change Cipher SpecはHandshakeではないため、Finishedの際のVerify Dataの算出には含めない
func (*Dtls) SendClientKeyExchange ¶
SendClientKeyExchange : Client Key Exchangeを送信する
func (*Dtls) SetReadDeadline ¶
SetReadDeadline : 読み出しデッドラインの設定
func (*Dtls) SetWriteDeadline ¶
SetWriteDeadline : 書き込みデッドラインの設定
type DtlsHandshake ¶
type DtlsHandshake struct { Type byte Sequence uint16 Params *DtlsHandshakeParams }
DtlsHandshake : Dtlsのハンドシェイク
func (*DtlsHandshake) Parse ¶
func (handshake *DtlsHandshake) Parse(raw []byte)
Parse : 生データのハンドシェイク部を解析する
func (*DtlsHandshake) ToBytes ¶
func (handshake *DtlsHandshake) ToBytes() []byte
ToBytes : DTLSのハンドシェイクをバイトスライスに変換する
type DtlsHandshakeParams ¶
type DtlsHandshakeParams struct { ServerSequence uint16 ClientSequence uint16 Identity []byte Cookie []byte Session []byte ClientRandom []byte ServerRandom []byte PreMasterSecret []byte MasterSecret []byte Messages []byte Verified bool }
DtlsHandshakeParams : Dtlsのハンドシェイクパラメータ
func (*DtlsHandshakeParams) GenerateClientVerifyData ¶
func (handshake *DtlsHandshakeParams) GenerateClientVerifyData() []byte
GenerateClientVerifyData : ClientからのFinishedのVerify Dataを生成する
func (*DtlsHandshakeParams) GenerateServerVerifyData ¶
func (handshake *DtlsHandshakeParams) GenerateServerVerifyData() []byte
GenerateServerVerifyData : ServerからのFinishedのVerify Dataを生成する
type DtlsPacket ¶
type DtlsPacket struct { Type byte Epoch uint16 Sequence uint64 ContentLength uint16 Content []byte }
DtlsPacket : DTLSのパケット
func (*DtlsPacket) ToBytes ¶
func (packet *DtlsPacket) ToBytes() []byte
ToBytes : DTLSのパケットをバイトスライスに変換する
type HandlerFile ¶
type HandlerFile struct {
ResourceDirPath string
}
HandlerFile : ファイルベースのハンドラ
func (*HandlerFile) CreateInstance ¶
func (handler *HandlerFile) CreateInstance(instance *Lwm2mInstance) CoapCode
CreateInstance : 空インスタンスを生成する 親オブジェクトが存在しない場合は生成する
func (*HandlerFile) DeleteObject ¶
func (handler *HandlerFile) DeleteObject(object *Lwm2mObject) CoapCode
DeleteObject : オブジェクトを削除する
func (*HandlerFile) ExecuteResource ¶
func (handler *HandlerFile) ExecuteResource(resource *Lwm2mResource, value string) CoapCode
ExecuteResource : Resourceに対するExecute ResourceにExecuteする 実行可能形式ではないファイル(シェルスクリプトなど)は直接実行できないため、 シェル経由でコマンドを実行する UNIX (Like) OSでの実行は要検討
func (*HandlerFile) ListInstanceIDs ¶
func (handler *HandlerFile) ListInstanceIDs(object *Lwm2mObject) ([]uint16, CoapCode)
ListInstanceIDs : オブジェクト下にあるインスタンスIDを取得する
func (*HandlerFile) ListObjectIDs ¶
func (handler *HandlerFile) ListObjectIDs() ([]uint16, CoapCode)
ListObjectIDs : 利用可能なオブジェクトIDを取得する
func (*HandlerFile) ListResourceIDs ¶
func (handler *HandlerFile) ListResourceIDs(instance *Lwm2mInstance) ([]uint16, CoapCode)
ListResourceIDs : インスタンス下にあるリソースIDを取得する
func (*HandlerFile) ReadResource ¶
func (handler *HandlerFile) ReadResource(resource *Lwm2mResource) (string, CoapCode)
ReadResource : Resourceに対するRead ResourceをReadした結果を返す リソースIDに拡張子.readが付いたファイルが存在し、かつ実行可能であれば、 通常のリソースに優先して実行し、結果を返す
func (*HandlerFile) WriteResource ¶
func (handler *HandlerFile) WriteResource(resource *Lwm2mResource, value string) CoapCode
WriteResource : Resourceに対するWrite ResourceにWriteする リソースIDに拡張子.writeが付いたファイルが存在し、かつ実行可能であれば、 通常のリソースに優先して実行する サーバからの入力値は標準入力に渡す
type Inventoryd ¶
Inventoryd : SORACOM Inventory対応
func (*Inventoryd) Bootstrap ¶
func (daemon *Inventoryd) Bootstrap(config *Config, handler Lwm2mHandler) error
Bootstrap : ブートストラップを実行する
func (*Inventoryd) Initialize ¶
func (daemon *Inventoryd) Initialize(config *Config, handler Lwm2mHandler) error
Initialize : Inventorydの初期化
func (*Inventoryd) Prepare ¶
func (daemon *Inventoryd) Prepare(config *Config) error
Prepare : 使用前準備
type Lwm2m ¶
Lwm2m : Lwm2m対応
func (*Lwm2m) CheckSecurityParams ¶
func (*Lwm2m) ExecuteRequest ¶
func (lwm2m *Lwm2m) ExecuteRequest(message *CoapMessage) error
ExecuteRequest : Executeを処理する
func (*Lwm2m) Initialize ¶
func (lwm2m *Lwm2m) Initialize( endpointClientName string, definitions lwm2mObjectDefinitions, handler Lwm2mHandler) error
Initialize : Lwm2m構造体を初期化する
func (*Lwm2m) NotifyInstance ¶
func (lwm2m *Lwm2m) NotifyInstance(observe *Lwm2mObservedInstance)
NotifyInstance : インスタンスに対するNotifyを実行する OMA-TS-LightweightM2M-V1_0_2-20180209-A 5.5.2 Notify参照
func (*Lwm2m) NotifyResource ¶
func (lwm2m *Lwm2m) NotifyResource(observe *Lwm2mObservedResource)
NotifyResource : リソースに対するNotifyを実行する OMA-TS-LightweightM2M-V1_0_2-20180209-A 5.5.2 Notify参照
func (*Lwm2m) Observe ¶
func (lwm2m *Lwm2m) Observe()
Observe : Observe中リソースのチェックおよび変化があった場合のNotifyを実行する OMA-TS-LightweightM2M-V1_0_2-20180209-A 5.5.1 Observe参照 オブジェクトレベルのObserveも可能だが、現時点では対応しない 接続がない場合、Registerが終了していない場合は何もしない
func (*Lwm2m) ObserveDeregister ¶
func (lwm2m *Lwm2m) ObserveDeregister(message *CoapMessage)
ObserveDeregister : Coap Resetを受信したらObserveを解除する OMA-TS-LightweightM2M-V1_0_2-20180209-A 8.2.6 Information Reporting Interface参照 ResetはMessageIDのみ存在するため、メッセージIDとつきあわせて確認する
func (*Lwm2m) ReadRequest ¶
func (lwm2m *Lwm2m) ReadRequest(message *CoapMessage) error
ReadRequest : Readを処理する
func (*Lwm2m) ReceiveMessage ¶
func (lwm2m *Lwm2m) ReceiveMessage(message *CoapMessage)
ReceiveMessage : メッセージ受信ハンドラ
func (*Lwm2m) Register ¶
Register : Register Operation OMA-TS-LightweightM2M-V1_0_2-20180209-A 5.3.1 Register参照
func (*Lwm2m) RegisterDone ¶
func (lwm2m *Lwm2m) RegisterDone(message *CoapMessage)
RegisterDone : Register 終了メッセージの処理
func (*Lwm2m) StartObserving ¶
StartObserving : Observe動作を開始する stopChを受信したら停止する
func (*Lwm2m) StartUpdate ¶
StartUpdate : Update動作を開始する stopChを受信したら停止する
func (*Lwm2m) Update ¶
Update : Update Operation OMA-TS-LightweightM2M-V1_0_2-20180209-A 5.3.2 Update参照
func (*Lwm2m) UpdateDone ¶
func (lwm2m *Lwm2m) UpdateDone(message *CoapMessage)
UpdateDone : Update 終了メッセージの処理
func (*Lwm2m) WriteRequest ¶
func (lwm2m *Lwm2m) WriteRequest(message *CoapMessage) error
WriteRequest : Writeを処理する
type Lwm2mDefinitionXML ¶
type Lwm2mDefinitionXML struct { XMLName xml.Name `xml:"LWM2M"` Object *Lwm2mObjectDefinitionXML `xml:"Object"` }
Lwm2mDefinitionXML : Lwm2mのオブジェクト定義のXML
type Lwm2mHandler ¶
type Lwm2mHandler interface { // 通常CoapCodeDeleteを返す DeleteObject(object *Lwm2mObject) CoapCode // 通常CoapCodeCreatedを返す CreateInstance(instance *Lwm2mInstance) CoapCode // 通常CoapCodeContentを返す ListObjectIDs() ([]uint16, CoapCode) // 通常CoapCodeContentを返す ListInstanceIDs(object *Lwm2mObject) ([]uint16, CoapCode) // 通常CoapCodeContentを返す ListResourceIDs(instance *Lwm2mInstance) ([]uint16, CoapCode) // 通常CoapCodeContentを返す ReadResource(resource *Lwm2mResource) (string, CoapCode) // 通常CoapCodeChangedを返す WriteResource(resource *Lwm2mResource, value string) CoapCode // 通常CoapCodeChangedを返す ExecuteResource(resource *Lwm2mResource, value string) CoapCode }
Lwm2mHandler : Lwm2mの各種Operationの処理ハンドラ OMA-TS-LightweightM2M-V1_0_2-20180209-A Read : 5.4.1 Read参照(Objectに対するReadはInventoryのAPIに無いため対象外) Write : 5.4.3 Write参照 Execute : 5.4.5 Execute参照 Discover / Write-Attributes は対象外 Create / DeleteはBootstrapにて限定的に対応
type Lwm2mInstance ¶
type Lwm2mInstance struct { ID uint16 // contains filtered or unexported fields }
Lwm2mInstance : LWm2mのインスタンス
type Lwm2mObject ¶
type Lwm2mObject struct { ID uint16 Definition *Lwm2mObjectDefinition }
Lwm2mObject : Lwm2mのオブジェクト
type Lwm2mObjectDefinition ¶
type Lwm2mObjectDefinition struct { ID uint16 Name string Multi bool Mandatory bool Resources []*Lwm2mResourceDefinition }
Lwm2mObjectDefinition : Lwm2mのオブジェクト定義
type Lwm2mObjectDefinitionXML ¶
type Lwm2mObjectDefinitionXML struct { Name string `xml:"Name"` ID string `xml:"ObjectID"` Multi string `xml:"MultipleInstances"` Mandatory string `xml:"Mandatory"` Resources []*Lwm2mResourceDefinitionXML `xml:"Resources>Item"` }
Lwm2mObjectDefinitionXML : Lwm2mのオブジェクト定義のXMLのオブジェクト部
type Lwm2mObservedInstance ¶
type Lwm2mObservedInstance struct {
// contains filtered or unexported fields
}
Lwm2mObservedInstance : Lwm2mのObserve中のインスタンス ObserveはNotifyの際にObserve時と同じTokenを使用する必要がある OMA-TS-LightweightM2M-V1_0_2-20180209-A 8.2.6 Information Reporting Interface参照
type Lwm2mObservedResource ¶
type Lwm2mObservedResource struct {
// contains filtered or unexported fields
}
Lwm2mObservedResource : Lwm2mのObserve中のリソース ObserveはNotifyの際にObserve時と同じTokenを使用する必要がある OMA-TS-LightweightM2M-V1_0_2-20180209-A 8.2.6 Information Reporting Interface参照
type Lwm2mResource ¶
type Lwm2mResource struct { ID uint16 Definition *Lwm2mResourceDefinition // contains filtered or unexported fields }
Lwm2mResource : Lwm2mのリソース
type Lwm2mResourceDefinition ¶
type Lwm2mResourceDefinition struct { ID uint16 Name string Multi bool Mandatory bool Readable bool Writable bool Excutable bool Type byte }
Lwm2mResourceDefinition : Lwm2mのリソース定義
type Lwm2mResourceDefinitionXML ¶
type Lwm2mResourceDefinitionXML struct { ID string `xml:"ID,attr"` Name string `xml:"Name"` Operations string `xml:"Operations"` Multi string `xml:"MultipleInstances"` Mandatory string `xml:"Mandatory"` Type string `xml:"Type"` }
Lwm2mResourceDefinitionXML : Lwm2mのオブジェクト定義のXMLのリソース部