"regexp"
"net/http"
"net/url"
- "log"
"time"
+ "fmt"
+ r3events "svn.spreadspace.org/realraum/go.svn/r3events"
)
updateStatusString()
jsondata_b, err := spaceapidata.MakeJSON()
if err != nil {
- log.Println("Error:", err)
+ Syslog_.Println("Error:", err)
return
}
//jsondata_b := re_querystresc_.ReplaceAllFunc(jsondata_b, func(in []byte) []byte {
jsondata := url.QueryEscape(string(jsondata_b))
resp, err := http.Get("http://www.realraum.at/cgi/status.cgi?pass=jako16&set=" + jsondata)
if err != nil {
- log.Println("Error publishing realraum info", err)
+ Syslog_.Println("Error publishing realraum info", err)
return
}
resp.Body.Close()
events := ps.Sub("presence","door","sensors","buttons","updateinterval")
for eventinterface := range(events) {
+ //Debug_.Printf("EventToWeb: %s" , eventinterface)
switch event := eventinterface.(type) {
- case TimeTick:
+ case r3events.TimeTick:
publishStateToWeb()
- case PresenceUpdate:
+ case r3events.PresenceUpdate:
statusstate.present = event.Present
publishStateToWeb()
- case DoorStatusUpdate:
- spaceapidata.MergeInSensor(spaceapi.MakeDoorLockSensor("TorwaechterLock", "Türschloß", event.Locked))
+ case r3events.BackdoorAjarUpdate:
+ spaceapidata.MergeInSensor(spaceapi.MakeDoorLockSensor("HintertorwaechterAjarSensor", "Hintertürkontakt", event.Shut))
+ publishStateToWeb()
+ case r3events.DoorAjarUpdate:
spaceapidata.MergeInSensor(spaceapi.MakeDoorLockSensor("TorwaechterAjarSensor", "Türkontakt", event.Shut))
publishStateToWeb()
- case ButtonPressUpdate:
+ case r3events.DoorLockUpdate:
+ spaceapidata.MergeInSensor(spaceapi.MakeDoorLockSensor("TorwaechterLock", "Türschloß", event.Locked))
+ publishStateToWeb()
+ case r3events.BoreDoomButtonPressEvent:
statusstate.buttonpress_until = event.Ts + 3600
- spaceapidata.AddSpaceEvent("PanicButton", "check-in", "The button has been pressed")
+ spaceapidata.AddSpaceEvent("BoreDOOMButton", "check-in", "The button has been pressed")
publishStateToWeb()
- case TempSensorUpdate:
- spaceapidata.MergeInSensor(spaceapi.MakeTempCSensor("Temp0","Decke", event.Value))
- case IlluminationSensorUpdate:
- spaceapidata.MergeInSensor(spaceapi.MakeIlluminationSensor("Photodiode","Decke","1024V/5V", event.Value))
+ case r3events.TempSensorUpdate:
+ var tempsensorlocation string
+ switch event.Sensorindex {
+ case 0:
+ tempsensorlocation = "LoTHR"
+ case 1:
+ tempsensorlocation = "CX"
+ default:
+ tempsensorlocation = "Sonstwo"
+ }
+ spaceapidata.MergeInSensor(spaceapi.MakeTempCSensor(fmt.Sprintf("Temp%d",event.Sensorindex),tempsensorlocation, event.Value))
+ case r3events.IlluminationSensorUpdate:
+ spaceapidata.MergeInSensor(spaceapi.MakeIlluminationSensor("Photodiode","LoTHR","1024V/5V", event.Value))
+ case r3events.GasLeakAlert:
+ spaceapidata.AddSpaceEvent("GasLeak", "alert", "GasLeak Alert has been triggered")
+ publishStateToWeb()
}
}
}