First commit. adding some stuff.

This commit is contained in:
2020-04-03 22:40:51 +02:00
commit 7cef42c3cb
5 changed files with 121 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
package mdnsserver
import (
"context"
"log"
"github.com/godbus/dbus/v5"
"github.com/holoplot/go-avahi"
)
func Run(ctx context.Context) {
conn, err := dbus.SystemBus()
if err != nil {
return
}
a, err := avahi.ServerNew(conn)
if err != nil {
log.Fatalf("Avahi new failed: %v", err)
}
eg, err := a.EntryGroupNew()
if err != nil {
log.Fatalf("EntryGroupNew() failed: %v", err)
}
hostname, err := a.GetHostName()
if err != nil {
log.Fatalf("GetHostName() failed: %v", err)
}
fqdn, err := a.GetHostNameFqdn()
if err != nil {
log.Fatalf("GetHostNameFqdn() failed: %v", err)
}
err = eg.AddService(avahi.InterfaceUnspec, avahi.ProtoUnspec, 0, hostname, "_my-nifty-service._tcp", "local", fqdn, 1234, nil)
if err != nil {
log.Fatalf("AddService() failed: %v", err)
}
err = eg.Commit()
if err != nil {
log.Fatalf("Commit() failed: %v", err)
}
<-ctx.Done()
eg.Reset()
conn.Close()
}