This commit is contained in:
parent
876123e518
commit
c16f94c6d4
|
@ -28,9 +28,9 @@
|
||||||
27,-,-
|
27,-,-
|
||||||
28,-,-
|
28,-,-
|
||||||
29,-,-
|
29,-,-
|
||||||
30,COIL_LTO_ON,Heat recycler state (running=1, stopped = 0)
|
30,COIL_LTO_ON,Heat recycler state (running=1 stopped=0)
|
||||||
31,-,-
|
31,-,-
|
||||||
32,COIL_HEAT_ON,After heater element state (On = 1, Off = 0)
|
32,COIL_HEAT_ON,After heater element state (On=1 Off=0)
|
||||||
33,-,-
|
33,-,-
|
||||||
34,-,-
|
34,-,-
|
||||||
35,-,-
|
35,-,-
|
||||||
|
|
Can't render this file because it has a wrong number of fields in line 31.
|
|
@ -1,15 +1,31 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"encoding/json"
|
||||||
|
"log"
|
||||||
|
"net/http"
|
||||||
|
|
||||||
"github.com/0ranki/enervent-ctrl/enervent-ctrl-go/pingvinKL"
|
"github.com/0ranki/enervent-ctrl/enervent-ctrl-go/pingvinKL"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
version = "0.0.2"
|
||||||
|
pingvin pingvinKL.PingvinKL
|
||||||
|
)
|
||||||
|
|
||||||
|
func coils(w http.ResponseWriter, r *http.Request) {
|
||||||
|
json.NewEncoder(w).Encode(pingvin.Coils)
|
||||||
|
}
|
||||||
|
|
||||||
|
func listen() {
|
||||||
|
log.Println("Starting pingvinAPI...")
|
||||||
|
http.HandleFunc("/api/v1/coils/", coils)
|
||||||
|
log.Fatal(http.ListenAndServe(":8888", nil))
|
||||||
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
pingvin := pingvinKL.New()
|
log.Println("enervent-ctrl version", version)
|
||||||
|
pingvin = pingvinKL.New()
|
||||||
pingvin.Update()
|
pingvin.Update()
|
||||||
for i := 0; i < len(pingvin.Coils); i++ {
|
listen()
|
||||||
fmt.Println(pingvin.Coils[i].Symbol, pingvin.Coils[i].Value, pingvin.Coils[i].Description)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import (
|
||||||
"bufio"
|
"bufio"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
@ -13,15 +14,20 @@ import (
|
||||||
|
|
||||||
// single coil data
|
// single coil data
|
||||||
type pingvinCoil struct {
|
type pingvinCoil struct {
|
||||||
Symbol string
|
Address int `json:"address"`
|
||||||
Value bool
|
Symbol string `json:"symbol"`
|
||||||
Description string
|
Value bool `json:"value"`
|
||||||
Reserved bool
|
Description string `json:"description"`
|
||||||
|
Reserved bool `json:"reserved"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func newCoil(symbol string, description string) pingvinCoil {
|
func newCoil(address string, symbol string, description string) pingvinCoil {
|
||||||
|
addr, err := strconv.Atoi(address)
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal("newCoil: Atoi:", err)
|
||||||
|
}
|
||||||
reserved := symbol == "-" && description == "-"
|
reserved := symbol == "-" && description == "-"
|
||||||
coil := pingvinCoil{symbol, false, description, reserved}
|
coil := pingvinCoil{addr, symbol, false, description, reserved}
|
||||||
return coil
|
return coil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,7 +127,7 @@ func New() PingvinKL {
|
||||||
pingvin.buslock = &sync.Mutex{}
|
pingvin.buslock = &sync.Mutex{}
|
||||||
coilData := readCsvLines("coils.csv")
|
coilData := readCsvLines("coils.csv")
|
||||||
for i := 0; i < len(coilData); i++ {
|
for i := 0; i < len(coilData); i++ {
|
||||||
pingvin.Coils = append(pingvin.Coils, newCoil(coilData[i][1], coilData[i][2]))
|
pingvin.Coils = append(pingvin.Coils, newCoil(coilData[i][0], coilData[i][1], coilData[i][2]))
|
||||||
}
|
}
|
||||||
return pingvin
|
return pingvin
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue