Documentation
¶
Overview ¶
Package eddystone provides tools for making Eddystone frame
Index ¶
Examples ¶
Constants ¶
View Source
const ( // TypeUnknown means it may not Eddystone frame TypeUnknown Type = "" // TypeUID means UID frame TypeUID = "uid" // TypeURL means URL frame TypeURL = "url" // TypeTLM means TLM frame TypeTLM = "tlm" )
View Source
const SvcUUID = 0xFEAA
SvcUUID is Eddystone service UUID
Variables ¶
View Source
var ErrInvalidFrame = errors.New("invalid frame")
ErrInvalidFrame can be returned from Make*Frame()
View Source
var SvcUUIDBytes = []byte{0xAA, 0xFE}
SvcUUIDBytes is Eddystone service UUID in Little Endian format
Functions ¶
func ParseTLMFrame ¶
ParseTLMFrame returns contents of TLM frame
func ParseUIDFrame ¶
ParseUIDFrame returns contents of UID frame
Types ¶
type Frame ¶
type Frame []byte
Frame represent Eddystone frame
func MakeFrame ¶
MakeFrame convert []byte to eddystone.Frame
Example ¶
package main
import (
"encoding/hex"
"fmt"
eddystone "github.com/suapapa/go_eddystone"
)
func main() {
b, _ := hex.DecodeString("20000ce417800000000100000002")
f, _ := eddystone.MakeFrame(b)
fmt.Print(f)
}
Output: Eddystone-TLM[batt:3300 temp:23.500000, advCnt:1 secCnt:2]
func MakeTLMFrame ¶
MakeTLMFrame makes Eddystone-TLM frame https://github.com/google/eddystone/tree/master/eddystone-tlm
Example ¶
package main
import (
"fmt"
eddystone "github.com/suapapa/go_eddystone"
)
func main() {
f, _ := eddystone.MakeTLMFrame(3300, 23.5, 1, 2)
fmt.Println(f)
fmt.Println([]byte(f))
}
Output: Eddystone-TLM[batt:3300 temp:23.500000, advCnt:1 secCnt:2] [32 0 12 228 23 128 0 0 0 1 0 0 0 2]
func MakeUIDFrame ¶
MakeUIDFrame makes Eddystone-UID frame https://github.com/google/eddystone/tree/master/eddystone-uid
Example ¶
package main
import (
"fmt"
eddystone "github.com/suapapa/go_eddystone"
)
func main() {
f, _ := eddystone.MakeUIDFrame("0102030405060708090a", "0b0c0d0e0f10", -30)
fmt.Println(f)
fmt.Println([]byte(f))
}
Output: Eddystone-UID[Namespace:0x0102030405060708090a Instance:0x0b0c0d0e0f10 TxPwr:-30dBm] [0 226 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0]
func MakeURLFrame ¶
MakeURLFrame makes Eddystone-URL frame https://github.com/google/eddystone/tree/master/eddystone-url
Example ¶
package main
import (
"fmt"
eddystone "github.com/suapapa/go_eddystone"
)
func main() {
f, _ := eddystone.MakeURLFrame("http://github.com", -30)
fmt.Println(f)
fmt.Println([]byte(f))
}
Output: Eddystone-URL[Url:http://github.com TxPwr:-30dBm] [16 226 2 103 105 116 104 117 98 7]
Click to show internal directories.
Click to hide internal directories.
