gobot.io/x/gobot/v2@v2.1.0/examples/pebble.go (about) 1 //go:build example 2 // +build example 3 4 // 5 // Do not build by default. 6 7 package main 8 9 import ( 10 "fmt" 11 12 "gobot.io/x/gobot/v2" 13 "gobot.io/x/gobot/v2/api" 14 "gobot.io/x/gobot/v2/platforms/pebble" 15 ) 16 17 func main() { 18 master := gobot.NewMaster() 19 api := api.NewAPI(master) 20 api.Port = "8080" 21 api.Start() 22 23 pebbleAdaptor := pebble.NewAdaptor() 24 pebbleDriver := pebble.NewDriver(pebbleAdaptor) 25 26 work := func() { 27 pebbleDriver.SendNotification("Hello Pebble!") 28 pebbleDriver.On(pebbleDriver.Event("button"), func(data interface{}) { 29 fmt.Println("Button pushed: " + data.(string)) 30 }) 31 32 pebbleDriver.On(pebbleDriver.Event("tap"), func(data interface{}) { 33 fmt.Println("Tap event detected") 34 }) 35 } 36 37 robot := gobot.NewRobot("pebble", 38 []gobot.Connection{pebbleAdaptor}, 39 []gobot.Device{pebbleDriver}, 40 work, 41 ) 42 43 master.AddRobot(robot) 44 45 master.Start() 46 }