good progress yay:

- impl http client
- create http client in App()
- generic builder for Service.*
- set Service on app to pass to callbacks later
- impl State
- set State on app to pass to callbacks later
- change panic to log.Fatalln
This commit is contained in:
Sam Lewis
2022-10-11 01:22:23 -04:00
parent 689a6ce4d3
commit 7bcca889f9
13 changed files with 296 additions and 93 deletions

20
state.go Normal file
View File

@@ -0,0 +1,20 @@
package gomeassistant
import "github.com/saml-dev/gome-assistant/internal/http"
// State is used to retrieve state from Home Assistant.
type State struct {
httpClient *http.HttpClient
}
func NewState(c *http.HttpClient) *State {
return &State{httpClient: c}
}
func (s *State) Get(entityId string) (string, error) {
resp, err := s.httpClient.GetState(entityId)
if err != nil {
return "", err
}
return string(resp), nil
}