mirror of
https://github.com/jwetzell/free-d-go.git
synced 2026-08-18 21:33:58 +00:00
add example
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
|
||||
freeD "github.com/jwetzell/free-d-go"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
messageBytes := []byte{0xd1, 0x01, 0x5a, 0x00, 0x00, 0x2d, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x7f, 0xff, 0x40, 0x7f, 0xff, 0x80, 0x7f, 0xff,
|
||||
0xc0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x00, 0x00, 50,
|
||||
}
|
||||
|
||||
decoded, err := freeD.Decode(messageBytes)
|
||||
if err != nil {
|
||||
slog.Error("error decoding", "err", err)
|
||||
}
|
||||
|
||||
slog.Info("decoded", "message", decoded)
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
freeD "github.com/jwetzell/free-d-go"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
freeDMessage := freeD.FreeDPosition{
|
||||
ID: 0xff,
|
||||
Pan: -10.1,
|
||||
Tilt: 20.2,
|
||||
Roll: 3.33,
|
||||
PosX: 1.11,
|
||||
PosY: 2.22,
|
||||
PosZ: 3.33,
|
||||
Zoom: 1000,
|
||||
Focus: 2000,
|
||||
}
|
||||
|
||||
freeDBytes := freeD.Encode(freeDMessage)
|
||||
|
||||
println("send packet somehow")
|
||||
fmt.Printf("%v\n", freeDBytes)
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"net"
|
||||
|
||||
freeD "github.com/jwetzell/free-d-go"
|
||||
)
|
||||
|
||||
func main() {
|
||||
addr, err := net.ResolveUDPAddr("udp", "0.0.0.0:3333")
|
||||
if err != nil {
|
||||
slog.Error("error decoding", "err", err)
|
||||
return
|
||||
}
|
||||
|
||||
client, err := net.ListenUDP("udp", addr)
|
||||
if err != nil {
|
||||
slog.Error("error decoding", "err", err)
|
||||
return
|
||||
}
|
||||
defer client.Close()
|
||||
|
||||
for {
|
||||
buffer := make([]byte, 2048)
|
||||
|
||||
length, _, err := client.ReadFromUDP(buffer)
|
||||
if err != nil {
|
||||
slog.Error("error decoding", "err", err)
|
||||
} else if length > 0 {
|
||||
message, err := freeD.Decode(buffer[0:length])
|
||||
if err != nil {
|
||||
slog.Error("error decoding", "err", err)
|
||||
}
|
||||
slog.Info("decoded", "message", message)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user