38 lines
897 B
Go
38 lines
897 B
Go
package carcommand
|
|
|
|
import (
|
|
"github.com/pkg/errors"
|
|
)
|
|
|
|
var (
|
|
ErrNoICCIDForWakeUp = errors.New("no ICCID for sending wake up SMS")
|
|
ErrWakeUpMessageNotSent = errors.New("wake up message wasn't delivered")
|
|
)
|
|
|
|
var acceptedCommands = map[string]struct{}{
|
|
"doors_lock": {},
|
|
"doors_unlock": {},
|
|
"vent_windows": {},
|
|
"close_windows": {},
|
|
"california_mode": {},
|
|
"trunk_open": {},
|
|
"trunk_close": {},
|
|
"flash_headlights": {},
|
|
"alert": {},
|
|
"temp_cabin": {},
|
|
"defrost": {},
|
|
"driver_seat_preheat": {},
|
|
"passenger_seat_preheat": {},
|
|
"steering_wheel_preheat": {},
|
|
"precondition": {},
|
|
"charging": {},
|
|
}
|
|
|
|
func ValidateCommand(cmd string) error {
|
|
if _, ok := acceptedCommands[cmd]; !ok {
|
|
return errors.New("unknown command")
|
|
}
|
|
|
|
return nil
|
|
}
|