From c5a875be34a815224894ba704cf5d2484d1df069 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Fri, 22 May 2026 14:56:42 +0200 Subject: [PATCH] Add basic usage example --- cmd/basic_usage/main.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 cmd/basic_usage/main.go diff --git a/cmd/basic_usage/main.go b/cmd/basic_usage/main.go new file mode 100644 index 0000000..1e39762 --- /dev/null +++ b/cmd/basic_usage/main.go @@ -0,0 +1,38 @@ +package main + +import ( + "fmt" + "os" +) + +import "git.smith.eu/m/go-agwpe" + +func main() { + engine := agwpe.NewPacketEngine("172.16.0.4:8000") + + err := engine.Connect() + if err != nil { + fmt.Printf("Error connecting: %v\n", err) + } + defer engine.Disconnect() + + version := engine.Version() + fmt.Printf("AGWPE version: %s\n", version) + + frame := agwpe.NewVersionFrame() + frameData, err := frame.Serialize() + if err != nil { + fmt.Fprintf(os.Stderr, "Serialization error: %v\n", err) + } + + err = engine.Send(frameData) + if err != nil { + fmt.Println("Error:", err) + } + + for msg := range engine.Messages { + major_verion := (uint16(msg[37]) << 8) | uint16(msg[36]) + minor_verion := (uint16(msg[41]) << 8) | uint16(msg[40]) + fmt.Printf("AGWPE version: %d.%d\n", major_verion, minor_verion) + } +}