Compare commits
No commits in common. "2fbfe9cae8c18fb41a2ff11c11c110a2c5384120" and "fb36967670856ede1c52319aa9433beb1548270a" have entirely different histories.
2fbfe9cae8
...
fb36967670
24
client.go
24
client.go
@ -60,7 +60,7 @@ func (s *Client) Request(method, url string, body io.Reader) ([]Result, error) {
|
|||||||
return nil, nil
|
return nil, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) SetState(selector string, state State) ([]Result, error) {
|
func (s *Client) SetState(selector string, state *State) ([]Result, error) {
|
||||||
j, err := json.Marshal(state)
|
j, err := json.Marshal(state)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -74,20 +74,6 @@ func (s *Client) SetState(selector string, state State) ([]Result, error) {
|
|||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) SetStates(states States) ([]Result, error) {
|
|
||||||
j, err := json.Marshal(states)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
res, err := s.Request("PUT", EndpointStates(), bytes.NewBuffer(j))
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return res, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *Client) Toggle(selector string, duration float64) ([]Result, error) {
|
func (s *Client) Toggle(selector string, duration float64) ([]Result, error) {
|
||||||
j, err := json.Marshal(&Toggle{Duration: duration})
|
j, err := json.Marshal(&Toggle{Duration: duration})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -103,18 +89,18 @@ func (s *Client) Toggle(selector string, duration float64) ([]Result, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) PowerOff(selector string) ([]Result, error) {
|
func (s *Client) PowerOff(selector string) ([]Result, error) {
|
||||||
return s.SetState(selector, State{Power: "off"})
|
return s.SetState(selector, &State{Power: "off"})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) FastPowerOff(selector string) {
|
func (s *Client) FastPowerOff(selector string) {
|
||||||
s.SetState(selector, State{Power: "off", Fast: true})
|
s.SetState(selector, &State{Power: "off", Fast: true})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) PowerOn(selector string) ([]Result, error) {
|
func (s *Client) PowerOn(selector string) ([]Result, error) {
|
||||||
return s.SetState(selector, State{Power: "on"})
|
return s.SetState(selector, &State{Power: "on"})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Client) FastPowerOn(selector string) {
|
func (s *Client) FastPowerOn(selector string) {
|
||||||
s.SetState(selector, State{Power: "on", Fast: true})
|
s.SetState(selector, &State{Power: "on", Fast: true})
|
||||||
}
|
}
|
||||||
|
@ -17,9 +17,6 @@ var (
|
|||||||
EndpointState = func(selector string) string {
|
EndpointState = func(selector string) string {
|
||||||
return BuildURL(Endpoint, fmt.Sprintf("/lights/%s/state", selector))
|
return BuildURL(Endpoint, fmt.Sprintf("/lights/%s/state", selector))
|
||||||
}
|
}
|
||||||
EndpointStates = func() string {
|
|
||||||
return BuildURL(Endpoint, "/lights/states")
|
|
||||||
}
|
|
||||||
EndpointToggle = func(selector string) string {
|
EndpointToggle = func(selector string) string {
|
||||||
return BuildURL(Endpoint, fmt.Sprintf("/lights/%s/toggle", selector))
|
return BuildURL(Endpoint, fmt.Sprintf("/lights/%s/toggle", selector))
|
||||||
}
|
}
|
||||||
|
10
structs.go
10
structs.go
@ -18,16 +18,6 @@ type (
|
|||||||
Fast bool `json:"fast,omitempty"`
|
Fast bool `json:"fast,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
StateWithSelector struct {
|
|
||||||
State
|
|
||||||
Selector string `json:"selector"`
|
|
||||||
}
|
|
||||||
|
|
||||||
States struct {
|
|
||||||
States []StateWithSelector `json:"states",omitempty`
|
|
||||||
Defaults State `json:"defaults",omitempty`
|
|
||||||
}
|
|
||||||
|
|
||||||
Client struct {
|
Client struct {
|
||||||
token string
|
token string
|
||||||
Client *http.Client
|
Client *http.Client
|
||||||
|
Loading…
x
Reference in New Issue
Block a user