main.go 586 B

1234567891011121314151617181920212223242526272829303132
  1. package main
  2. import (
  3. "context"
  4. "log"
  5. "os"
  6. "douglasthrift.net/presence"
  7. )
  8. func main() {
  9. ifs := presence.Interfaces{os.Args[1]: true}
  10. hws := make(presence.HardwareAddrStates, len(os.Args[2:]))
  11. for _, hw := range os.Args[2:] {
  12. hws[hw] = presence.NewState()
  13. }
  14. ctx := context.Background()
  15. a, err := presence.NewARP(1)
  16. if err != nil {
  17. log.Fatal(err)
  18. }
  19. ok, err := a.Present(ctx, ifs, hws)
  20. if err != nil {
  21. log.Fatal(err)
  22. }
  23. log.Printf("present=%v", ok)
  24. for hw, state := range hws {
  25. log.Printf("%v present=%v changed=%v", hw, state.Present(), state.Changed())
  26. }
  27. }