mirror of https://github.com/nymea/nymea.git
3767 lines
103 KiB
Plaintext
3767 lines
103 KiB
Plaintext
In following section you can find a detaild description of the current API version 1.4.
|
|
\list
|
|
\li \l{Types}
|
|
\li \l{Methods}
|
|
\li \l{Notifications}
|
|
\endlist
|
|
\section1 Types
|
|
\section3 Action
|
|
\code
|
|
{
|
|
"actionTypeId": "Uuid",
|
|
"deviceId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Param}
|
|
\section3 ActionType
|
|
\code
|
|
{
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ParamType}
|
|
\section3 BasicTag
|
|
\code
|
|
[
|
|
"BasicTagService",
|
|
"BasicTagDevice",
|
|
"BasicTagSensor",
|
|
"BasicTagActuator",
|
|
"BasicTagLighting",
|
|
"BasicTagEnergy",
|
|
"BasicTagMultimedia",
|
|
"BasicTagWeather",
|
|
"BasicTagGateway",
|
|
"BasicTagHeating",
|
|
"BasicTagCooling",
|
|
"BasicTagNotification",
|
|
"BasicTagSecurity",
|
|
"BasicTagTime",
|
|
"BasicTagShading",
|
|
"BasicTagAppliance",
|
|
"BasicTagCamera",
|
|
"BasicTagLock"
|
|
]
|
|
\endcode
|
|
\section3 BasicType
|
|
\code
|
|
[
|
|
"Uuid",
|
|
"String",
|
|
"Int",
|
|
"Uint",
|
|
"Double",
|
|
"Bool",
|
|
"Variant",
|
|
"Color",
|
|
"Time",
|
|
"Object"
|
|
]
|
|
\endcode
|
|
\section3 CalendarItem
|
|
\code
|
|
{
|
|
"duration": "Uint",
|
|
"o:datetime": "Uint",
|
|
"o:repeating": "$ref:RepeatingOption",
|
|
"o:startTime": "Time"
|
|
}
|
|
\endcode
|
|
See also: \l{RepeatingOption}
|
|
\section3 ConfigurationError
|
|
\code
|
|
[
|
|
"ConfigurationErrorNoError",
|
|
"ConfigurationErrorInvalidTimeZone",
|
|
"ConfigurationErrorInvalidStationName",
|
|
"ConfigurationErrorInvalidId",
|
|
"ConfigurationErrorInvalidPort",
|
|
"ConfigurationErrorInvalidHostAddress",
|
|
"ConfigurationErrorBluetoothHardwareNotAvailable",
|
|
"ConfigurationErrorInvalidCertificate"
|
|
]
|
|
\endcode
|
|
\section3 CreateMethod
|
|
\code
|
|
[
|
|
"CreateMethodUser",
|
|
"CreateMethodAuto",
|
|
"CreateMethodDiscovery"
|
|
]
|
|
\endcode
|
|
\section3 Device
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid",
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"o:parentId": "Uuid",
|
|
"params": [
|
|
"$ref:Param"
|
|
],
|
|
"setupComplete": "Bool",
|
|
"states": [
|
|
{
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Param}
|
|
\section3 DeviceClass
|
|
\code
|
|
{
|
|
"actionTypes": [
|
|
"$ref:ActionType"
|
|
],
|
|
"basicTags": [
|
|
"$ref:BasicTag"
|
|
],
|
|
"createMethods": [
|
|
"$ref:CreateMethod"
|
|
],
|
|
"deviceIcon": "$ref:DeviceIcon",
|
|
"discoveryParamTypes": [
|
|
"$ref:ParamType"
|
|
],
|
|
"displayName": "String",
|
|
"eventTypes": [
|
|
"$ref:EventType"
|
|
],
|
|
"id": "Uuid",
|
|
"interfaces": [
|
|
"String"
|
|
],
|
|
"name": "String",
|
|
"o:criticalStateTypeId": "Uuid",
|
|
"o:primaryActionTypeId": "Uuid",
|
|
"o:primaryStateTypeId": "Uuid",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
],
|
|
"pluginId": "Uuid",
|
|
"setupMethod": "$ref:SetupMethod",
|
|
"stateTypes": [
|
|
"$ref:StateType"
|
|
],
|
|
"vendorId": "Uuid"
|
|
}
|
|
\endcode
|
|
See also: \l{ActionType}, \l{CreateMethod}, \l{DeviceIcon}, \l{BasicTag}, \l{ParamType}, \l{SetupMethod}, \l{StateType}, \l{EventType}, \l{ParamType}
|
|
\section3 DeviceDescriptor
|
|
\code
|
|
{
|
|
"description": "String",
|
|
"id": "Uuid",
|
|
"title": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 DeviceError
|
|
\code
|
|
[
|
|
"DeviceErrorNoError",
|
|
"DeviceErrorPluginNotFound",
|
|
"DeviceErrorVendorNotFound",
|
|
"DeviceErrorDeviceNotFound",
|
|
"DeviceErrorDeviceClassNotFound",
|
|
"DeviceErrorActionTypeNotFound",
|
|
"DeviceErrorStateTypeNotFound",
|
|
"DeviceErrorEventTypeNotFound",
|
|
"DeviceErrorDeviceDescriptorNotFound",
|
|
"DeviceErrorMissingParameter",
|
|
"DeviceErrorInvalidParameter",
|
|
"DeviceErrorSetupFailed",
|
|
"DeviceErrorDuplicateUuid",
|
|
"DeviceErrorCreationMethodNotSupported",
|
|
"DeviceErrorSetupMethodNotSupported",
|
|
"DeviceErrorHardwareNotAvailable",
|
|
"DeviceErrorHardwareFailure",
|
|
"DeviceErrorAuthentificationFailure",
|
|
"DeviceErrorAsync",
|
|
"DeviceErrorDeviceInUse",
|
|
"DeviceErrorDeviceInRule",
|
|
"DeviceErrorDeviceIsChild",
|
|
"DeviceErrorPairingTransactionIdNotFound",
|
|
"DeviceErrorParameterNotWritable"
|
|
]
|
|
\endcode
|
|
\section3 DeviceIcon
|
|
\code
|
|
[
|
|
"DeviceIconNone",
|
|
"DeviceIconBed",
|
|
"DeviceIconBlinds",
|
|
"DeviceIconCeilingLamp",
|
|
"DeviceIconCouch",
|
|
"DeviceIconDeskLamp",
|
|
"DeviceIconDesk",
|
|
"DeviceIconHifi",
|
|
"DeviceIconPower",
|
|
"DeviceIconEnergy",
|
|
"DeviceIconRadio",
|
|
"DeviceIconSmartPhone",
|
|
"DeviceIconSocket",
|
|
"DeviceIconStandardLamp",
|
|
"DeviceIconSun",
|
|
"DeviceIconTablet",
|
|
"DeviceIconThermometer",
|
|
"DeviceIconTune",
|
|
"DeviceIconTv",
|
|
"DeviceIconBattery",
|
|
"DeviceIconDishwasher",
|
|
"DeviceIconWashingMachine",
|
|
"DeviceIconLaundryDryer",
|
|
"DeviceIconIrHeater",
|
|
"DeviceIconRadiator",
|
|
"DeviceIconSwitch",
|
|
"DeviceIconMotionDetectors",
|
|
"DeviceIconWeather",
|
|
"DeviceIconTime",
|
|
"DeviceIconLightBulb",
|
|
"DeviceIconGateway",
|
|
"DeviceIconMail",
|
|
"DeviceIconNetwork",
|
|
"DeviceIconCloud",
|
|
"DeviceIconGarage",
|
|
"DeviceIconRollerShutter"
|
|
]
|
|
\endcode
|
|
\section3 Event
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"eventTypeId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Param}
|
|
\section3 EventDescriptor
|
|
\code
|
|
{
|
|
"o:deviceId": "Uuid",
|
|
"o:eventTypeId": "Uuid",
|
|
"o:interface": "String",
|
|
"o:interfaceEvent": "String",
|
|
"o:paramDescriptors": [
|
|
"$ref:ParamDescriptor"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ParamDescriptor}
|
|
\section3 EventType
|
|
\code
|
|
{
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:graphRelevant": "Bool",
|
|
"o:ruleRelevant": "Bool",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ParamType}
|
|
\section3 InputType
|
|
\code
|
|
[
|
|
"InputTypeNone",
|
|
"InputTypeTextLine",
|
|
"InputTypeTextArea",
|
|
"InputTypePassword",
|
|
"InputTypeSearch",
|
|
"InputTypeMail",
|
|
"InputTypeIPv4Address",
|
|
"InputTypeIPv6Address",
|
|
"InputTypeUrl",
|
|
"InputTypeMacAddress"
|
|
]
|
|
\endcode
|
|
\section3 LogEntry
|
|
\code
|
|
{
|
|
"loggingLevel": "$ref:LoggingLevel",
|
|
"o:active": "Bool",
|
|
"o:deviceId": "Uuid",
|
|
"o:errorCode": "String",
|
|
"o:eventType": "$ref:LoggingEventType",
|
|
"o:typeId": "Uuid",
|
|
"o:value": "String",
|
|
"source": "$ref:LoggingSource",
|
|
"timestamp": "Int"
|
|
}
|
|
\endcode
|
|
See also: \l{LoggingSource}, \l{LoggingEventType}, \l{LoggingLevel}
|
|
\section3 LoggingError
|
|
\code
|
|
[
|
|
"LoggingErrorNoError",
|
|
"LoggingErrorLogEntryNotFound",
|
|
"LoggingErrorInvalidFilterParameter"
|
|
]
|
|
\endcode
|
|
\section3 LoggingEventType
|
|
\code
|
|
[
|
|
"LoggingEventTypeTrigger",
|
|
"LoggingEventTypeActiveChange",
|
|
"LoggingEventTypeEnabledChange",
|
|
"LoggingEventTypeActionsExecuted",
|
|
"LoggingEventTypeExitActionsExecuted"
|
|
]
|
|
\endcode
|
|
\section3 LoggingLevel
|
|
\code
|
|
[
|
|
"LoggingLevelInfo",
|
|
"LoggingLevelAlert"
|
|
]
|
|
\endcode
|
|
\section3 LoggingSource
|
|
\code
|
|
[
|
|
"LoggingSourceSystem",
|
|
"LoggingSourceEvents",
|
|
"LoggingSourceActions",
|
|
"LoggingSourceStates",
|
|
"LoggingSourceRules"
|
|
]
|
|
\endcode
|
|
\section3 NetworkDeviceState
|
|
\code
|
|
[
|
|
"NetworkDeviceStateUnknown",
|
|
"NetworkDeviceStateUnmanaged",
|
|
"NetworkDeviceStateUnavailable",
|
|
"NetworkDeviceStateDisconnected",
|
|
"NetworkDeviceStatePrepare",
|
|
"NetworkDeviceStateConfig",
|
|
"NetworkDeviceStateNeedAuth",
|
|
"NetworkDeviceStateIpConfig",
|
|
"NetworkDeviceStateIpCheck",
|
|
"NetworkDeviceStateSecondaries",
|
|
"NetworkDeviceStateActivated",
|
|
"NetworkDeviceStateDeactivating",
|
|
"NetworkDeviceStateFailed"
|
|
]
|
|
\endcode
|
|
\section3 NetworkManagerError
|
|
\code
|
|
[
|
|
"NetworkManagerErrorNoError",
|
|
"NetworkManagerErrorUnknownError",
|
|
"NetworkManagerErrorWirelessNotAvailable",
|
|
"NetworkManagerErrorAccessPointNotFound",
|
|
"NetworkManagerErrorNetworkInterfaceNotFound",
|
|
"NetworkManagerErrorInvalidNetworkDeviceType",
|
|
"NetworkManagerErrorWirelessNetworkingDisabled",
|
|
"NetworkManagerErrorWirelessConnectionFailed",
|
|
"NetworkManagerErrorNetworkingDisabled",
|
|
"NetworkManagerErrorNetworkManagerNotAvailable"
|
|
]
|
|
\endcode
|
|
\section3 NetworkManagerState
|
|
\code
|
|
[
|
|
"NetworkManagerStateUnknown",
|
|
"NetworkManagerStateAsleep",
|
|
"NetworkManagerStateDisconnected",
|
|
"NetworkManagerStateDisconnecting",
|
|
"NetworkManagerStateConnecting",
|
|
"NetworkManagerStateConnectedLocal",
|
|
"NetworkManagerStateConnectedSite",
|
|
"NetworkManagerStateConnectedGlobal"
|
|
]
|
|
\endcode
|
|
\section3 Param
|
|
\code
|
|
{
|
|
"paramTypeId": "Uuid",
|
|
"value": "$ref:BasicType"
|
|
}
|
|
\endcode
|
|
See also: \l{BasicType}
|
|
\section3 ParamDescriptor
|
|
\code
|
|
{
|
|
"operator": "$ref:ValueOperator",
|
|
"paramTypeId": "Uuid",
|
|
"value": "$ref:BasicType"
|
|
}
|
|
\endcode
|
|
See also: \l{ValueOperator}, \l{BasicType}
|
|
\section3 ParamType
|
|
\code
|
|
{
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:allowedValues": [
|
|
"Variant"
|
|
],
|
|
"o:defaultValue": "Variant",
|
|
"o:inputType": "$ref:InputType",
|
|
"o:maxValue": "Variant",
|
|
"o:minValue": "Variant",
|
|
"o:readOnly": "Bool",
|
|
"o:unit": "$ref:Unit",
|
|
"type": "$ref:BasicType"
|
|
}
|
|
\endcode
|
|
See also: \l{Unit}, \l{InputType}, \l{BasicType}
|
|
\section3 Plugin
|
|
\code
|
|
{
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ParamType}
|
|
\section3 RemovePolicy
|
|
\code
|
|
[
|
|
"RemovePolicyCascade",
|
|
"RemovePolicyUpdate"
|
|
]
|
|
\endcode
|
|
\section3 RepeatingMode
|
|
\code
|
|
[
|
|
"RepeatingModeNone",
|
|
"RepeatingModeHourly",
|
|
"RepeatingModeDaily",
|
|
"RepeatingModeWeekly",
|
|
"RepeatingModeMonthly",
|
|
"RepeatingModeYearly"
|
|
]
|
|
\endcode
|
|
\section3 RepeatingOption
|
|
\code
|
|
{
|
|
"mode": "$ref:RepeatingMode",
|
|
"o:monthDays": [
|
|
"Int"
|
|
],
|
|
"o:weekDays": [
|
|
"Int"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{RepeatingMode}
|
|
\section3 Rule
|
|
\code
|
|
{
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"active": "Bool",
|
|
"enabled": "Bool",
|
|
"eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"executable": "Bool",
|
|
"exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"stateEvaluator": "$ref:StateEvaluator",
|
|
"timeDescriptor": "$ref:TimeDescriptor"
|
|
}
|
|
\endcode
|
|
See also: \l{TimeDescriptor}, \l{RuleAction}, \l{StateEvaluator}, \l{RuleAction}, \l{EventDescriptor}
|
|
\section3 RuleAction
|
|
\code
|
|
{
|
|
"o:actionTypeId": "Uuid",
|
|
"o:deviceId": "Uuid",
|
|
"o:interface": "String",
|
|
"o:interfaceAction": "String",
|
|
"o:ruleActionParams": [
|
|
"$ref:RuleActionParam"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{RuleActionParam}
|
|
\section3 RuleActionParam
|
|
\code
|
|
{
|
|
"o:eventParamTypeId": "Uuid",
|
|
"o:eventTypeId": "Uuid",
|
|
"o:paramName": "String",
|
|
"o:paramTypeId": "Uuid",
|
|
"o:value": "$ref:BasicType"
|
|
}
|
|
\endcode
|
|
See also: \l{BasicType}
|
|
\section3 RuleDescription
|
|
\code
|
|
{
|
|
"active": "Bool",
|
|
"enabled": "Bool",
|
|
"executable": "Bool",
|
|
"id": "Uuid",
|
|
"name": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 RuleError
|
|
\code
|
|
[
|
|
"RuleErrorNoError",
|
|
"RuleErrorInvalidRuleId",
|
|
"RuleErrorRuleNotFound",
|
|
"RuleErrorDeviceNotFound",
|
|
"RuleErrorEventTypeNotFound",
|
|
"RuleErrorStateTypeNotFound",
|
|
"RuleErrorActionTypeNotFound",
|
|
"RuleErrorInvalidParameter",
|
|
"RuleErrorInvalidRuleFormat",
|
|
"RuleErrorMissingParameter",
|
|
"RuleErrorInvalidRuleActionParameter",
|
|
"RuleErrorInvalidStateEvaluatorValue",
|
|
"RuleErrorTypesNotMatching",
|
|
"RuleErrorNotExecutable",
|
|
"RuleErrorInvalidTimeDescriptor",
|
|
"RuleErrorInvalidRepeatingOption",
|
|
"RuleErrorInvalidCalendarItem",
|
|
"RuleErrorInvalidTimeEventItem",
|
|
"RuleErrorContainsEventBasesAction",
|
|
"RuleErrorNoExitActions",
|
|
"RuleErrorInterfaceNotFound"
|
|
]
|
|
\endcode
|
|
\section3 ServerConfiguration
|
|
\code
|
|
{
|
|
"address": "String",
|
|
"authenticationEnabled": "Bool",
|
|
"id": "String",
|
|
"port": "Uint",
|
|
"sslEnabled": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 SetupMethod
|
|
\code
|
|
[
|
|
"SetupMethodJustAdd",
|
|
"SetupMethodDisplayPin",
|
|
"SetupMethodEnterPin",
|
|
"SetupMethodPushButton"
|
|
]
|
|
\endcode
|
|
\section3 State
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
\endcode
|
|
|
|
\section3 StateDescriptor
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"operator": "$ref:ValueOperator",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
\endcode
|
|
See also: \l{ValueOperator}
|
|
\section3 StateEvaluator
|
|
\code
|
|
{
|
|
"o:childEvaluators": [
|
|
"$ref:StateEvaluator"
|
|
],
|
|
"o:operator": "$ref:StateOperator",
|
|
"o:stateDescriptor": "$ref:StateDescriptor"
|
|
}
|
|
\endcode
|
|
See also: \l{StateEvaluator}, \l{StateDescriptor}, \l{StateOperator}
|
|
\section3 StateOperator
|
|
\code
|
|
[
|
|
"StateOperatorAnd",
|
|
"StateOperatorOr"
|
|
]
|
|
\endcode
|
|
\section3 StateType
|
|
\code
|
|
{
|
|
"defaultValue": "Variant",
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:graphRelevant": "Bool",
|
|
"o:maxValue": "Variant",
|
|
"o:minValue": "Variant",
|
|
"o:possibleValues": [
|
|
"Variant"
|
|
],
|
|
"o:ruleRelevant": "Bool",
|
|
"o:unit": "$ref:Unit",
|
|
"type": "$ref:BasicType"
|
|
}
|
|
\endcode
|
|
See also: \l{Unit}, \l{BasicType}
|
|
\section3 TimeDescriptor
|
|
\code
|
|
{
|
|
"o:calendarItems": [
|
|
"$ref:CalendarItem"
|
|
],
|
|
"o:timeEventItems": [
|
|
"$ref:TimeEventItem"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{TimeEventItem}, \l{CalendarItem}
|
|
\section3 TimeEventItem
|
|
\code
|
|
{
|
|
"o:datetime": "Uint",
|
|
"o:repeating": "$ref:RepeatingOption",
|
|
"o:time": "Time"
|
|
}
|
|
\endcode
|
|
See also: \l{RepeatingOption}
|
|
\section3 TokenInfo
|
|
\code
|
|
{
|
|
"creationTime": "Uint",
|
|
"deviceName": "String",
|
|
"id": "Uuid",
|
|
"userName": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Unit
|
|
\code
|
|
[
|
|
"UnitNone",
|
|
"UnitSeconds",
|
|
"UnitMinutes",
|
|
"UnitHours",
|
|
"UnitUnixTime",
|
|
"UnitMeterPerSecond",
|
|
"UnitKiloMeterPerHour",
|
|
"UnitDegree",
|
|
"UnitRadiant",
|
|
"UnitDegreeCelsius",
|
|
"UnitDegreeKelvin",
|
|
"UnitMired",
|
|
"UnitMilliBar",
|
|
"UnitBar",
|
|
"UnitPascal",
|
|
"UnitHectoPascal",
|
|
"UnitAtmosphere",
|
|
"UnitLumen",
|
|
"UnitLux",
|
|
"UnitCandela",
|
|
"UnitMilliMeter",
|
|
"UnitCentiMeter",
|
|
"UnitMeter",
|
|
"UnitKiloMeter",
|
|
"UnitGram",
|
|
"UnitKiloGram",
|
|
"UnitDezibel",
|
|
"UnitBpm",
|
|
"UnitKiloByte",
|
|
"UnitMegaByte",
|
|
"UnitGigaByte",
|
|
"UnitTeraByte",
|
|
"UnitMilliWatt",
|
|
"UnitWatt",
|
|
"UnitKiloWatt",
|
|
"UnitKiloWattHour",
|
|
"UnitEuroPerMegaWattHour",
|
|
"UnitEuroCentPerKiloWattHour",
|
|
"UnitPercentage",
|
|
"UnitPartsPerMillion",
|
|
"UnitEuro",
|
|
"UnitDollar",
|
|
"UnitHerz",
|
|
"UnitAmpere",
|
|
"UnitMilliAmpere",
|
|
"UnitVolt",
|
|
"UnitMilliVolt",
|
|
"UnitVoltAmpere",
|
|
"UnitVoltAmpereReactive",
|
|
"UnitAmpereHour"
|
|
]
|
|
\endcode
|
|
\section3 UserError
|
|
\code
|
|
[
|
|
"UserErrorNoError",
|
|
"UserErrorBackendError",
|
|
"UserErrorInvalidUserId",
|
|
"UserErrorDuplicateUserId",
|
|
"UserErrorBadPassword",
|
|
"UserErrorTokenNotFound",
|
|
"UserErrorPermissionDenied"
|
|
]
|
|
\endcode
|
|
\section3 ValueOperator
|
|
\code
|
|
[
|
|
"ValueOperatorEquals",
|
|
"ValueOperatorNotEquals",
|
|
"ValueOperatorLess",
|
|
"ValueOperatorGreater",
|
|
"ValueOperatorLessOrEqual",
|
|
"ValueOperatorGreaterOrEqual"
|
|
]
|
|
\endcode
|
|
\section3 Vendor
|
|
\code
|
|
{
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"name": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 WebServerConfiguration
|
|
\code
|
|
{
|
|
"address": "String",
|
|
"authenticationEnabled": "Bool",
|
|
"id": "String",
|
|
"port": "Uint",
|
|
"sslEnabled": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 WiredNetworkDevice
|
|
\code
|
|
{
|
|
"bitRate": "String",
|
|
"interface": "String",
|
|
"macAddress": "String",
|
|
"pluggedIn": "Bool",
|
|
"state": "$ref:NetworkDeviceState"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkDeviceState}
|
|
\section3 WirelessAccessPoint
|
|
\code
|
|
{
|
|
"frequency": "Double",
|
|
"macAddress": "String",
|
|
"protected": "Bool",
|
|
"signalStrength": "Int",
|
|
"ssid": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 WirelessNetworkDevice
|
|
\code
|
|
{
|
|
"bitRate": "String",
|
|
"interface": "String",
|
|
"macAddress": "String",
|
|
"o:currentAccessPoint": "$ref:WirelessAccessPoint",
|
|
"state": "$ref:NetworkDeviceState"
|
|
}
|
|
\endcode
|
|
See also: \l{WirelessAccessPoint}, \l{NetworkDeviceState}
|
|
\section1 Methods
|
|
\section3 Actions.ExecuteAction
|
|
Execute a single action.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"actionTypeId": "Uuid",
|
|
"deviceId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}, \l{Param}
|
|
\section3 Actions.GetActionType
|
|
Get the ActionType for the given ActionTypeId
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"actionTypeId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:actionType": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
}
|
|
}
|
|
\endcode
|
|
See also: \l{ParamType}, \l{DeviceError}
|
|
\section3 Configuration.DeleteTcpServerConfiguration
|
|
Delete a TCP interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"id": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.DeleteWebServerConfiguration
|
|
Delete a WebServer interface of the server.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"id": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.DeleteWebSocketServerConfiguration
|
|
Delete a WebSocket Server interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"id": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.GetAvailableLanguages
|
|
Returns a list of locale codes available for the server. i.e. en_US, de_AT
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"languages": [
|
|
"String"
|
|
]
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.GetConfigurations
|
|
Get all configuration parameters of the server.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"basicConfiguration": {
|
|
"debugServerEnabled": "Bool",
|
|
"language": "String",
|
|
"serverName": "String",
|
|
"serverTime": "Uint",
|
|
"serverUuid": "Uuid",
|
|
"timeZone": "String"
|
|
},
|
|
"cloud": {
|
|
"enabled": "Bool"
|
|
},
|
|
"tcpServerConfigurations": [
|
|
"$ref:ServerConfiguration"
|
|
],
|
|
"webServerConfigurations": [
|
|
"$ref:WebServerConfiguration"
|
|
],
|
|
"webSocketServerConfigurations": [
|
|
"$ref:ServerConfiguration"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ServerConfiguration}, \l{WebServerConfiguration}, \l{ServerConfiguration}
|
|
\section3 Configuration.GetTimeZones
|
|
Get the list of available timezones.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"timeZones": [
|
|
"String"
|
|
]
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.SetCloudEnabled
|
|
Sets whether the cloud connection is enabled or disabled in the settings.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enabled": "Bool"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.SetDebugServerEnabled
|
|
Enable or disable the debug server.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enabled": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.SetLanguage
|
|
Sets the server language to the given language. See also: "GetAvailableLanguages"
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"language": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.SetServerName
|
|
Set the name of the server. Default is nymea.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"serverName": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.SetTcpServerConfiguration
|
|
Configure a TCP interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"configuration": "$ref:ServerConfiguration"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}, \l{ServerConfiguration}
|
|
\section3 Configuration.SetTimeZone
|
|
Set the time zone of the server. See also: "GetTimeZones"
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"timeZone": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}
|
|
\section3 Configuration.SetWebServerConfiguration
|
|
Configure a WebServer interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"configuration": "$ref:WebServerConfiguration"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}, \l{WebServerConfiguration}
|
|
\section3 Configuration.SetWebSocketServerConfiguration
|
|
Configure a WebSocket Server interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"configuration": "$ref:ServerConfiguration"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
\endcode
|
|
See also: \l{ConfigurationError}, \l{ServerConfiguration}
|
|
\section3 Devices.AddConfiguredDevice
|
|
Add a configured device with a setupMethod of SetupMethodJustAdd. For devices with a setupMethod different than SetupMethodJustAdd, use PairDevice. Use deviceDescriptorId or deviceParams, depending on the createMethod of the device class. CreateMethodJustAdd takes the parameters you want to have with that device. CreateMethodDiscovery requires the use of a deviceDescriptorId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid",
|
|
"name": "String",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}, \l{Param}
|
|
\section3 Devices.ConfirmPairing
|
|
Confirm an ongoing pairing. In case of SetupMethodEnterPin also provide the pin in the params.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"o:secret": "String",
|
|
"pairingTransactionId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}
|
|
\section3 Devices.EditDevice
|
|
Edit the name of a device. This method does not change the configuration of the device.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"name": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}
|
|
\section3 Devices.GetActionTypes
|
|
Get action types for a specified deviceClassId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"actionTypes": [
|
|
"$ref:ActionType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{ActionType}
|
|
\section3 Devices.GetConfiguredDevices
|
|
Returns a list of configured devices, optionally filtered by deviceId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"o:deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"devices": [
|
|
"$ref:Device"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Device}
|
|
\section3 Devices.GetDiscoveredDevices
|
|
Performs a device discovery and returns the results. This function may take a while to return.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid",
|
|
"o:discoveryParams": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceDescriptors": [
|
|
"$ref:DeviceDescriptor"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceDescriptor}, \l{DeviceError}, \l{Param}
|
|
\section3 Devices.GetEventTypes
|
|
Get event types for a specified deviceClassId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"eventTypes": [
|
|
"$ref:EventType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{EventType}
|
|
\section3 Devices.GetPluginConfiguration
|
|
Get a plugin's params.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"pluginId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:configuration": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Param}, \l{DeviceError}
|
|
\section3 Devices.GetPlugins
|
|
Returns a list of loaded plugins.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"plugins": [
|
|
"$ref:Plugin"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Plugin}
|
|
\section3 Devices.GetStateTypes
|
|
Get state types for a specified deviceClassId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"stateTypes": [
|
|
"$ref:StateType"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{StateType}
|
|
\section3 Devices.GetStateValue
|
|
Get the value of the given device and the given stateType
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:value": "Variant"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}
|
|
\section3 Devices.GetStateValues
|
|
Get all the state values of the given device.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:values": [
|
|
{
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}
|
|
\section3 Devices.GetSupportedDevices
|
|
Returns a list of supported Device classes, optionally filtered by vendorId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"o:vendorId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceClasses": [
|
|
"$ref:DeviceClass"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceClass}
|
|
\section3 Devices.GetSupportedVendors
|
|
Returns a list of supported Vendors.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"vendors": [
|
|
"$ref:Vendor"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{Vendor}
|
|
\section3 Devices.PairDevice
|
|
Pair a device. Use this for DeviceClasses with a setupMethod different than SetupMethodJustAdd. Use deviceDescriptorId or deviceParams, depending on the createMethod of the device class. CreateMethodJustAdd takes the parameters you want to have with that device. CreateMethodDiscovery requires the use of a deviceDescriptorId. If success is true, the return values will contain a pairingTransactionId, a displayMessage and the setupMethod. Depending on the setupMethod you should either proceed with AddConfiguredDevice or PairDevice.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceClassId": "Uuid",
|
|
"name": "String",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:displayMessage": "String",
|
|
"o:pairingTransactionId": "Uuid",
|
|
"o:setupMethod": "$ref:SetupMethod"
|
|
}
|
|
\endcode
|
|
See also: \l{SetupMethod}, \l{DeviceError}, \l{Param}
|
|
\section3 Devices.ReconfigureDevice
|
|
Edit the parameter configuration of the device. The device params will be set to the passed parameters and the setup device will be called. If the device is discoverable, you can perform a GetDiscoveredDevices before calling this method and pass the new DeviceDescriptor (rediscover). Only writable parameters can be changed. By default, every Param is writable.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}, \l{Param}
|
|
\section3 Devices.RemoveConfiguredDevice
|
|
Remove a device from the system.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"o:removePolicy": "$ref:RemovePolicy",
|
|
"o:removePolicyList": [
|
|
{
|
|
"policy": "$ref:RemovePolicy",
|
|
"ruleId": "Uuid"
|
|
}
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:ruleIds": [
|
|
"Uuid"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}, \l{RemovePolicy}, \l{RemovePolicy}
|
|
\section3 Devices.SetPluginConfiguration
|
|
Set a plugin's params.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"configuration": [
|
|
"$ref:Param"
|
|
],
|
|
"pluginId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
\endcode
|
|
See also: \l{DeviceError}, \l{Param}
|
|
\section3 Events.GetEventType
|
|
Get the EventType for the given eventTypeId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"eventTypeId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:eventType": "$ref:EventType"
|
|
}
|
|
\endcode
|
|
See also: \l{EventType}, \l{DeviceError}
|
|
\section3 JSONRPC.Authenticate
|
|
Authenticate a client to the api via user & password challenge. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. This will return a new token to be used to authorize a client at the API.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceName": "String",
|
|
"password": "String",
|
|
"username": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"o:token": "String",
|
|
"success": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.CreateUser
|
|
Create a new user in the API. Currently this is only allowed to be called once when a new nymea instance is set up. Call Authenticate after this to obtain a device token for this user.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"password": "String",
|
|
"username": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"error": "$ref:UserError"
|
|
}
|
|
\endcode
|
|
See also: \l{UserError}
|
|
\section3 JSONRPC.Hello
|
|
Upon first connection, nymea will automatically send a welcome message containing information about the setup. If this message is lost for whatever reason (connections with multiple hops might drop this if nymea sends it too early), the exact same message can be retrieved multiple times by calling this Hello method. Note that the contents might change if the system changed its state in the meantime, e.g. initialSetupRequired might turn false if the initial setup has been performed in the meantime.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"authenticationRequired": "Bool",
|
|
"id": "Int",
|
|
"initialSetupRequired": "Bool",
|
|
"language": "String",
|
|
"name": "String",
|
|
"protocol version": "String",
|
|
"pushButtonAuthAvailable": "Bool",
|
|
"server": "String",
|
|
"uuid": "Uuid",
|
|
"version": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.Introspect
|
|
Introspect this API.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"methods": "Object",
|
|
"types": "Object"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.IsCloudConnected
|
|
Check whether the cloud is currently connected.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"connected": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.KeepAlive
|
|
Keep alive a remote connection. The sessionId is the MQTT topic which has been used to establish the session. It will return false if no ongoing session with the given ID can be found.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"sessionId": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"success": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.RemoveToken
|
|
Revoke access for a given token.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"tokenId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"error": "$ref:UserError"
|
|
}
|
|
\endcode
|
|
See also: \l{UserError}
|
|
\section3 JSONRPC.RequestPushButtonAuth
|
|
Authenticate a client to the api via Push Button method. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. If push button hardware is available, this will return with success and start listening for push button presses. When the push button is pressed, the PushButtonAuthFinished notification will be sent to the requesting client. The procedure will be cancelled when the connection is interrupted. If another client requests push button authentication while a procedure is still going on, the second call will take over and the first one will be notified by the PushButtonAuthFinished signal about the error. The application should make it clear to the user to not press the button when the procedure fails as this can happen for 2 reasons: a) a second user is trying to auth at the same time and only the currently active user should press the button or b) it might indicate an attacker trying to take over and snooping in for tokens.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceName": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"success": "Bool",
|
|
"transactionId": "Int"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.SetNotificationStatus
|
|
Enable/Disable notifications for this connections.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enabled": "Bool"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"enabled": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.SetupRemoteAccess
|
|
Setup the remote connection by providing AWS token information. This requires the cloud to be connected.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"idToken": "String",
|
|
"userId": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"message": "String",
|
|
"status": "Int"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.Tokens
|
|
Return a list of TokenInfo objects of all the tokens for the current user.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"tokenInfoList": [
|
|
"$ref:TokenInfo"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{TokenInfo}
|
|
\section3 JSONRPC.Version
|
|
Version of this nymea/JSONRPC interface.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"protocol version": "String",
|
|
"version": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Logging.GetLogEntries
|
|
Get the LogEntries matching the given filter. Each list element of a given filter will be connected with OR to each other. Each of the given filters will be connected with AND to each other.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"o:deviceIds": [
|
|
"Uuid"
|
|
],
|
|
"o:eventTypes": [
|
|
"$ref:LoggingEventType"
|
|
],
|
|
"o:loggingLevels": [
|
|
"$ref:LoggingLevel"
|
|
],
|
|
"o:loggingSources": [
|
|
"$ref:LoggingSource"
|
|
],
|
|
"o:timeFilters": [
|
|
{
|
|
"o:endDate": "Int",
|
|
"o:startDate": "Int"
|
|
}
|
|
],
|
|
"o:typeIds": [
|
|
"Uuid"
|
|
],
|
|
"o:values": [
|
|
"Variant"
|
|
]
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"loggingError": "$ref:LoggingError",
|
|
"o:logEntries": [
|
|
"$ref:LogEntry"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{LogEntry}, \l{LoggingError}, \l{LoggingLevel}, \l{LoggingEventType}, \l{LoggingSource}
|
|
\section3 NetworkManager.ConnectWifiNetwork
|
|
Connect to the wifi network with the given ssid and password.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String",
|
|
"o:password": "String",
|
|
"ssid": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}
|
|
\section3 NetworkManager.DisconnectInterface
|
|
Disconnect the given network interface. The interface will remain disconnected until the user connect it again.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}
|
|
\section3 NetworkManager.EnableNetworking
|
|
Enable or disable networking in the NetworkManager.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enable": "Bool"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}
|
|
\section3 NetworkManager.EnableWirelessNetworking
|
|
Enable or disable wireless networking in the NetworkManager.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enable": "Bool"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}
|
|
\section3 NetworkManager.GetNetworkDevices
|
|
Get the list of current network devices.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"wiredNetworkDevices": [
|
|
"$ref:WiredNetworkDevice"
|
|
],
|
|
"wirelessNetworkDevices": [
|
|
"$ref:WirelessNetworkDevice"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}, \l{WiredNetworkDevice}, \l{WirelessNetworkDevice}
|
|
\section3 NetworkManager.GetNetworkStatus
|
|
Get the current network manager status.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"o:status": {
|
|
"networkingEnabled": "Bool",
|
|
"state": "$ref:NetworkManagerState",
|
|
"wirelessNetworkingEnabled": "Bool"
|
|
}
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}, \l{NetworkManagerState}
|
|
\section3 NetworkManager.GetWirelessAccessPoints
|
|
Get the current list of wireless network access points for the given interface. The interface has to be a WirelessNetworkDevice.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"o:wirelessAccessPoints": [
|
|
"$ref:WirelessAccessPoint"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}, \l{WirelessAccessPoint}
|
|
\section3 NetworkManager.ScanWifiNetworks
|
|
Start a wifi scan for searching new networks.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerError}
|
|
\section3 Rules.AddRule
|
|
Add a rule. You can describe rules by one or many EventDesciptors and a StateEvaluator. Note that only one of either eventDescriptor or eventDescriptorList may be passed at a time. A rule can be created but left disabled, meaning it won't actually be executed until set to enabled. If not given, enabled defaults to true.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"name": "String",
|
|
"o:enabled": "Bool",
|
|
"o:eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"o:executable": "Bool",
|
|
"o:exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"o:stateEvaluator": "$ref:StateEvaluator",
|
|
"o:timeDescriptor": "$ref:TimeDescriptor"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"o:ruleId": "Uuid",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}, \l{RuleAction}, \l{TimeDescriptor}, \l{RuleAction}, \l{EventDescriptor}, \l{StateEvaluator}
|
|
\section3 Rules.DisableRule
|
|
Disable a rule. The rule won't be triggered by it's events or state changes while it is disabled. If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}
|
|
\section3 Rules.EditRule
|
|
Edit the parameters of a rule. The configuration of the rule with the given ruleId will be replaced with the new given configuration. In ordert to enable or disable a Rule, please use the methods "Rules.EnableRule" and "Rules.DisableRule". If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"name": "String",
|
|
"o:enabled": "Bool",
|
|
"o:eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"o:executable": "Bool",
|
|
"o:exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"o:stateEvaluator": "$ref:StateEvaluator",
|
|
"o:timeDescriptor": "$ref:TimeDescriptor",
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"o:rule": "$ref:Rule",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}, \l{Rule}, \l{RuleAction}, \l{TimeDescriptor}, \l{RuleAction}, \l{EventDescriptor}, \l{StateEvaluator}
|
|
\section3 Rules.EnableRule
|
|
Enabled a rule that has previously been disabled.If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}
|
|
\section3 Rules.ExecuteActions
|
|
Execute the action list of the rule with the given ruleId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}
|
|
\section3 Rules.ExecuteExitActions
|
|
Execute the exit action list of the rule with the given ruleId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}
|
|
\section3 Rules.FindRules
|
|
Find a list of rules containing any of the given parameters.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleIds": [
|
|
"Uuid"
|
|
]
|
|
}
|
|
\endcode
|
|
|
|
\section3 Rules.GetRuleDetails
|
|
Get details for the rule identified by ruleId
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"o:rule": "$ref:Rule",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}, \l{Rule}
|
|
\section3 Rules.GetRules
|
|
Get the descriptions of all configured rules. If you need more information about a specific rule use the method Rules.GetRuleDetails.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleDescriptions": [
|
|
"$ref:RuleDescription"
|
|
]
|
|
}
|
|
\endcode
|
|
See also: \l{RuleDescription}
|
|
\section3 Rules.RemoveRule
|
|
Remove a rule
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
\endcode
|
|
See also: \l{RuleError}
|
|
\section3 States.GetStateType
|
|
Get the StateType for the given stateTypeId.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"stateTypeId": "Uuid"
|
|
}
|
|
\endcode
|
|
\section4 Returns
|
|
\code
|
|
{
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:stateType": "$ref:StateType"
|
|
}
|
|
\endcode
|
|
See also: \l{StateType}, \l{DeviceError}
|
|
\section2 Notifications
|
|
\section3 Configuration.BasicConfigurationChanged
|
|
Emitted whenever the basic configuration of this server changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"debugServerEnabled": "Bool",
|
|
"serverName": "String",
|
|
"serverTime": "Uint",
|
|
"serverUuid": "Uuid",
|
|
"timeZone": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.CloudConfigurationChanged
|
|
Emitted whenever the cloud configuration is changed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"enabled": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.LanguageChanged
|
|
Emitted whenever the language of the server changed. The Plugins, Vendors and DeviceClasses have to be reloaded to get the translated data.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"language": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.TcpServerConfigurationChanged
|
|
Emitted whenever the TCP server configuration changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.WebServerConfigurationChanged
|
|
Emitted whenever the web server configuration changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Configuration.WebSocketServerConfigurationChanged
|
|
Emitted whenever the web socket server configuration changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Devices.DeviceAdded
|
|
Emitted whenever a Device was added.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"device": "$ref:Device"
|
|
}
|
|
\endcode
|
|
See also: \l{Device}
|
|
\section3 Devices.DeviceChanged
|
|
Emitted whenever the params or name of a Device changed (by EditDevice or ReconfigureDevice).
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"device": "$ref:Device"
|
|
}
|
|
\endcode
|
|
See also: \l{Device}
|
|
\section3 Devices.DeviceRemoved
|
|
Emitted whenever a Device was removed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Devices.StateChanged
|
|
Emitted whenever a State of a device changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Events.EventTriggered
|
|
Emitted whenever an Event is triggered.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"event": "$ref:Event"
|
|
}
|
|
\endcode
|
|
See also: \l{Event}
|
|
\section3 JSONRPC.CloudConnectedChanged
|
|
Emitted whenever the cloud connection status changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"connected": "Bool"
|
|
}
|
|
\endcode
|
|
|
|
\section3 JSONRPC.PushButtonAuthFinished
|
|
Emitted when a push button authentication reaches final state. NOTE: This notification is special. It will only be emitted to connections that did actively request a push button authentication, but also it will be emitted regardless of the notification settings.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"o:token": "String",
|
|
"status": "$ref:UserError",
|
|
"transactionId": "Int"
|
|
}
|
|
\endcode
|
|
See also: \l{UserError}
|
|
\section3 Logging.LogDatabaseUpdated
|
|
Emitted whenever the database was updated. The database will be updated when a log entry was deleted. A log entry will be deleted when the corresponding device or a rule will be removed, or when the oldest entry of the database was deleted to keep to database in the size limits.
|
|
\section4 Params
|
|
\code
|
|
{}
|
|
\endcode
|
|
|
|
\section3 Logging.LogEntryAdded
|
|
Emitted whenever an entry is appended to the logging system.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"logEntry": "$ref:LogEntry"
|
|
}
|
|
\endcode
|
|
See also: \l{LogEntry}
|
|
\section3 NetworkManager.NetworkStatusChanged
|
|
Emitted whenever a status of a NetworkManager changes.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"status": {
|
|
"networkingEnabled": "Bool",
|
|
"state": "$ref:NetworkManagerState",
|
|
"wirelessNetworkingEnabled": "Bool"
|
|
}
|
|
}
|
|
\endcode
|
|
See also: \l{NetworkManagerState}
|
|
\section3 NetworkManager.WiredNetworkDeviceAdded
|
|
Emitted whenever a new WiredNetworkDevice was added.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"wiredNetworkDevice": "$ref:WiredNetworkDevice"
|
|
}
|
|
\endcode
|
|
See also: \l{WiredNetworkDevice}
|
|
\section3 NetworkManager.WiredNetworkDeviceChanged
|
|
Emitted whenever the given WiredNetworkDevice has changed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"wiredNetworkDevice": "$ref:WiredNetworkDevice"
|
|
}
|
|
\endcode
|
|
See also: \l{WiredNetworkDevice}
|
|
\section3 NetworkManager.WiredNetworkDeviceRemoved
|
|
Emitted whenever a WiredNetworkDevice was removed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 NetworkManager.WirelessNetworkDeviceAdded
|
|
Emitted whenever a new WirelessNetworkDevice was added.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
|
|
}
|
|
\endcode
|
|
See also: \l{WirelessNetworkDevice}
|
|
\section3 NetworkManager.WirelessNetworkDeviceChanged
|
|
Emitted whenever the given WirelessNetworkDevice has changed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
|
|
}
|
|
\endcode
|
|
See also: \l{WirelessNetworkDevice}
|
|
\section3 NetworkManager.WirelessNetworkDeviceRemoved
|
|
Emitted whenever a WirelessNetworkDevice was removed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"interface": "String"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Rules.RuleActiveChanged
|
|
Emitted whenever the active state of a Rule changed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"active": "Bool",
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
|
|
\section3 Rules.RuleAdded
|
|
Emitted whenever a Rule was added.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"rule": "$ref:Rule"
|
|
}
|
|
\endcode
|
|
See also: \l{Rule}
|
|
\section3 Rules.RuleConfigurationChanged
|
|
Emitted whenever the configuration of a Rule changed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"rule": "$ref:Rule"
|
|
}
|
|
\endcode
|
|
See also: \l{Rule}
|
|
\section3 Rules.RuleRemoved
|
|
Emitted whenever a Rule was removed.
|
|
\section4 Params
|
|
\code
|
|
{
|
|
"ruleId": "Uuid"
|
|
}
|
|
\endcode
|
|
|
|
\section1 Full introspect
|
|
\code
|
|
{
|
|
"methods": {
|
|
"Actions.ExecuteAction": {
|
|
"description": "Execute a single action.",
|
|
"params": {
|
|
"actionTypeId": "Uuid",
|
|
"deviceId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
},
|
|
"Actions.GetActionType": {
|
|
"description": "Get the ActionType for the given ActionTypeId",
|
|
"params": {
|
|
"actionTypeId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:actionType": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"Configuration.DeleteTcpServerConfiguration": {
|
|
"description": "Delete a TCP interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.",
|
|
"params": {
|
|
"id": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.DeleteWebServerConfiguration": {
|
|
"description": "Delete a WebServer interface of the server.",
|
|
"params": {
|
|
"id": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.DeleteWebSocketServerConfiguration": {
|
|
"description": "Delete a WebSocket Server interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.",
|
|
"params": {
|
|
"id": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.GetAvailableLanguages": {
|
|
"description": "Returns a list of locale codes available for the server. i.e. en_US, de_AT",
|
|
"params": {},
|
|
"returns": {
|
|
"languages": [
|
|
"String"
|
|
]
|
|
}
|
|
},
|
|
"Configuration.GetConfigurations": {
|
|
"description": "Get all configuration parameters of the server.",
|
|
"params": {},
|
|
"returns": {
|
|
"basicConfiguration": {
|
|
"debugServerEnabled": "Bool",
|
|
"language": "String",
|
|
"serverName": "String",
|
|
"serverTime": "Uint",
|
|
"serverUuid": "Uuid",
|
|
"timeZone": "String"
|
|
},
|
|
"cloud": {
|
|
"enabled": "Bool"
|
|
},
|
|
"tcpServerConfigurations": [
|
|
"$ref:ServerConfiguration"
|
|
],
|
|
"webServerConfigurations": [
|
|
"$ref:WebServerConfiguration"
|
|
],
|
|
"webSocketServerConfigurations": [
|
|
"$ref:ServerConfiguration"
|
|
]
|
|
}
|
|
},
|
|
"Configuration.GetTimeZones": {
|
|
"description": "Get the list of available timezones.",
|
|
"params": {},
|
|
"returns": {
|
|
"timeZones": [
|
|
"String"
|
|
]
|
|
}
|
|
},
|
|
"Configuration.SetCloudEnabled": {
|
|
"description": "Sets whether the cloud connection is enabled or disabled in the settings.",
|
|
"params": {
|
|
"enabled": "Bool"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetDebugServerEnabled": {
|
|
"description": "Enable or disable the debug server.",
|
|
"params": {
|
|
"enabled": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetLanguage": {
|
|
"description": "Sets the server language to the given language. See also: \"GetAvailableLanguages\"",
|
|
"params": {
|
|
"language": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetServerName": {
|
|
"description": "Set the name of the server. Default is nymea.",
|
|
"params": {
|
|
"serverName": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetTcpServerConfiguration": {
|
|
"description": "Configure a TCP interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.",
|
|
"params": {
|
|
"configuration": "$ref:ServerConfiguration"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetTimeZone": {
|
|
"description": "Set the time zone of the server. See also: \"GetTimeZones\"",
|
|
"params": {
|
|
"timeZone": "String"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetWebServerConfiguration": {
|
|
"description": "Configure a WebServer interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added.",
|
|
"params": {
|
|
"configuration": "$ref:WebServerConfiguration"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Configuration.SetWebSocketServerConfiguration": {
|
|
"description": "Configure a WebSocket Server interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.",
|
|
"params": {
|
|
"configuration": "$ref:ServerConfiguration"
|
|
},
|
|
"returns": {
|
|
"configurationError": "$ref:ConfigurationError"
|
|
}
|
|
},
|
|
"Devices.AddConfiguredDevice": {
|
|
"description": "Add a configured device with a setupMethod of SetupMethodJustAdd. For devices with a setupMethod different than SetupMethodJustAdd, use PairDevice. Use deviceDescriptorId or deviceParams, depending on the createMethod of the device class. CreateMethodJustAdd takes the parameters you want to have with that device. CreateMethodDiscovery requires the use of a deviceDescriptorId.",
|
|
"params": {
|
|
"deviceClassId": "Uuid",
|
|
"name": "String",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceId": "Uuid"
|
|
}
|
|
},
|
|
"Devices.ConfirmPairing": {
|
|
"description": "Confirm an ongoing pairing. In case of SetupMethodEnterPin also provide the pin in the params.",
|
|
"params": {
|
|
"o:secret": "String",
|
|
"pairingTransactionId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceId": "Uuid"
|
|
}
|
|
},
|
|
"Devices.EditDevice": {
|
|
"description": "Edit the name of a device. This method does not change the configuration of the device.",
|
|
"params": {
|
|
"deviceId": "Uuid",
|
|
"name": "String"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
},
|
|
"Devices.GetActionTypes": {
|
|
"description": "Get action types for a specified deviceClassId.",
|
|
"params": {
|
|
"deviceClassId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"actionTypes": [
|
|
"$ref:ActionType"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetConfiguredDevices": {
|
|
"description": "Returns a list of configured devices, optionally filtered by deviceId.",
|
|
"params": {
|
|
"o:deviceId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"devices": [
|
|
"$ref:Device"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetDiscoveredDevices": {
|
|
"description": "Performs a device discovery and returns the results. This function may take a while to return.",
|
|
"params": {
|
|
"deviceClassId": "Uuid",
|
|
"o:discoveryParams": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:deviceDescriptors": [
|
|
"$ref:DeviceDescriptor"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetEventTypes": {
|
|
"description": "Get event types for a specified deviceClassId.",
|
|
"params": {
|
|
"deviceClassId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"eventTypes": [
|
|
"$ref:EventType"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetPluginConfiguration": {
|
|
"description": "Get a plugin's params.",
|
|
"params": {
|
|
"pluginId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:configuration": [
|
|
"$ref:Param"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetPlugins": {
|
|
"description": "Returns a list of loaded plugins.",
|
|
"params": {},
|
|
"returns": {
|
|
"plugins": [
|
|
"$ref:Plugin"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetStateTypes": {
|
|
"description": "Get state types for a specified deviceClassId.",
|
|
"params": {
|
|
"deviceClassId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"stateTypes": [
|
|
"$ref:StateType"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetStateValue": {
|
|
"description": "Get the value of the given device and the given stateType",
|
|
"params": {
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:value": "Variant"
|
|
}
|
|
},
|
|
"Devices.GetStateValues": {
|
|
"description": "Get all the state values of the given device.",
|
|
"params": {
|
|
"deviceId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:values": [
|
|
{
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetSupportedDevices": {
|
|
"description": "Returns a list of supported Device classes, optionally filtered by vendorId.",
|
|
"params": {
|
|
"o:vendorId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceClasses": [
|
|
"$ref:DeviceClass"
|
|
]
|
|
}
|
|
},
|
|
"Devices.GetSupportedVendors": {
|
|
"description": "Returns a list of supported Vendors.",
|
|
"params": {},
|
|
"returns": {
|
|
"vendors": [
|
|
"$ref:Vendor"
|
|
]
|
|
}
|
|
},
|
|
"Devices.PairDevice": {
|
|
"description": "Pair a device. Use this for DeviceClasses with a setupMethod different than SetupMethodJustAdd. Use deviceDescriptorId or deviceParams, depending on the createMethod of the device class. CreateMethodJustAdd takes the parameters you want to have with that device. CreateMethodDiscovery requires the use of a deviceDescriptorId. If success is true, the return values will contain a pairingTransactionId, a displayMessage and the setupMethod. Depending on the setupMethod you should either proceed with AddConfiguredDevice or PairDevice.",
|
|
"params": {
|
|
"deviceClassId": "Uuid",
|
|
"name": "String",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:displayMessage": "String",
|
|
"o:pairingTransactionId": "Uuid",
|
|
"o:setupMethod": "$ref:SetupMethod"
|
|
}
|
|
},
|
|
"Devices.ReconfigureDevice": {
|
|
"description": "Edit the parameter configuration of the device. The device params will be set to the passed parameters and the setup device will be called. If the device is discoverable, you can perform a GetDiscoveredDevices before calling this method and pass the new DeviceDescriptor (rediscover). Only writable parameters can be changed. By default, every Param is writable.",
|
|
"params": {
|
|
"deviceId": "Uuid",
|
|
"o:deviceDescriptorId": "Uuid",
|
|
"o:deviceParams": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
},
|
|
"Devices.RemoveConfiguredDevice": {
|
|
"description": "Remove a device from the system.",
|
|
"params": {
|
|
"deviceId": "Uuid",
|
|
"o:removePolicy": "$ref:RemovePolicy",
|
|
"o:removePolicyList": [
|
|
{
|
|
"policy": "$ref:RemovePolicy",
|
|
"ruleId": "Uuid"
|
|
}
|
|
]
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:ruleIds": [
|
|
"Uuid"
|
|
]
|
|
}
|
|
},
|
|
"Devices.SetPluginConfiguration": {
|
|
"description": "Set a plugin's params.",
|
|
"params": {
|
|
"configuration": [
|
|
"$ref:Param"
|
|
],
|
|
"pluginId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError"
|
|
}
|
|
},
|
|
"Events.GetEventType": {
|
|
"description": "Get the EventType for the given eventTypeId.",
|
|
"params": {
|
|
"eventTypeId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:eventType": "$ref:EventType"
|
|
}
|
|
},
|
|
"JSONRPC.Authenticate": {
|
|
"description": "Authenticate a client to the api via user & password challenge. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. This will return a new token to be used to authorize a client at the API.",
|
|
"params": {
|
|
"deviceName": "String",
|
|
"password": "String",
|
|
"username": "String"
|
|
},
|
|
"returns": {
|
|
"o:token": "String",
|
|
"success": "Bool"
|
|
}
|
|
},
|
|
"JSONRPC.CreateUser": {
|
|
"description": "Create a new user in the API. Currently this is only allowed to be called once when a new nymea instance is set up. Call Authenticate after this to obtain a device token for this user.",
|
|
"params": {
|
|
"password": "String",
|
|
"username": "String"
|
|
},
|
|
"returns": {
|
|
"error": "$ref:UserError"
|
|
}
|
|
},
|
|
"JSONRPC.Hello": {
|
|
"description": "Upon first connection, nymea will automatically send a welcome message containing information about the setup. If this message is lost for whatever reason (connections with multiple hops might drop this if nymea sends it too early), the exact same message can be retrieved multiple times by calling this Hello method. Note that the contents might change if the system changed its state in the meantime, e.g. initialSetupRequired might turn false if the initial setup has been performed in the meantime.",
|
|
"params": {},
|
|
"returns": {
|
|
"authenticationRequired": "Bool",
|
|
"id": "Int",
|
|
"initialSetupRequired": "Bool",
|
|
"language": "String",
|
|
"name": "String",
|
|
"protocol version": "String",
|
|
"pushButtonAuthAvailable": "Bool",
|
|
"server": "String",
|
|
"uuid": "Uuid",
|
|
"version": "String"
|
|
}
|
|
},
|
|
"JSONRPC.Introspect": {
|
|
"description": "Introspect this API.",
|
|
"params": {},
|
|
"returns": {
|
|
"methods": "Object",
|
|
"types": "Object"
|
|
}
|
|
},
|
|
"JSONRPC.IsCloudConnected": {
|
|
"description": "Check whether the cloud is currently connected.",
|
|
"params": {},
|
|
"returns": {
|
|
"connected": "Bool"
|
|
}
|
|
},
|
|
"JSONRPC.KeepAlive": {
|
|
"description": "Keep alive a remote connection. The sessionId is the MQTT topic which has been used to establish the session. It will return false if no ongoing session with the given ID can be found.",
|
|
"params": {
|
|
"sessionId": "String"
|
|
},
|
|
"returns": {
|
|
"success": "Bool"
|
|
}
|
|
},
|
|
"JSONRPC.RemoveToken": {
|
|
"description": "Revoke access for a given token.",
|
|
"params": {
|
|
"tokenId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"error": "$ref:UserError"
|
|
}
|
|
},
|
|
"JSONRPC.RequestPushButtonAuth": {
|
|
"description": "Authenticate a client to the api via Push Button method. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. If push button hardware is available, this will return with success and start listening for push button presses. When the push button is pressed, the PushButtonAuthFinished notification will be sent to the requesting client. The procedure will be cancelled when the connection is interrupted. If another client requests push button authentication while a procedure is still going on, the second call will take over and the first one will be notified by the PushButtonAuthFinished signal about the error. The application should make it clear to the user to not press the button when the procedure fails as this can happen for 2 reasons: a) a second user is trying to auth at the same time and only the currently active user should press the button or b) it might indicate an attacker trying to take over and snooping in for tokens.",
|
|
"params": {
|
|
"deviceName": "String"
|
|
},
|
|
"returns": {
|
|
"success": "Bool",
|
|
"transactionId": "Int"
|
|
}
|
|
},
|
|
"JSONRPC.SetNotificationStatus": {
|
|
"description": "Enable/Disable notifications for this connections.",
|
|
"params": {
|
|
"enabled": "Bool"
|
|
},
|
|
"returns": {
|
|
"enabled": "Bool"
|
|
}
|
|
},
|
|
"JSONRPC.SetupRemoteAccess": {
|
|
"description": "Setup the remote connection by providing AWS token information. This requires the cloud to be connected.",
|
|
"params": {
|
|
"idToken": "String",
|
|
"userId": "String"
|
|
},
|
|
"returns": {
|
|
"message": "String",
|
|
"status": "Int"
|
|
}
|
|
},
|
|
"JSONRPC.Tokens": {
|
|
"description": "Return a list of TokenInfo objects of all the tokens for the current user.",
|
|
"params": {},
|
|
"returns": {
|
|
"tokenInfoList": [
|
|
"$ref:TokenInfo"
|
|
]
|
|
}
|
|
},
|
|
"JSONRPC.Version": {
|
|
"description": "Version of this nymea/JSONRPC interface.",
|
|
"params": {},
|
|
"returns": {
|
|
"protocol version": "String",
|
|
"version": "String"
|
|
}
|
|
},
|
|
"Logging.GetLogEntries": {
|
|
"description": "Get the LogEntries matching the given filter. Each list element of a given filter will be connected with OR to each other. Each of the given filters will be connected with AND to each other.",
|
|
"params": {
|
|
"o:deviceIds": [
|
|
"Uuid"
|
|
],
|
|
"o:eventTypes": [
|
|
"$ref:LoggingEventType"
|
|
],
|
|
"o:loggingLevels": [
|
|
"$ref:LoggingLevel"
|
|
],
|
|
"o:loggingSources": [
|
|
"$ref:LoggingSource"
|
|
],
|
|
"o:timeFilters": [
|
|
{
|
|
"o:endDate": "Int",
|
|
"o:startDate": "Int"
|
|
}
|
|
],
|
|
"o:typeIds": [
|
|
"Uuid"
|
|
],
|
|
"o:values": [
|
|
"Variant"
|
|
]
|
|
},
|
|
"returns": {
|
|
"loggingError": "$ref:LoggingError",
|
|
"o:logEntries": [
|
|
"$ref:LogEntry"
|
|
]
|
|
}
|
|
},
|
|
"NetworkManager.ConnectWifiNetwork": {
|
|
"description": "Connect to the wifi network with the given ssid and password.",
|
|
"params": {
|
|
"interface": "String",
|
|
"o:password": "String",
|
|
"ssid": "String"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
},
|
|
"NetworkManager.DisconnectInterface": {
|
|
"description": "Disconnect the given network interface. The interface will remain disconnected until the user connect it again.",
|
|
"params": {
|
|
"interface": "String"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
},
|
|
"NetworkManager.EnableNetworking": {
|
|
"description": "Enable or disable networking in the NetworkManager.",
|
|
"params": {
|
|
"enable": "Bool"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
},
|
|
"NetworkManager.EnableWirelessNetworking": {
|
|
"description": "Enable or disable wireless networking in the NetworkManager.",
|
|
"params": {
|
|
"enable": "Bool"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
},
|
|
"NetworkManager.GetNetworkDevices": {
|
|
"description": "Get the list of current network devices.",
|
|
"params": {},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"wiredNetworkDevices": [
|
|
"$ref:WiredNetworkDevice"
|
|
],
|
|
"wirelessNetworkDevices": [
|
|
"$ref:WirelessNetworkDevice"
|
|
]
|
|
}
|
|
},
|
|
"NetworkManager.GetNetworkStatus": {
|
|
"description": "Get the current network manager status.",
|
|
"params": {},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"o:status": {
|
|
"networkingEnabled": "Bool",
|
|
"state": "$ref:NetworkManagerState",
|
|
"wirelessNetworkingEnabled": "Bool"
|
|
}
|
|
}
|
|
},
|
|
"NetworkManager.GetWirelessAccessPoints": {
|
|
"description": "Get the current list of wireless network access points for the given interface. The interface has to be a WirelessNetworkDevice.",
|
|
"params": {
|
|
"interface": "String"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError",
|
|
"o:wirelessAccessPoints": [
|
|
"$ref:WirelessAccessPoint"
|
|
]
|
|
}
|
|
},
|
|
"NetworkManager.ScanWifiNetworks": {
|
|
"description": "Start a wifi scan for searching new networks.",
|
|
"params": {
|
|
"interface": "String"
|
|
},
|
|
"returns": {
|
|
"networkManagerError": "$ref:NetworkManagerError"
|
|
}
|
|
},
|
|
"Rules.AddRule": {
|
|
"description": "Add a rule. You can describe rules by one or many EventDesciptors and a StateEvaluator. Note that only one of either eventDescriptor or eventDescriptorList may be passed at a time. A rule can be created but left disabled, meaning it won't actually be executed until set to enabled. If not given, enabled defaults to true.",
|
|
"params": {
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"name": "String",
|
|
"o:enabled": "Bool",
|
|
"o:eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"o:executable": "Bool",
|
|
"o:exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"o:stateEvaluator": "$ref:StateEvaluator",
|
|
"o:timeDescriptor": "$ref:TimeDescriptor"
|
|
},
|
|
"returns": {
|
|
"o:ruleId": "Uuid",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.DisableRule": {
|
|
"description": "Disable a rule. The rule won't be triggered by it's events or state changes while it is disabled. If successful, the notification \"Rule.RuleConfigurationChanged\" will be emitted.",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.EditRule": {
|
|
"description": "Edit the parameters of a rule. The configuration of the rule with the given ruleId will be replaced with the new given configuration. In ordert to enable or disable a Rule, please use the methods \"Rules.EnableRule\" and \"Rules.DisableRule\". If successful, the notification \"Rule.RuleConfigurationChanged\" will be emitted.",
|
|
"params": {
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"name": "String",
|
|
"o:enabled": "Bool",
|
|
"o:eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"o:executable": "Bool",
|
|
"o:exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"o:stateEvaluator": "$ref:StateEvaluator",
|
|
"o:timeDescriptor": "$ref:TimeDescriptor",
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"o:rule": "$ref:Rule",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.EnableRule": {
|
|
"description": "Enabled a rule that has previously been disabled.If successful, the notification \"Rule.RuleConfigurationChanged\" will be emitted.",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.ExecuteActions": {
|
|
"description": "Execute the action list of the rule with the given ruleId.",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.ExecuteExitActions": {
|
|
"description": "Execute the exit action list of the rule with the given ruleId.",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.FindRules": {
|
|
"description": "Find a list of rules containing any of the given parameters.",
|
|
"params": {
|
|
"deviceId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleIds": [
|
|
"Uuid"
|
|
]
|
|
}
|
|
},
|
|
"Rules.GetRuleDetails": {
|
|
"description": "Get details for the rule identified by ruleId",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"o:rule": "$ref:Rule",
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"Rules.GetRules": {
|
|
"description": "Get the descriptions of all configured rules. If you need more information about a specific rule use the method Rules.GetRuleDetails.",
|
|
"params": {},
|
|
"returns": {
|
|
"ruleDescriptions": [
|
|
"$ref:RuleDescription"
|
|
]
|
|
}
|
|
},
|
|
"Rules.RemoveRule": {
|
|
"description": "Remove a rule",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"ruleError": "$ref:RuleError"
|
|
}
|
|
},
|
|
"States.GetStateType": {
|
|
"description": "Get the StateType for the given stateTypeId.",
|
|
"params": {
|
|
"stateTypeId": "Uuid"
|
|
},
|
|
"returns": {
|
|
"deviceError": "$ref:DeviceError",
|
|
"o:stateType": "$ref:StateType"
|
|
}
|
|
}
|
|
},
|
|
"notifications": {
|
|
"Configuration.BasicConfigurationChanged": {
|
|
"description": "Emitted whenever the basic configuration of this server changes.",
|
|
"params": {
|
|
"debugServerEnabled": "Bool",
|
|
"serverName": "String",
|
|
"serverTime": "Uint",
|
|
"serverUuid": "Uuid",
|
|
"timeZone": "String"
|
|
}
|
|
},
|
|
"Configuration.CloudConfigurationChanged": {
|
|
"description": "Emitted whenever the cloud configuration is changed.",
|
|
"params": {
|
|
"enabled": "Bool"
|
|
}
|
|
},
|
|
"Configuration.LanguageChanged": {
|
|
"description": "Emitted whenever the language of the server changed. The Plugins, Vendors and DeviceClasses have to be reloaded to get the translated data.",
|
|
"params": {
|
|
"language": "String"
|
|
}
|
|
},
|
|
"Configuration.TcpServerConfigurationChanged": {
|
|
"description": "Emitted whenever the TCP server configuration changes.",
|
|
"params": {
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
},
|
|
"Configuration.WebServerConfigurationChanged": {
|
|
"description": "Emitted whenever the web server configuration changes.",
|
|
"params": {
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
},
|
|
"Configuration.WebSocketServerConfigurationChanged": {
|
|
"description": "Emitted whenever the web socket server configuration changes.",
|
|
"params": {
|
|
"host": "String",
|
|
"port": "Uint"
|
|
}
|
|
},
|
|
"Devices.DeviceAdded": {
|
|
"description": "Emitted whenever a Device was added.",
|
|
"params": {
|
|
"device": "$ref:Device"
|
|
}
|
|
},
|
|
"Devices.DeviceChanged": {
|
|
"description": "Emitted whenever the params or name of a Device changed (by EditDevice or ReconfigureDevice).",
|
|
"params": {
|
|
"device": "$ref:Device"
|
|
}
|
|
},
|
|
"Devices.DeviceRemoved": {
|
|
"description": "Emitted whenever a Device was removed.",
|
|
"params": {
|
|
"deviceId": "Uuid"
|
|
}
|
|
},
|
|
"Devices.StateChanged": {
|
|
"description": "Emitted whenever a State of a device changes.",
|
|
"params": {
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
},
|
|
"Events.EventTriggered": {
|
|
"description": "Emitted whenever an Event is triggered.",
|
|
"params": {
|
|
"event": "$ref:Event"
|
|
}
|
|
},
|
|
"JSONRPC.CloudConnectedChanged": {
|
|
"description": "Emitted whenever the cloud connection status changes.",
|
|
"params": {
|
|
"connected": "Bool"
|
|
}
|
|
},
|
|
"JSONRPC.PushButtonAuthFinished": {
|
|
"description": "Emitted when a push button authentication reaches final state. NOTE: This notification is special. It will only be emitted to connections that did actively request a push button authentication, but also it will be emitted regardless of the notification settings. ",
|
|
"params": {
|
|
"o:token": "String",
|
|
"status": "$ref:UserError",
|
|
"transactionId": "Int"
|
|
}
|
|
},
|
|
"Logging.LogDatabaseUpdated": {
|
|
"description": "Emitted whenever the database was updated. The database will be updated when a log entry was deleted. A log entry will be deleted when the corresponding device or a rule will be removed, or when the oldest entry of the database was deleted to keep to database in the size limits.",
|
|
"params": {}
|
|
},
|
|
"Logging.LogEntryAdded": {
|
|
"description": "Emitted whenever an entry is appended to the logging system. ",
|
|
"params": {
|
|
"logEntry": "$ref:LogEntry"
|
|
}
|
|
},
|
|
"NetworkManager.NetworkStatusChanged": {
|
|
"description": "Emitted whenever a status of a NetworkManager changes.",
|
|
"params": {
|
|
"status": {
|
|
"networkingEnabled": "Bool",
|
|
"state": "$ref:NetworkManagerState",
|
|
"wirelessNetworkingEnabled": "Bool"
|
|
}
|
|
}
|
|
},
|
|
"NetworkManager.WiredNetworkDeviceAdded": {
|
|
"description": "Emitted whenever a new WiredNetworkDevice was added.",
|
|
"params": {
|
|
"wiredNetworkDevice": "$ref:WiredNetworkDevice"
|
|
}
|
|
},
|
|
"NetworkManager.WiredNetworkDeviceChanged": {
|
|
"description": "Emitted whenever the given WiredNetworkDevice has changed.",
|
|
"params": {
|
|
"wiredNetworkDevice": "$ref:WiredNetworkDevice"
|
|
}
|
|
},
|
|
"NetworkManager.WiredNetworkDeviceRemoved": {
|
|
"description": "Emitted whenever a WiredNetworkDevice was removed.",
|
|
"params": {
|
|
"interface": "String"
|
|
}
|
|
},
|
|
"NetworkManager.WirelessNetworkDeviceAdded": {
|
|
"description": "Emitted whenever a new WirelessNetworkDevice was added.",
|
|
"params": {
|
|
"wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
|
|
}
|
|
},
|
|
"NetworkManager.WirelessNetworkDeviceChanged": {
|
|
"description": "Emitted whenever the given WirelessNetworkDevice has changed.",
|
|
"params": {
|
|
"wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
|
|
}
|
|
},
|
|
"NetworkManager.WirelessNetworkDeviceRemoved": {
|
|
"description": "Emitted whenever a WirelessNetworkDevice was removed.",
|
|
"params": {
|
|
"interface": "String"
|
|
}
|
|
},
|
|
"Rules.RuleActiveChanged": {
|
|
"description": "Emitted whenever the active state of a Rule changed.",
|
|
"params": {
|
|
"active": "Bool",
|
|
"ruleId": "Uuid"
|
|
}
|
|
},
|
|
"Rules.RuleAdded": {
|
|
"description": "Emitted whenever a Rule was added.",
|
|
"params": {
|
|
"rule": "$ref:Rule"
|
|
}
|
|
},
|
|
"Rules.RuleConfigurationChanged": {
|
|
"description": "Emitted whenever the configuration of a Rule changed.",
|
|
"params": {
|
|
"rule": "$ref:Rule"
|
|
}
|
|
},
|
|
"Rules.RuleRemoved": {
|
|
"description": "Emitted whenever a Rule was removed.",
|
|
"params": {
|
|
"ruleId": "Uuid"
|
|
}
|
|
}
|
|
},
|
|
"types": {
|
|
"Action": {
|
|
"actionTypeId": "Uuid",
|
|
"deviceId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"ActionType": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
},
|
|
"BasicTag": [
|
|
"BasicTagService",
|
|
"BasicTagDevice",
|
|
"BasicTagSensor",
|
|
"BasicTagActuator",
|
|
"BasicTagLighting",
|
|
"BasicTagEnergy",
|
|
"BasicTagMultimedia",
|
|
"BasicTagWeather",
|
|
"BasicTagGateway",
|
|
"BasicTagHeating",
|
|
"BasicTagCooling",
|
|
"BasicTagNotification",
|
|
"BasicTagSecurity",
|
|
"BasicTagTime",
|
|
"BasicTagShading",
|
|
"BasicTagAppliance",
|
|
"BasicTagCamera",
|
|
"BasicTagLock"
|
|
],
|
|
"BasicType": [
|
|
"Uuid",
|
|
"String",
|
|
"Int",
|
|
"Uint",
|
|
"Double",
|
|
"Bool",
|
|
"Variant",
|
|
"Color",
|
|
"Time",
|
|
"Object"
|
|
],
|
|
"CalendarItem": {
|
|
"duration": "Uint",
|
|
"o:datetime": "Uint",
|
|
"o:repeating": "$ref:RepeatingOption",
|
|
"o:startTime": "Time"
|
|
},
|
|
"ConfigurationError": [
|
|
"ConfigurationErrorNoError",
|
|
"ConfigurationErrorInvalidTimeZone",
|
|
"ConfigurationErrorInvalidStationName",
|
|
"ConfigurationErrorInvalidId",
|
|
"ConfigurationErrorInvalidPort",
|
|
"ConfigurationErrorInvalidHostAddress",
|
|
"ConfigurationErrorBluetoothHardwareNotAvailable",
|
|
"ConfigurationErrorInvalidCertificate"
|
|
],
|
|
"CreateMethod": [
|
|
"CreateMethodUser",
|
|
"CreateMethodAuto",
|
|
"CreateMethodDiscovery"
|
|
],
|
|
"Device": {
|
|
"deviceClassId": "Uuid",
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"o:parentId": "Uuid",
|
|
"params": [
|
|
"$ref:Param"
|
|
],
|
|
"setupComplete": "Bool",
|
|
"states": [
|
|
{
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
}
|
|
]
|
|
},
|
|
"DeviceClass": {
|
|
"actionTypes": [
|
|
"$ref:ActionType"
|
|
],
|
|
"basicTags": [
|
|
"$ref:BasicTag"
|
|
],
|
|
"createMethods": [
|
|
"$ref:CreateMethod"
|
|
],
|
|
"deviceIcon": "$ref:DeviceIcon",
|
|
"discoveryParamTypes": [
|
|
"$ref:ParamType"
|
|
],
|
|
"displayName": "String",
|
|
"eventTypes": [
|
|
"$ref:EventType"
|
|
],
|
|
"id": "Uuid",
|
|
"interfaces": [
|
|
"String"
|
|
],
|
|
"name": "String",
|
|
"o:criticalStateTypeId": "Uuid",
|
|
"o:primaryActionTypeId": "Uuid",
|
|
"o:primaryStateTypeId": "Uuid",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
],
|
|
"pluginId": "Uuid",
|
|
"setupMethod": "$ref:SetupMethod",
|
|
"stateTypes": [
|
|
"$ref:StateType"
|
|
],
|
|
"vendorId": "Uuid"
|
|
},
|
|
"DeviceDescriptor": {
|
|
"description": "String",
|
|
"id": "Uuid",
|
|
"title": "String"
|
|
},
|
|
"DeviceError": [
|
|
"DeviceErrorNoError",
|
|
"DeviceErrorPluginNotFound",
|
|
"DeviceErrorVendorNotFound",
|
|
"DeviceErrorDeviceNotFound",
|
|
"DeviceErrorDeviceClassNotFound",
|
|
"DeviceErrorActionTypeNotFound",
|
|
"DeviceErrorStateTypeNotFound",
|
|
"DeviceErrorEventTypeNotFound",
|
|
"DeviceErrorDeviceDescriptorNotFound",
|
|
"DeviceErrorMissingParameter",
|
|
"DeviceErrorInvalidParameter",
|
|
"DeviceErrorSetupFailed",
|
|
"DeviceErrorDuplicateUuid",
|
|
"DeviceErrorCreationMethodNotSupported",
|
|
"DeviceErrorSetupMethodNotSupported",
|
|
"DeviceErrorHardwareNotAvailable",
|
|
"DeviceErrorHardwareFailure",
|
|
"DeviceErrorAuthentificationFailure",
|
|
"DeviceErrorAsync",
|
|
"DeviceErrorDeviceInUse",
|
|
"DeviceErrorDeviceInRule",
|
|
"DeviceErrorDeviceIsChild",
|
|
"DeviceErrorPairingTransactionIdNotFound",
|
|
"DeviceErrorParameterNotWritable"
|
|
],
|
|
"DeviceIcon": [
|
|
"DeviceIconNone",
|
|
"DeviceIconBed",
|
|
"DeviceIconBlinds",
|
|
"DeviceIconCeilingLamp",
|
|
"DeviceIconCouch",
|
|
"DeviceIconDeskLamp",
|
|
"DeviceIconDesk",
|
|
"DeviceIconHifi",
|
|
"DeviceIconPower",
|
|
"DeviceIconEnergy",
|
|
"DeviceIconRadio",
|
|
"DeviceIconSmartPhone",
|
|
"DeviceIconSocket",
|
|
"DeviceIconStandardLamp",
|
|
"DeviceIconSun",
|
|
"DeviceIconTablet",
|
|
"DeviceIconThermometer",
|
|
"DeviceIconTune",
|
|
"DeviceIconTv",
|
|
"DeviceIconBattery",
|
|
"DeviceIconDishwasher",
|
|
"DeviceIconWashingMachine",
|
|
"DeviceIconLaundryDryer",
|
|
"DeviceIconIrHeater",
|
|
"DeviceIconRadiator",
|
|
"DeviceIconSwitch",
|
|
"DeviceIconMotionDetectors",
|
|
"DeviceIconWeather",
|
|
"DeviceIconTime",
|
|
"DeviceIconLightBulb",
|
|
"DeviceIconGateway",
|
|
"DeviceIconMail",
|
|
"DeviceIconNetwork",
|
|
"DeviceIconCloud",
|
|
"DeviceIconGarage",
|
|
"DeviceIconRollerShutter"
|
|
],
|
|
"Event": {
|
|
"deviceId": "Uuid",
|
|
"eventTypeId": "Uuid",
|
|
"o:params": [
|
|
"$ref:Param"
|
|
]
|
|
},
|
|
"EventDescriptor": {
|
|
"o:deviceId": "Uuid",
|
|
"o:eventTypeId": "Uuid",
|
|
"o:interface": "String",
|
|
"o:interfaceEvent": "String",
|
|
"o:paramDescriptors": [
|
|
"$ref:ParamDescriptor"
|
|
]
|
|
},
|
|
"EventType": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:graphRelevant": "Bool",
|
|
"o:ruleRelevant": "Bool",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
},
|
|
"InputType": [
|
|
"InputTypeNone",
|
|
"InputTypeTextLine",
|
|
"InputTypeTextArea",
|
|
"InputTypePassword",
|
|
"InputTypeSearch",
|
|
"InputTypeMail",
|
|
"InputTypeIPv4Address",
|
|
"InputTypeIPv6Address",
|
|
"InputTypeUrl",
|
|
"InputTypeMacAddress"
|
|
],
|
|
"LogEntry": {
|
|
"loggingLevel": "$ref:LoggingLevel",
|
|
"o:active": "Bool",
|
|
"o:deviceId": "Uuid",
|
|
"o:errorCode": "String",
|
|
"o:eventType": "$ref:LoggingEventType",
|
|
"o:typeId": "Uuid",
|
|
"o:value": "String",
|
|
"source": "$ref:LoggingSource",
|
|
"timestamp": "Int"
|
|
},
|
|
"LoggingError": [
|
|
"LoggingErrorNoError",
|
|
"LoggingErrorLogEntryNotFound",
|
|
"LoggingErrorInvalidFilterParameter"
|
|
],
|
|
"LoggingEventType": [
|
|
"LoggingEventTypeTrigger",
|
|
"LoggingEventTypeActiveChange",
|
|
"LoggingEventTypeEnabledChange",
|
|
"LoggingEventTypeActionsExecuted",
|
|
"LoggingEventTypeExitActionsExecuted"
|
|
],
|
|
"LoggingLevel": [
|
|
"LoggingLevelInfo",
|
|
"LoggingLevelAlert"
|
|
],
|
|
"LoggingSource": [
|
|
"LoggingSourceSystem",
|
|
"LoggingSourceEvents",
|
|
"LoggingSourceActions",
|
|
"LoggingSourceStates",
|
|
"LoggingSourceRules"
|
|
],
|
|
"NetworkDeviceState": [
|
|
"NetworkDeviceStateUnknown",
|
|
"NetworkDeviceStateUnmanaged",
|
|
"NetworkDeviceStateUnavailable",
|
|
"NetworkDeviceStateDisconnected",
|
|
"NetworkDeviceStatePrepare",
|
|
"NetworkDeviceStateConfig",
|
|
"NetworkDeviceStateNeedAuth",
|
|
"NetworkDeviceStateIpConfig",
|
|
"NetworkDeviceStateIpCheck",
|
|
"NetworkDeviceStateSecondaries",
|
|
"NetworkDeviceStateActivated",
|
|
"NetworkDeviceStateDeactivating",
|
|
"NetworkDeviceStateFailed"
|
|
],
|
|
"NetworkManagerError": [
|
|
"NetworkManagerErrorNoError",
|
|
"NetworkManagerErrorUnknownError",
|
|
"NetworkManagerErrorWirelessNotAvailable",
|
|
"NetworkManagerErrorAccessPointNotFound",
|
|
"NetworkManagerErrorNetworkInterfaceNotFound",
|
|
"NetworkManagerErrorInvalidNetworkDeviceType",
|
|
"NetworkManagerErrorWirelessNetworkingDisabled",
|
|
"NetworkManagerErrorWirelessConnectionFailed",
|
|
"NetworkManagerErrorNetworkingDisabled",
|
|
"NetworkManagerErrorNetworkManagerNotAvailable"
|
|
],
|
|
"NetworkManagerState": [
|
|
"NetworkManagerStateUnknown",
|
|
"NetworkManagerStateAsleep",
|
|
"NetworkManagerStateDisconnected",
|
|
"NetworkManagerStateDisconnecting",
|
|
"NetworkManagerStateConnecting",
|
|
"NetworkManagerStateConnectedLocal",
|
|
"NetworkManagerStateConnectedSite",
|
|
"NetworkManagerStateConnectedGlobal"
|
|
],
|
|
"Param": {
|
|
"paramTypeId": "Uuid",
|
|
"value": "$ref:BasicType"
|
|
},
|
|
"ParamDescriptor": {
|
|
"operator": "$ref:ValueOperator",
|
|
"paramTypeId": "Uuid",
|
|
"value": "$ref:BasicType"
|
|
},
|
|
"ParamType": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:allowedValues": [
|
|
"Variant"
|
|
],
|
|
"o:defaultValue": "Variant",
|
|
"o:inputType": "$ref:InputType",
|
|
"o:maxValue": "Variant",
|
|
"o:minValue": "Variant",
|
|
"o:readOnly": "Bool",
|
|
"o:unit": "$ref:Unit",
|
|
"type": "$ref:BasicType"
|
|
},
|
|
"Plugin": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"paramTypes": [
|
|
"$ref:ParamType"
|
|
]
|
|
},
|
|
"RemovePolicy": [
|
|
"RemovePolicyCascade",
|
|
"RemovePolicyUpdate"
|
|
],
|
|
"RepeatingMode": [
|
|
"RepeatingModeNone",
|
|
"RepeatingModeHourly",
|
|
"RepeatingModeDaily",
|
|
"RepeatingModeWeekly",
|
|
"RepeatingModeMonthly",
|
|
"RepeatingModeYearly"
|
|
],
|
|
"RepeatingOption": {
|
|
"mode": "$ref:RepeatingMode",
|
|
"o:monthDays": [
|
|
"Int"
|
|
],
|
|
"o:weekDays": [
|
|
"Int"
|
|
]
|
|
},
|
|
"Rule": {
|
|
"actions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"active": "Bool",
|
|
"enabled": "Bool",
|
|
"eventDescriptors": [
|
|
"$ref:EventDescriptor"
|
|
],
|
|
"executable": "Bool",
|
|
"exitActions": [
|
|
"$ref:RuleAction"
|
|
],
|
|
"id": "Uuid",
|
|
"name": "String",
|
|
"stateEvaluator": "$ref:StateEvaluator",
|
|
"timeDescriptor": "$ref:TimeDescriptor"
|
|
},
|
|
"RuleAction": {
|
|
"o:actionTypeId": "Uuid",
|
|
"o:deviceId": "Uuid",
|
|
"o:interface": "String",
|
|
"o:interfaceAction": "String",
|
|
"o:ruleActionParams": [
|
|
"$ref:RuleActionParam"
|
|
]
|
|
},
|
|
"RuleActionParam": {
|
|
"o:eventParamTypeId": "Uuid",
|
|
"o:eventTypeId": "Uuid",
|
|
"o:paramName": "String",
|
|
"o:paramTypeId": "Uuid",
|
|
"o:value": "$ref:BasicType"
|
|
},
|
|
"RuleDescription": {
|
|
"active": "Bool",
|
|
"enabled": "Bool",
|
|
"executable": "Bool",
|
|
"id": "Uuid",
|
|
"name": "String"
|
|
},
|
|
"RuleError": [
|
|
"RuleErrorNoError",
|
|
"RuleErrorInvalidRuleId",
|
|
"RuleErrorRuleNotFound",
|
|
"RuleErrorDeviceNotFound",
|
|
"RuleErrorEventTypeNotFound",
|
|
"RuleErrorStateTypeNotFound",
|
|
"RuleErrorActionTypeNotFound",
|
|
"RuleErrorInvalidParameter",
|
|
"RuleErrorInvalidRuleFormat",
|
|
"RuleErrorMissingParameter",
|
|
"RuleErrorInvalidRuleActionParameter",
|
|
"RuleErrorInvalidStateEvaluatorValue",
|
|
"RuleErrorTypesNotMatching",
|
|
"RuleErrorNotExecutable",
|
|
"RuleErrorInvalidTimeDescriptor",
|
|
"RuleErrorInvalidRepeatingOption",
|
|
"RuleErrorInvalidCalendarItem",
|
|
"RuleErrorInvalidTimeEventItem",
|
|
"RuleErrorContainsEventBasesAction",
|
|
"RuleErrorNoExitActions",
|
|
"RuleErrorInterfaceNotFound"
|
|
],
|
|
"ServerConfiguration": {
|
|
"address": "String",
|
|
"authenticationEnabled": "Bool",
|
|
"id": "String",
|
|
"port": "Uint",
|
|
"sslEnabled": "Bool"
|
|
},
|
|
"SetupMethod": [
|
|
"SetupMethodJustAdd",
|
|
"SetupMethodDisplayPin",
|
|
"SetupMethodEnterPin",
|
|
"SetupMethodPushButton"
|
|
],
|
|
"State": {
|
|
"deviceId": "Uuid",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
},
|
|
"StateDescriptor": {
|
|
"deviceId": "Uuid",
|
|
"operator": "$ref:ValueOperator",
|
|
"stateTypeId": "Uuid",
|
|
"value": "Variant"
|
|
},
|
|
"StateEvaluator": {
|
|
"o:childEvaluators": [
|
|
"$ref:StateEvaluator"
|
|
],
|
|
"o:operator": "$ref:StateOperator",
|
|
"o:stateDescriptor": "$ref:StateDescriptor"
|
|
},
|
|
"StateOperator": [
|
|
"StateOperatorAnd",
|
|
"StateOperatorOr"
|
|
],
|
|
"StateType": {
|
|
"defaultValue": "Variant",
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"index": "Int",
|
|
"name": "String",
|
|
"o:graphRelevant": "Bool",
|
|
"o:maxValue": "Variant",
|
|
"o:minValue": "Variant",
|
|
"o:possibleValues": [
|
|
"Variant"
|
|
],
|
|
"o:ruleRelevant": "Bool",
|
|
"o:unit": "$ref:Unit",
|
|
"type": "$ref:BasicType"
|
|
},
|
|
"TimeDescriptor": {
|
|
"o:calendarItems": [
|
|
"$ref:CalendarItem"
|
|
],
|
|
"o:timeEventItems": [
|
|
"$ref:TimeEventItem"
|
|
]
|
|
},
|
|
"TimeEventItem": {
|
|
"o:datetime": "Uint",
|
|
"o:repeating": "$ref:RepeatingOption",
|
|
"o:time": "Time"
|
|
},
|
|
"TokenInfo": {
|
|
"creationTime": "Uint",
|
|
"deviceName": "String",
|
|
"id": "Uuid",
|
|
"userName": "String"
|
|
},
|
|
"Unit": [
|
|
"UnitNone",
|
|
"UnitSeconds",
|
|
"UnitMinutes",
|
|
"UnitHours",
|
|
"UnitUnixTime",
|
|
"UnitMeterPerSecond",
|
|
"UnitKiloMeterPerHour",
|
|
"UnitDegree",
|
|
"UnitRadiant",
|
|
"UnitDegreeCelsius",
|
|
"UnitDegreeKelvin",
|
|
"UnitMired",
|
|
"UnitMilliBar",
|
|
"UnitBar",
|
|
"UnitPascal",
|
|
"UnitHectoPascal",
|
|
"UnitAtmosphere",
|
|
"UnitLumen",
|
|
"UnitLux",
|
|
"UnitCandela",
|
|
"UnitMilliMeter",
|
|
"UnitCentiMeter",
|
|
"UnitMeter",
|
|
"UnitKiloMeter",
|
|
"UnitGram",
|
|
"UnitKiloGram",
|
|
"UnitDezibel",
|
|
"UnitBpm",
|
|
"UnitKiloByte",
|
|
"UnitMegaByte",
|
|
"UnitGigaByte",
|
|
"UnitTeraByte",
|
|
"UnitMilliWatt",
|
|
"UnitWatt",
|
|
"UnitKiloWatt",
|
|
"UnitKiloWattHour",
|
|
"UnitEuroPerMegaWattHour",
|
|
"UnitEuroCentPerKiloWattHour",
|
|
"UnitPercentage",
|
|
"UnitPartsPerMillion",
|
|
"UnitEuro",
|
|
"UnitDollar",
|
|
"UnitHerz",
|
|
"UnitAmpere",
|
|
"UnitMilliAmpere",
|
|
"UnitVolt",
|
|
"UnitMilliVolt",
|
|
"UnitVoltAmpere",
|
|
"UnitVoltAmpereReactive",
|
|
"UnitAmpereHour"
|
|
],
|
|
"UserError": [
|
|
"UserErrorNoError",
|
|
"UserErrorBackendError",
|
|
"UserErrorInvalidUserId",
|
|
"UserErrorDuplicateUserId",
|
|
"UserErrorBadPassword",
|
|
"UserErrorTokenNotFound",
|
|
"UserErrorPermissionDenied"
|
|
],
|
|
"ValueOperator": [
|
|
"ValueOperatorEquals",
|
|
"ValueOperatorNotEquals",
|
|
"ValueOperatorLess",
|
|
"ValueOperatorGreater",
|
|
"ValueOperatorLessOrEqual",
|
|
"ValueOperatorGreaterOrEqual"
|
|
],
|
|
"Vendor": {
|
|
"displayName": "String",
|
|
"id": "Uuid",
|
|
"name": "String"
|
|
},
|
|
"WebServerConfiguration": {
|
|
"address": "String",
|
|
"authenticationEnabled": "Bool",
|
|
"id": "String",
|
|
"port": "Uint",
|
|
"sslEnabled": "Bool"
|
|
},
|
|
"WiredNetworkDevice": {
|
|
"bitRate": "String",
|
|
"interface": "String",
|
|
"macAddress": "String",
|
|
"pluggedIn": "Bool",
|
|
"state": "$ref:NetworkDeviceState"
|
|
},
|
|
"WirelessAccessPoint": {
|
|
"frequency": "Double",
|
|
"macAddress": "String",
|
|
"protected": "Bool",
|
|
"signalStrength": "Int",
|
|
"ssid": "String"
|
|
},
|
|
"WirelessNetworkDevice": {
|
|
"bitRate": "String",
|
|
"interface": "String",
|
|
"macAddress": "String",
|
|
"o:currentAccessPoint": "$ref:WirelessAccessPoint",
|
|
"state": "$ref:NetworkDeviceState"
|
|
}
|
|
}
|
|
}
|
|
\endcode
|