diff --git a/resources-fre/strings/strings.xml b/resources-fre/strings/strings.xml index b2bb530..b08bb25 100644 --- a/resources-fre/strings/strings.xml +++ b/resources-fre/strings/strings.xml @@ -15,6 +15,9 @@ Remise à zéro Klaxon Temp. °C/°F + Flash Lights + + Temp: @@ -36,4 +39,8 @@ Déver. portes Ouverte Réveil du vehicule... + Flash Lights + + + diff --git a/resources/layouts/menu.xml b/resources/layouts/menu.xml index 5cc85ae..6f467fd 100644 --- a/resources/layouts/menu.xml +++ b/resources/layouts/menu.xml @@ -3,4 +3,7 @@ + + + diff --git a/resources/strings/strings.xml b/resources/strings/strings.xml index 985107b..4cfcfe0 100644 --- a/resources/strings/strings.xml +++ b/resources/strings/strings.xml @@ -19,6 +19,9 @@ Honk Toggle C vs. F Select Vehicle... + Flash Lights + + API Token Enter your Tesla Account token @@ -43,4 +46,8 @@ Unlock Doors Unlocked Waking vehicle... + Flash Lights + + + diff --git a/source/OptionMenu.mc b/source/OptionMenu.mc index 66dfdf7..7a22262 100644 --- a/source/OptionMenu.mc +++ b/source/OptionMenu.mc @@ -27,6 +27,15 @@ class OptionMenuDelegate extends Ui.MenuInputDelegate { } else { Application.getApp().setProperty("imperial", true); } + } else if (item == :flash_lights) { + _controller._flash_lights = true; + _controller.stateMachine(); + + /* Template: + } else if (item == :%snake_case%) { + _controller._%snake_case% = true; + _controller.stateMachine(); + */ } } diff --git a/source/SecondDelegate.mc b/source/SecondDelegate.mc index 0f49d21..6be219e 100644 --- a/source/SecondDelegate.mc +++ b/source/SecondDelegate.mc @@ -25,6 +25,8 @@ class SecondDelegate extends Ui.BehaviorDelegate { var _unlock; var _lock; var _settings; + // Template: // var _%lower_case% + var _flash_lights; var _data; @@ -58,6 +60,9 @@ class SecondDelegate extends Ui.BehaviorDelegate { _open_frunk = false; _unlock = false; _lock = false; + // Template: // _%snake_case% = false + _flash_lights = false; + if(_dummy_mode) { _data._vehicle = { @@ -158,6 +163,19 @@ class SecondDelegate extends Ui.BehaviorDelegate { _tesla.honkHorn(_vehicle_id, method(:genericHandler)); } + /* Template: + if (_%snake_case%) { + _%snake_case% = false; + _handler.invoke(Ui.loadResource(Rez.Strings.label_%snake_case%)); + _tesla.%camelCase%(_vehicle_id, method(:genericHandler)); + } */ + + if (_flash_lights) { + _flash_lights = false; + _handler.invoke(Ui.loadResource(Rez.Strings.label_flash_lights)); + _tesla.%camelCase%(_vehicle_id, method(:genericHandler)); + } + if (_unlock) { _unlock = false; _handler.invoke(Ui.loadResource(Rez.Strings.label_unlock_doors)); diff --git a/source/Tesla.mc b/source/Tesla.mc index b5ba6d5..1ca0fee 100644 --- a/source/Tesla.mc +++ b/source/Tesla.mc @@ -122,4 +122,18 @@ class Tesla { // } // _notify.invoke(responseCode, data); //} + + function flashLights(vehicle, notify) { + var url = "https://owner-api.teslamotors.com/api/1/vehicles/" + vehicle.toString() + "/command/flash_lights"; + System.println(url); + genericPost(url, notify); + } + + /* Template: + function %camelCase%(vehicle, notify) { + var url = "https://owner-api.teslamotors.com/api/1/vehicles/" + vehicle.toString() + "/command/%snake_case%"; + System.println(url); + genericPost(url, notify); + } + */ }