diff --git a/sdk/types/scrypted_python/scrypted_sdk/types.py b/sdk/types/scrypted_python/scrypted_sdk/types.py index 4fca0ed03..2ff008784 100644 --- a/sdk/types/scrypted_python/scrypted_sdk/types.py +++ b/sdk/types/scrypted_python/scrypted_sdk/types.py @@ -139,6 +139,7 @@ class ScryptedInterface(Enum): RTCSignalingChannel = "RTCSignalingChannel" RTCSignalingClient = "RTCSignalingClient" Readme = "Readme" + Reboot = "Reboot" Refresh = "Refresh" Scene = "Scene" Scriptable = "Scriptable" @@ -1042,6 +1043,11 @@ class Readme: pass pass +class Reboot: + async def reboot(self) -> None: + pass + pass + class Refresh: async def getRefreshFrequency(self) -> float: pass @@ -1461,6 +1467,7 @@ class ScryptedInterfaceMethods(Enum): discoverDevices = "discoverDevices" createDevice = "createDevice" getCreateDeviceSettings = "getCreateDeviceSettings" + reboot = "reboot" getRefreshFrequency = "getRefreshFrequency" refresh = "refresh" getMediaStatus = "getMediaStatus" @@ -2243,6 +2250,13 @@ ScryptedInterfaceDescriptors = { "chargeState" ] }, + "Reboot": { + "name": "Reboot", + "methods": [ + "reboot" + ], + "properties": [] + }, "Refresh": { "name": "Refresh", "methods": [ diff --git a/sdk/types/src/types.input.ts b/sdk/types/src/types.input.ts index 67e47301b..d38b314b9 100644 --- a/sdk/types/src/types.input.ts +++ b/sdk/types/src/types.input.ts @@ -1051,6 +1051,10 @@ export enum ChargeState { export interface Charger { chargeState?: ChargeState; } + +export interface Reboot { + reboot(): Promise; +} /** * Refresh indicates that this device has properties that are not automatically updated, and must be periodically refreshed via polling. Device implementations should never implement their own underlying polling algorithm, and instead implement Refresh to allow Scrypted to manage polling intelligently. * @@ -1918,6 +1922,7 @@ export enum ScryptedInterface { DeviceCreator = "DeviceCreator", Battery = "Battery", Charger = "Charger", + Reboot = "Reboot", Refresh = "Refresh", MediaPlayer = "MediaPlayer", Online = "Online",