Files
2023-05-11 16:06:53 -07:00

47 lines
825 B
Go

package main
import (
"encoding/json"
"fmt"
"net"
"github.com/sirupsen/logrus"
)
func main() {
s, err := net.ResolveUDPAddr("udp4", "localhost:5000")
c, err := net.DialUDP("udp4", nil, s)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("The UDP server is %s\n", c.RemoteAddr().String())
defer c.Close()
// send json data
data := map[string]interface{}{
"name": "John",
"audioData": 30,
}
marshalledData, err := json.Marshal(data)
if err != nil {
logrus.Error("Error while marshalling data", err)
return
}
_, err = c.Write(marshalledData)
if err != nil {
logrus.Error("Error while writing data", err)
return
}
buffer := make([]byte, 1024)
n, _, err := c.ReadFromUDP(buffer)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Reply: %s\n", string(buffer[0:n]))
}