Luup UPNP Files

From MiOS
(Difference between revisions)
Jump to: navigation, search
m (Device Categories)
 
(72 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The following is the contents of the file "Constant.h" which defines the strings used for file device types, services, actions, variables, etc.
+
[[Category:Development]]
 +
The following is the contents of the file ''Constants.h'' which defines the strings used for file device types, services, actions, variables, etc.
  
/*
+
<pre>/*
Copyright (C) 2008 Mi Casa Verde, Inc., a Nevada Corporation
+
Copyright (C) 2008 Mi Casa Verde, Inc., a Nevada Corporation  
 +
All rights reserved. This software may not be used or distributed without express consent.
 +
*/</pre>
  
All rights reserved.  This software may not be used or distributed without express consent
 
  
*/
+
== Device Types ==
  
#ifndef Constants_h
+
<pre>#define DEVICETYPE_HOME_AUTO_GATEWAY    "urn:schemas-micasaverde-com:device:HomeAutomationGateway:1"
#define Constants_h
+
#define DEVICETYPE_BINARY_LIGHT         "urn:schemas-upnp-org:device:BinaryLight:1"
// Device Types
+
#define DEVICETYPE_DIMMABLE_LIGHT       "urn:schemas-upnp-org:device:DimmableLight:1"
  #define DEVICETYPE_BINARY_LIGHT     "urn:schemas-upnp-org:device:BinaryLight:1"
+
#define DEVICETYPE_THERMOSTAT           "urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1"
  #define DEVICETYPE_DIMMABLE_LIGHT   "urn:schemas-upnp-org:device:DimmableLight:1"
+
#define DEVICETYPE_HEATER              "urn:schemas-upnp-org:device:Heater:1"
  #define DEVICETYPE_THERMOSTAT     "urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1"
+
#define DEVICETYPE_HUMIDITY_SENSOR     "urn:schemas-micasaverde-com:device:HumiditySensor:1"
  #define DEVICETYPE_HUMIDITY_SENSOR   "urn:schemas-micasaverde-com:device:HumiditySensor:1"
+
#define DEVICETYPE_MULTI_IO             "urn:schemas-micasaverde-com:device:MultiIO:1"
  #define DEVICETYPE_MULTI_IO       "urn:schemas-micasaverde-com:device:MultiIO:1"
+
#define DEVICETYPE_DOOR_LOCK           "urn:schemas-micasaverde-com:device:DoorLock:1"
  #define DEVICETYPE_DOOR_LOCK     "urn:schemas-micasaverde-com:device:DoorLock:1"
+
#define DEVICETYPE_DOOR_SENSOR         "urn:schemas-micasaverde-com:device:DoorSensor:1"
  #define DEVICETYPE_DOOR_SENSOR     "urn:schemas-micasaverde-com:device:DoorSensor:1"
+
#define DEVICETYPE_ZWAVE_NETWORK       "urn:schemas-micasaverde-com:device:ZWaveNetwork:1"
  #define DEVICETYPE_ZWAVE_NETWORK   "urn:schemas-micasaverde-com:device:ZWaveNetwork:1"
+
#define DEVICETYPE_ZIGBEE_NETWORK      "urn:schemas-micasaverde-com:device:ZigbeeNetwork:1"
  #define DEVICETYPE_INSTEON_NETWORK   "urn:schemas-micasaverde-com:device:InsteonNetwork:1"
+
#define DEVICETYPE_INSTEON_NETWORK     "urn:schemas-micasaverde-com:device:InsteonNetwork:1"
  #define DEVICETYPE_USB_UIRT       "urn:schemas-micasaverde-com:device:USBUIRT:1"
+
#define DEVICETYPE_USB_UIRT             "urn:schemas-micasaverde-com:device:USBUIRT:1"
  #define DEVICETYPE_TEMPERATURE_SENSOR "urn:schemas-micasaverde-com:device:TemperatureSensor:1"
+
#define DEVICETYPE_TEMPERATURE_SENSOR   "urn:schemas-micasaverde-com:device:TemperatureSensor:1"
  #define DEVICETYPE_MOTION_SENSOR    "urn:schemas-micasaverde-com:device:MotionSensor:1"
+
#define DEVICETYPE_POWER_METER          "urn:schemas-micasaverde-com:device:PowerMeter:1"
  #define DEVICETYPE_LIGHT_SENSOR      "urn:schemas-micasaverde-com:device:LightSensor:1"
+
#define DEVICETYPE_MOTION_SENSOR        "urn:schemas-micasaverde-com:device:MotionSensor:1"
  #define DEVICETYPE_IR_TRANSMITTER    "urn:schemas-micasaverde-com:device:IrTransmitter:1"
+
#define DEVICETYPE_SMOKE_SENSOR        "urn:schemas-micasaverde-com:device:SmokeSensor:1"
  #define DEVICETYPE_WINDOW_COVERING    "urn:schemas-micasaverde-com:device:WindowCovering:1"
+
#define DEVICETYPE_GENERIC_SENSOR      "urn:schemas-micasaverde-com:device:GenericSensor:1"
  #define DEVICETYPE_GENERIC_IO      "urn:schemas-micasaverde-com:device:GenericIO:1"
+
#define DEVICETYPE_LIGHT_SENSOR        "urn:schemas-micasaverde-com:device:LightSensor:1"
  #define DEVICETYPE_REMOTE_CONTROL    "urn:schemas-micasaverde-com:device:RemoteControl:1"
+
#define DEVICETYPE_IR_TRANSMITTER      "urn:schemas-micasaverde-com:device:IrTransmitter:1"
  #define DEVICETYPE_COMBO_DEVICE     "urn:schemas-micasaverde-com:device:ComboDevice:1"
+
#define DEVICETYPE_WINDOW_COVERING     "urn:schemas-micasaverde-com:device:WindowCovering:1"
  #define DEVICETYPE_CAMERA        "urn:schemas-upnp-org:device:DigitalSecurityCamera:1"
+
#define DEVICETYPE_GENERIC_IO          "urn:schemas-micasaverde-com:device:GenericIO:1"
  #define DEVICETYPE_SERIALPORT      "urn:micasaverde-org:device:SerialPort:1"
+
#define DEVICETYPE_REMOTE_CONTROL      "urn:schemas-micasaverde-com:device:RemoteControl:1"
  #define DEVICETYPE_SCENE_CONTROLLER    "urn:schemas-micasaverde-com:device:SceneController:1"
+
#define DEVICETYPE_COMBO_DEVICE        "urn:schemas-micasaverde-com:device:ComboDevice:1"
  #define DEVICETYPE_ENERGY_CALCULATOR  "urn:schemas-micasaverde-com:device:EnergyCalculator:1"
+
#define DEVICETYPE_CAMERA              "urn:schemas-upnp-org:device:DigitalSecurityCamera:1"
// IR Device Types
+
#define DEVICETYPE_CAMERA2              "urn:schemas-upnp-org:device:DigitalSecurityCamera:2"
  #define DEVICETYPE_TV          "urn:schemas-micasaverde-com:device:tv:1"
+
#define DEVICETYPE_SERIALPORT          "urn:micasaverde-org:device:SerialPort:1"
  #define DEVICETYPE_CABLE        "urn:schemas-micasaverde-com:device:cable:1"
+
#define DEVICETYPE_SERIALPORTROOT      "urn:micasaverde-org:device:SerialPortRoot:1"
  #define DEVICETYPE_SATELLITE      "urn:schemas-micasaverde-com:device:satellite:1"
+
#define DEVICETYPE_SCENE_CONTROLLER    "urn:schemas-micasaverde-com:device:SceneController:1"
  #define DEVICETYPE_VIDEO_ACCESSORY    "urn:schemas-micasaverde-com:device:videoaccessory:1"
+
#define DEVICETYPE_SCENE_CONTR_LED      "urn:schemas-micasaverde-com:device:SceneControllerLED:1"
  #define DEVICETYPE_VCR_DVR        "urn:schemas-micasaverde-com:device:vcrdvd:1"
+
#define DEVICETYPE_ENERGY_CALCULATOR    "urn:schemas-micasaverde-com:device:EnergyCalculator:1"
  #define DEVICETYPE_DVD_BLURAY      "urn:schemas-micasaverde-com:device:dvdbluray:1"
+
#define DEVICETYPE_TEMP_LEAK_SENSOR    "urn:schemas-micasaverde-com:device:TempLeakSensor:1"
  #define DEVICETYPE_RECEIVER        "urn:schemas-micasaverde-com:device:receiver:1"
+
#define DEVICETYPE_RELAY                "urn:schemas-micasaverde-com:device:Relay:1"
  #define DEVICETYPE_AMP          "urn:schemas-micasaverde-com:device:amp:1"
+
#define DEVICETYPE_ALARMPANEL          "urn:schemas-micasaverde-com:device:AlarmPanel:1"
  #define DEVICETYPE_CD          "urn:schemas-micasaverde-com:device:cd:1"
+
#define DEVICETYPE_ALARMPARTITION1      "urn:schemas-micasaverde-com:device:AlarmPartition:1"
  #define DEVICETYPE_MISC_HOME_CONTROL  "urn:schemas-micasaverde-com:device:mischomecontrol:1"
+
#define DEVICETYPE_ALARMPARTITION2      "urn:schemas-micasaverde-com:device:AlarmPartition:2"
  #define DEVICETYPE_AV_MISC        "urn:schemas-micasaverde-com:device:avmisc:1"
+
#define DEVICETYPE_SIREN                "urn:schemas-micasaverde-com:device:Siren:1"
  #define DEVICETYPE_VIRTUAL_DEVICE    "urn:schemas-micasaverde-com:device:VirtualDevice:1"
+
#define DEVICETYPE_FLOOD_SENSOR        "urn:schemas-micasaverde-com:device:FloodSensor:1"
  
// Device Files
+
#define DEVICETYPE_SCENE                "urn:schemas-micasaverde-com:device:Scene:1"</pre>
  #define DEVICEFILE_BINARY_LIGHT      "D_BinaryLight1.xml"
+
  #define DEVICEFILE_DIMMABLE_LIGHT    "D_DimmableLight1.xml"
+
  #define DEVICEFILE_THERMOSTAT      "D_HVAC_ZoneThermostat1.xml"
+
  #define DEVICEFILE_HUMIDITY_SENSOR    "D_HumiditySensor1.xml"
+
  #define DEVICEFILE_MULTI_IO        "D_GC100.xml"
+
  #define DEVICEFILE_DOOR_LOCK      "D_DoorLock1.xml"
+
  #define DEVICEFILE_DOOR_SENSOR      "D_MotionSensor1.xml"
+
  #define DEVICEFILE_ZWAVE_NETWORK    "D_ZWaveNetwork.xml"
+
  #define DEVICEFILE_USB_UIRT        "D_USB_UIRT.xml"
+
  #define DEVICEFILE_TEMPERATURE_SENSOR  "D_TemperatureSensor1.xml"
+
  #define DEVICEFILE_MOTION_SENSOR    "D_MotionSensor1.xml"
+
  #define DEVICEFILE_LIGHT_SENSOR      "D_LightSensor1.xml"
+
  #define DEVICEFILE_IR_TRANSMITTER    "D_IrTransmitter1.xml"
+
  #define DEVICEFILE_WINDOW_COVERING    "D_WindowCovering1.xml"
+
  #define DEVICEFILE_GENERIC_IO      "D_GenericIO1.xml"
+
  #define DEVICEFILE_REMOTE_CONTROL    "D_RemoteControl1.xml"
+
  #define DEVICEFILE_COMBO_DEVICE      "D_ComboDevice1.xml"
+
  #define DEVICEFILE_CAMERA        "D_DigitalSecurityCamera1.xml"
+
  #define DEVICEFILE_SCENE_CONTROLLER    "D_SceneController1.xml"
+
  #define DEVICEFILE_ENERGY_CALCULATOR  "D_EnergyCalculator1.xml"
+
  #define DEVICEFILE_AV_MISC        "D_AvMisc1.xml"
+
  
// Device Categories
+
=== IR Device Types ===
  #define DEVICE_CATEGORY_INTERFACE    1
+
<pre>#define DEVICETYPE_IR                  "urn:schemas-micasaverde-com:device:IrDevice:1"
  #define DEVICE_CATEGORY_DIMMABLE_LIGHT  2
+
#define DEVICETYPE_TV                  "urn:schemas-micasaverde-com:device:tv:1"
  #define DEVICE_CATEGORY_SWITCH      3
+
#define DEVICETYPE_CABLE                "urn:schemas-micasaverde-com:device:cable:1"
  #define DEVICE_CATEGORY_SECURITY_SENSOR  4
+
#define DEVICETYPE_SATELLITE            "urn:schemas-micasaverde-com:device:satellite:1"
  #define DEVICE_CATEGORY_HVAC     5
+
#define DEVICETYPE_VIDEO_ACCESSORY     "urn:schemas-micasaverde-com:device:videoaccessory:1"
  #define DEVICE_CATEGORY_CAMERA      6
+
#define DEVICETYPE_VCR_DVR              "urn:schemas-micasaverde-com:device:vcrdvd:1"
  #define DEVICE_CATEGORY_DOOR_LOCK    7
+
#define DEVICETYPE_DVD_BLURAY          "urn:schemas-micasaverde-com:device:dvdbluray:1"
  #define DEVICE_CATEGORY_WINDOW_COV    8
+
#define DEVICETYPE_RECEIVER            "urn:schemas-micasaverde-com:device:receiver:1"
  #define DEVICE_CATEGORY_REMOTE_CONTROL  9
+
#define DEVICETYPE_AMP                  "urn:schemas-micasaverde-com:device:amp:1"
  #define DEVICE_CATEGORY_IR_TX      10 
+
#define DEVICETYPE_CD                  "urn:schemas-micasaverde-com:device:cd:1"
  #define DEVICE_CATEGORY_GENERIC_IO   11
+
#define DEVICETYPE_MISC_HOME_CONTROL   "urn:schemas-micasaverde-com:device:mischomecontrol:1"
  #define DEVICE_CATEGORY_GENERIC_SENSOR  12
+
#define DEVICETYPE_AV_MISC              "urn:schemas-micasaverde-com:device:avmisc:1"
  #define DEVICE_CATEGORY_SERIAL_PORT    13
+
#define DEVICETYPE_VIRTUAL_DEVICE      "urn:schemas-micasaverde-com:device:VirtualDevice:1"</pre>
  #define DEVICE_CATEGORY_SCENE_CONTROLLER 14
+
  #define  DEVICE_CATEGORY_AV        15
+
  #define  DEVICE_CATEGORY_HUMIDITY    16
+
  #define  DEVICE_CATEGORY_TEMPERATURE    17
+
  #define  DEVICE_CATEGORY_LIGHT      18
+
  #define DEVICE_CATEGORY_ZWAVE_INT    19
+
  #define DEVICE_CATEGORY_INSTEON_INT    20
+
  
// Cast the second one between int and char * so we can use a simple
+
== Device Files ==
// array that's fast to iterate and not use an stl map
+
  extern const char *g_DeviceCategories[];
+
  extern const char *g_DeviceDescriptions[];  // Default descriptions
+
  
   #define MINIMUM_TIME   1230811200  // If the time is < this, we'll assume the clock isn't set
+
<pre>#define DEVICEFILE_BINARY_LIGHT        "D_BinaryLight1.xml"
 +
#define DEVICEFILE_DIMMABLE_LIGHT      "D_DimmableLight1.xml"
 +
#define DEVICEFILE_THERMOSTAT          "D_HVAC_ZoneThermostat1.xml"
 +
#define DEVICEFILE_HEATER              "D_Heater1.xml"
 +
#define DEVICEFILE_HUMIDITY_SENSOR      "D_HumiditySensor1.xml"
 +
#define DEVICEFILE_MULTI_IO            "D_GC100.xml"
 +
#define DEVICEFILE_DOOR_LOCK            "D_DoorLock1.xml"
 +
#define DEVICEFILE_DOOR_SENSOR          "D_DoorSensor1.xml"
 +
#define DEVICEFILE_ZWAVE_NETWORK        "D_ZWaveNetwork.xml"
 +
#define DEVICEFILE_INSTEON_NETWORK      "D_InsteonNetwork.xml"
 +
#define DEVICEFILE_USB_UIRT            "D_USB_UIRT.xml"
 +
#define DEVICEFILE_TEMPERATURE_SENSOR   "D_TemperatureSensor1.xml"
 +
#define DEVICEFILE_POWER_METER          "D_PowerMeter1.xml"
 +
#define DEVICEFILE_MOTION_SENSOR        "D_MotionSensor1.xml"
 +
#define DEVICEFILE_SMOKE_SENSOR        "D_SmokeSensor1.xml"
 +
#define DEVICEFILE_GENERIC_SENSOR      "D_GenericSensor1.xml"
 +
#define DEVICEFILE_LIGHT_SENSOR        "D_LightSensor1.xml"
 +
#define DEVICEFILE_IR_TRANSMITTER      "D_IrTransmitter1.xml"
 +
#define DEVICEFILE_IR_DEVICE            "D_IrDevice1.xml"
 +
#define DEVICEFILE_WINDOW_COVERING      "D_WindowCovering1.xml"
 +
#define DEVICEFILE_SERIAL_PORT_ROOT    "D_SerialPortRoot1.xml"
 +
#define DEVICEFILE_GENERIC_IO          "D_GenericIO1.xml"
 +
#define DEVICEFILE_REMOTE_CONTROL      "D_RemoteControl1.xml"
 +
#define DEVICEFILE_COMBO_DEVICE        "D_ComboDevice1.xml"
 +
#define DEVICEFILE_CAMERA              "D_DigitalSecurityCamera1.xml"
 +
#define DEVICEFILE_SCENE_CONTROLLER    "D_SceneController1.xml"
 +
#define DEVICEFILE_SCENE_CONTR_LED      "D_SceneControllerLED1.xml"
 +
#define DEVICEFILE_ENERGY_CALCULATOR   "D_EnergyCalculator1.xml"
 +
#define DEVICEFILE_AV_MISC              "D_AvMisc1.xml"
 +
#define DEVICEFILE_TEMP_LEAK_SENSOR    "D_TempLeakSensor1.xml"
 +
#define DEVICEFILE_RELAY                "D_Relay1.xml"
 +
#define DEVICEFILE_SIREN                "D_Siren1.xml"
 +
#define DEVICEFILE_FLOOD_SENSOR        "D_FloodSensor1.xml"
  
// This is a special argument which, if 1, means this action is 'temporary' and the system must note the current settings with Device_Action::CreateRestorePoint and restore them with GotoRestorePoint
+
#define DEVICEFILE_AV_SCENE            "D_Scene1.xml"</pre>
  #define TEMPORARY_UPNP_ARGUMENT    "TEMPORARY_UPNP_ARGUMENT"
+
  
  #define SAFE_DEVICE_ID(pDevice_LuaUPnP)  (pDevice_LuaUPnP ? pDevice_LuaUPnP->m_pDevice_Basic_get()->m_iDevice_Num_get() : 0)
+
== Device Categories ==
 +
See [[Luup Device Categories]].
  
// These are stored in the json file for the device itself and not part of the UPNP variables:
+
== HaGateway ==
 +
Basic functionality for the gateway itself
  
  /*
+
<pre>#define HAGEVICE_FILE                  "S_HomeAutomationGateway1.xml"
    Device_Num
+
#define HAGEVICE_SID                    "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
    FK_DevType
+
#define HAGEVICE_STYPE                  "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"</pre>
    Device_Num_Parent
+
    FK_Device_Category
+
    Room_Num
+
  
    Description
+
=== Variables ===
    InternalID // DEVICEDATA_PortChannel_Number_CONST
+
<pre>#define HAG_ACTIVE_SCENES              "ActiveScenes"
    Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST
+
#define HAG_DATAVERSION_USERDATA        "DataVersionUserData" // The current data version for user_data
    Model    // DEVICEDATA_Model_Desc_CONST
+
#define HAG_DATAVERSION_STATUS          "DataVersionStatus" // The current data version for lu_status</pre>
    IPAddress
+
    MacAddress
+
    UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST
+
  */
+
  
// ============  HaGateway  ============
+
=== Actions ===
// Basic functionality for the gateway itself
+
<pre>#define HAG_GET_USER_DATA "GetUserData"  
 +
#define HAG_MODIFY_USER_DATA "ModifyUserData"
 +
#define HAG_MODIFY_GET_VARIABLE "GetVariable"
 +
#define HAG_MODIFY_SET_VARIABLE "SetVariable"
 +
#define HAG_MODIFY_GET_STATUS "GetStatus"
 +
#define HAG_MODIFY_GET_ACTIONS "GetActions"
 +
#define HAG_MODIFY_CREATE_DEVICE "CreateDevice"
 +
#define HAG_MODIFY_DELETE_DEVICE "DeleteDevice"
 +
#define HAG_MODIFY_CREATE_PLUGIN "CreatePlugin"
 +
#define HAG_MODIFY_DELETE_PLUGIN "DeletePlugin"
 +
#define HAG_MODIFY_CREATE_PLUGIN_DEVICE "CreatePluginDevice"
 +
#define HAG_IMPORT_UPNP_DEVICE "ImportUpnpDevice"
 +
#define HAG_PROCESS_CHILD "ProcessChildDevices"
 +
#define HAG_RELOAD "Reload"
 +
#define HAG_RUN_SCENE "RunScene"
 +
#define HAG_SCENE_OFF "SceneOff"
 +
#define HAG_RUN_LUA "RunLua"
 +
#define HAG_LOG_IP_REQUEST "LogIpRequest"</pre>
  
  #define HAGEVICE_FILE      "S_HomeAutomationGateway1.xml"
+
== HaDevice ==
  #define HAGEVICE_SID      "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
+
Basic functionality for all home automation devices
  #define HAGEVICE_STYPE      "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"
+
  
// Variables
+
<pre>#define HADEVICE_FILE                  "S_HaDevice1.xml"
  #define HAG_ACTIVE_SCENES    "ActiveScenes"
+
#define HADEVICE_SID                    "urn:micasaverde-com:serviceId:HaDevice1"
 +
#define HADEVICE_STYPE                  "urn:schemas-micasaverde-com:service:HaDevice:1"</pre>
  
  /*
+
=== Variables ===
  #define HAG_ENERGY_DOW     "EnergyDOW"
+
<pre>#define HAD_ENERGY_LOG                  "EnergyLog"        // DEVICEDATA_Energy_Log_CONST
  #define HAG_ENERGY_TIME_OF_DAY  "GetUserData"
+
#define HAD_IOPORT_DEVICE              "IODevice"          // The device number to connect to for IO (this is on the master device)
  #define HAG_NUM_LIGHTS     "GetUserData"
+
#define HAD_IOPORT_DEVICE_XREF          "IODeviceXRef"     // On the port, this is the device number that connects to it
  #define HAG_THERMOSTAT_ON    "GetUserData"
+
#define HAD_IOPORT_MAX_TIME            "MaxTime"           // The maximum time to leave the socket open before closing and re-opening
   #define HAG_ENERGY_DOW     "GetUserData"
+
#define HAD_IOPORT_PORT                "IOPort"           // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
  */
+
#define HAD_IOPORT_PATH                "IOPortPath"        // Read-only, created at each boot, has the current path to the port
 +
#define HAD_IGNORE_ROOM                "IgnoreRoom"        // DEVICEDATA_Room_Not_Required_CONST
 +
#define HAD_COMM_FAILURE                "CommFailure"
 +
#define HAD_POLLING_ENABLED            "PollingEnabled"
 +
#define HAD_POLL_MIN_DELAY              "PollMinDelay"
 +
#define HAD_CONFIGURED                  "Configured"
 +
#define HAD_JOBID                      "JobID"
 +
#define HAD_REVERSE                    "ReverseOnOff"     // DEVICEDATA_Reverse_CONST
 +
#define HAD_LAST_UPDATE                "LastUpdate"       // DEVICEDATA_LastUpdate_CONST
 +
#define HAD_LAST_ACTIVITY              "LastActivity"     // Used by the OPower plugin
 +
#define HAD_AUTO_CONFIGURE              "AutoConfigure"    // DEVICEDATA_Auto_Configure_CONST
 +
#define HAD_LAST_TIME_CHECK            "LastTimeCheck"    // Only for devices that are capable of implementing time this is when the time was last checked
 +
#define HAD_LAST_TIME_OFFSET            "LastTimeOffset"    // For HAD_LAST_TIME_CHECK this is the timezone offset from UTC when the time was last checked
 +
#define HAD_FIRST_CONFIGURED            "FirstConfigured"   // The date this was first configured
 +
#define HAD_BATTERY_LEVEL              "BatteryLevel"     // DEVICEDATA_Battery_Level_CONST
 +
#define HAD_BATTERY_DATE                "BatteryDate"       // The date when the battery level was reported
 +
#define HAD_BATTERY_ALARM              "BatteryAlarm"      // DEVICEDATA_Battery_Alarm_CONST
 +
#define HAD_DOCUMENTATION              "Documentation" 
 +
#define HAD_ALARM                      "sl_Alarm"</pre>
  
// Actions
+
=== Actions ===
  #define HAG_GET_USER_DATA    "GetUserData"
+
<pre>#define HAD_RECONFIGURE                "Reconfigure"
  #define HAG_MODIFY_USER_DATA  "ModifyUserData"  
+
#define HAD_REMOVE                      "Remove"
  #define HAG_MODIFY_GET_VARIABLE  "GetVariable"  
+
#define HAD_POLL                        "Poll"
  #define HAG_MODIFY_SET_VARIABLE  "SetVariable"  
+
#define HAD_SET_POLL_FREQUENCY          "SetPollFrequency"
  #define HAG_MODIFY_GET_STATUS  "GetStatus"  
+
#define HAD_STRESS_TEST                "StressTest"
  #define HAG_MODIFY_GET_ACTIONS  "GetActions"
+
#define HAD_TOGGLE_STATE                "ToggleState"</pre>
  #define HAG_MODIFY_CREATE_DEVICE  "CreateDevice"
+
  #define HAG_MODIFY_DELETE_DEVICE  "DeleteDevice"
+
  #define HAG_PROCESS_CHILD    "ProcessChildDevices"
+
  #define HAG_RELOAD        "Reload"
+
  #define HAG_RUN_SCENE      "RunScene"
+
  #define HAG_RUN_LUA        "RunLua"
+
  
  
// ============  HaDevice  ============
+
== ZWaveNetwork ==
// Basic functionality for all home automation devices
+
Basic functionality for all ZWave devices
  
  #define HADEVICE_FILE      "S_HaDevice1.xml"
+
<pre>#define ZWN_FILE                        "S_ZWaveNetwork1.xml"
  #define HADEVICE_SID      "urn:micasaverde-com:serviceId:HaDevice1"
+
#define ZWN_SID                        "urn:micasaverde-com:serviceId:ZWaveNetwork1"
  #define HADEVICE_STYPE      "urn:schemas-micasaverde-com:service:HaDevice:1"
+
#define ZWN_STYPE                      "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"
  
// Variables
+
#define ZWN_RESET_NETWORK              "ResetNetwork"
  #define HAD_ENERGY_LOG      "EnergyLog" // DEVICEDATA_Energy_Log_CONST
+
#define ZWN_RECONFIGURE_ALL            "ReconfigureAllNodes"
  #define HAD_WATTS        "Watts"   // DEVICEDATA_Wattage_CONST
+
#define ZWN_REMOVE_NODES                "RemoveNodes"
  #define HAD_IOPORT_DEVICE    "IODevice" // The device number to connect to for IO (this is on the master device)
+
#define ZWN_ADD_NODES                  "AddNodes"
  #define HAD_IOPORT_PORT      "IOPort" // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
+
#define ZWN_DOWNLOAD                    "DownloadNetwork"
  #define HAD_IGNORE_ROOM      "IgnoreRoom"   // DEVICEDATA_Room_Not_Required_CONST
+
#define ZWN_HEAL_NETWORK                "HealNetwork"
  #define HAD_COMM_FAILURE    "CommFailure"
+
#define ZWN_UPDATE_NETWORK              "UpdateNetwork"
  #define HAD_POLLING_ENABLED    "PollingEnabled"
+
#define ZWN_UPDATE_NEIGHBORS            "UpdateNeighbors"
  #define HAD_POLL_MIN_DELAY    "PollMinDelay"
+
#define ZWN_SET_POLLING                "SetPolling"
  #define HAD_CONFIGURED      "Configured"
+
#define ZWN_SEND_DATA                  "SendData"
  #define HAD_JOBID        "JobID"
+
#define ZWN_POLL_ALL_NODES              "PollAllNodes"
  #define HAD_REVERSE        "ReverseOnOff" // DEVICEDATA_Reverse_CONST
+
#define ZWN_SOFT_RESET                  "SoftReset"
  #define HAD_LAST_UPDATE      "LastUpdate" // DEVICEDATA_LastUpdate_CONST
+
#define ZWN_BACKUP_DONGLE              "BackupDongle"
  #define HAD_AUTO_CONFIGURE    "AutoConfigure" // DEVICEDATA_Auto_Configure_CONST
+
#define ZWN_SCENE_IDS                  "SceneIDs"         // For scene controllers, node#-button#=ZWaveSceneID,...
 +
#define ZWN_PUT_BYTE                    "PutByte"</pre>
  
  #define HAD_RECONFIGURE      "Reconfigure"
+
=== Variables ===
  #define HAD_REMOVE        "Remove"
+
<pre>#define ZWN_LAST_UPDATE                "LastUpdate"       // DEVICEDATA_LastUpdate_CONST
  #define HAD_POLL        "Poll"
+
#define ZWN_LAST_HEAL                  "LastHeal"         // DEVICEDATA_LastUpdate_CONST
  #define HAD_SET_POLL_FREQUENCY "SetPollFrequency"
+
#define ZWN_ROUTE_FAILURE              "LastRouteFailure" // DEVICEDATA_LastUpdate_CONST
  #define HAD_STRESS_TEST      "StressTest"
+
#define ZWN_LAST_DONGLE_BACKUP          "LastDongleBackup"
 +
#define ZWN_NET_STATUS_ID              "NetStatusID"  
 +
#define ZWN_NET_STATUS_TEXT            "NetStatusText" 
 +
#define ZWN_COM_PORT                    "ComPort"          // DEVICEDATA_COM_Port_on_PC_CONST
 +
#define ZWN_LOCK_COM_PORT              "LockComPort" 
 +
#define ZWN_NODE_ID                    "NodeID"            // The dongle's id
 +
#define ZWN_VERSION_INFO                "VersionInfo"
 +
#define ZWN_HOME_ID                    "HomeID"
 +
#define ZWN_ROLE                        "Role"
 +
#define ZWN_RESET_MODE                  "ResetMode"
 +
#define ZWN_INCLUSION_MODE              "InclusionMode"
 +
#define ZWN_NODETYPE                    "NodeType"
 +
#define ZWN_TIMEOUT                    "Timeout"
 +
#define ZWN_MULTIPLE                    "Multiple"
 +
#define ZWN_SIMULATE_INCOMING          "SimulateIncomingData"
 +
#define ZWN_POLL_ENABLED                "PollingEnabled"
 +
#define ZWN_POLL_DELAY_INITIAL          "PollDelayInitial"
 +
#define ZWN_POLL_DELAY_DEADTIME        "PollDelayDeadTime"
 +
#define ZWN_POLL_MINDELAY              "PollMinDelay"
 +
#define ZWN_POLL_FREQUENCY              "PollFrequency"
 +
#define ZWN_LAST_ERROR                  "LastError"
 +
#define ZWN_DELAY_PROCESSING            "DelayProcessing"
 +
#define ZWN_FAILED_ONLY                "FailedOnly"
 +
#define ZWN_USE_45                      "Use45"
 +
#define ZWN_USE_MR                      "UseMR"
 +
#define ZWN_TO_3066                    "TO3066"           // indicates when we're going to work around the TO3066 issue
 +
#define ZWN_LIMIT_NEIGHBORS            "LimitNeighbors"   // indicates when we figure manual routing, only consider Z-Wave's neighbors as valid options</pre>
  
// ============  ZWaveNetwork  ============
 
// Basic functionality for all ZWave devices
 
  
  #define ZWN_FILE        "S_ZWaveNetwork1.xml"
+
== ZWaveDevice ==
  #define ZWN_SID          "urn:micasaverde-com:serviceId:ZWaveNetwork1"
+
Basic functionality for all ZWave devices
  #define ZWN_STYPE        "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"
+
  
  #define ZWN_RESET_NETWORK    "ResetNetwork"
+
<pre>#define ZWDEVICE_FILE                  "S_ZWaveDevice1.xml"
  #define ZWN_REMOVE_NODES    "RemoveNodes"
+
#define ZWDEVICE_SID                    "urn:micasaverde-com:serviceId:ZWaveDevice1"
  #define ZWN_ADD_NODES      "AddNodes"
+
#define ZWDEVICE_STYPE                  "urn:schemas-micasaverde-com:service:ZWaveDevice:1"</pre>
  #define ZWN_DOWNLOAD      "DownloadNetwork"
+
  #define ZWN_HEAL_NETWORK    "HealNetwork"
+
  #define ZWN_SET_POLLING      "SetPolling"
+
  #define ZWN_SEND_DATA      "SendData"
+
  #define ZWN_POLL_ALL_NODES    "PollAllNodes"
+
  #define ZWN_SOFT_RESET      "SoftReset"
+
  #define ZWN_BACKUP_DONGLE    "BackupDongle"
+
  
// Variables
+
=== Variables ===
  #define ZWN_LAST_UPDATE      "LastUpdate" // DEVICEDATA_LastUpdate_CONST
+
<pre>#define ZWD_POLL_SETTINGS              "PollSettings"     // DEVICEDATA_Polling_Settings_CONST
  #define ZWN_LAST_DONGLE_BACKUP  "LastDongleBackup"
+
#define ZWD_POLL_COMMANDS              "PollCommands"     // A comma-separated list of command classes/commands to poll. X means the device won't respond to any poll
  #define ZWN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
+
#define ZWD_MULTCH_ENDPOINT            "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
  #define ZWN_NET_STATUS_ID    "NetStatusID"  
+
#define ZWD_MULTCH_CAPABIL              "MultiChCapabilities" // DEVICEDATA_Multi_Channel_Capabilities_CONST
  #define ZWN_NET_STATUS_TEXT    "NetStatusText"
+
   #define ZWN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
+
  #define ZWN_NODE_ID        "NodeID" // The dongle's id
+
  #define ZWN_VERSION_INFO    "VersionInfo"
+
  #define ZWN_HOME_ID        "HomeID"
+
  #define ZWN_ROLE        "Role"
+
  #define ZWN_RESET_MODE      "ResetMode"
+
  #define ZWN_INCLUSION_MODE    "InclusionMode"
+
  #define ZWN_NODETYPE      "NodeType"
+
  #define ZWN_TIMEOUT        "Timeout"
+
  #define ZWN_MULTIPLE      "Multiple"
+
  #define ZWN_SIMULATE_INCOMING  "SimulateIncomingData"
+
  #define ZWN_POLL_ENABLED    "PollingEnabled"
+
  #define ZWN_POLL_DELAY_INITIAL  "PollDelayInitial"
+
  #define ZWN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
+
  #define ZWN_POLL_MINDELAY    "PollMinDelay"
+
  #define ZWN_POLL_FREQUENCY    "PollFrequency"
+
  #define ZWN_LAST_ERROR      "LastError"
+
  #define ZWN_DELAY_PROCESSING  "DelayProcessing"  implement this
+
  
// ============ ZWaveDevice ============
+
#define ZWD_NEIGHBORS                  "Neighbors"        // DEVICEDATA_Neighbors_to_Call_CONST
// Basic functionality for all ZWave devices
+
#define ZWD_NEIGHBORS_INVERSE          "NeighborsInverse" // Which neighbors see us
 +
#define ZWD_CAPABILITIES                "Capabilities"      // DEVICEDATA_Capabilities_CONST
 +
#define ZWD_SECURITY_FAILED            "SecurityFailed"    // Don't talk to this node with security even if it reports it can
 +
#define ZWD_CONFIG                      "Configuration"    // DEVICEDATA_Configuration_CONST
 +
#define ZWD_LAST_RESET                  "LastReset"        // DEVICEDATA_Last_Reset_CONST
 +
#define ZWD_SCENES_AS_EVENTS            "ScenesAsEvents"    // DEVICEDATA_Scenes_As_Events_CONST
 +
#define ZWD_SCENES_TIMESTAMPS          "ScenesTimestamp"  // DEVICEDATA_Scenes_CONST
 +
#define ZWD_WAKEUP_INTERVAL            "WakeupInterval"    // DEVICEDATA_Wakeup_Interval_CONST
 +
#define ZWD_LAST_WAKEUP                "LastWakeup"        // DEVICEDATA_Last_Wakeup_CONST
 +
#define ZWD_LAST_ROUTE_UPD              "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
 +
#define ZWD_HEALTH                      "Health"            // A rating from 0-5
 +
#define ZWD_HEALTH_DATE                "HealthDate"        // The date the rating was assigned
 +
#define ZWD_VARIABLES_GET              "VariablesGet"      // DEVICEDATA_Variables_Get_CONST
 +
#define ZWD_VARIABLES_SET              "VariablesSet"      // DEVICEDATA_Variables_Set_CONST
 +
#define ZWD_ASSOCIATION_GET            "AssociationGet"    // DEVICEDATA_Association_Get_CONST
 +
#define ZWD_ASSOCIATION_SET            "AssociationSet"    // DEVICEDATA_Association_Set_CONST
 +
#define ZWD_ASSOCIATION_NUM            "AssociationNum"
 +
#define ZWD_NONCE_ACK                  "NonceACK"
 +
#define ZWD_MANUF_INFO                  "ManufacturerInfo" // DEVICEDATA_Model_CONST
 +
#define ZWD_VERSION_INFO                "VersionInfo"      // DEVICEDATA_Configuration_CONST
 +
#define ZWD_SETPOINT_INFO              "SetPointInfo"
 +
#define ZWD_NODE_INFO                  "NodeInfo"          // The Z-Wave node info frame
 +
#define ZWD_INITIAL_NAME                "InitialName"      // The name that was initially set when the node was first added
 +
#define ZWD_CONFIGURED_NAME            "ConfiguredName"    // The user-specified name when we configured the node.  We won't need to set the name unless this has changed
 +
#define ZWD_CONFIGURED_VARIABLE        "ConfiguredVariable" // The user-specified VariablesSet when we configured the node.  We won't need to set the name unless this has changed
 +
#define ZWD_CONFIGURED_ASSOC            "ConfiguredAssoc"  // The user-specified AssociationSet when we configured the node.  We won't need to set the name unless this has changed
 +
#define ZWD_DOCUMENTATION              "Documentation"    // For the Z-Wave options page
 +
#define ZWD_METER_TYPE                  "MeterType"
 +
#define ZWD_METER_SCALE                "MeterScale"
 +
#define ZWD_ALARM_TYPE                  "AlarmType"
 +
#define ZWD_POLL_OK                    "PollOk"
 +
#define ZWD_POLL_TX_FAIL                "PollTxFail"
 +
#define ZWD_POLL_NO_REPLY              "PollNoReply"
 +
#define ZWD_MANUAL_ROUTE                "ManualRoute"      // A route specified by an end-user
 +
#define ZWD_ALL_ROUTES_FAILED          "AllRoutesFailed"
 +
#define ZWD_AUTO_ROUTE                  "AutoRoute"        // A route chosen by profilings
 +
#define ZWD_IGNORE_DIRECT_SCENE        "IgnoreDirectScene" // See notes in IsSceneControllerEvent</pre>
  
  #define ZWDEVICE_FILE      "S_ZWaveDevice1.xml"
+
== InsteonNetwork ==
  #define ZWDEVICE_SID      "urn:micasaverde-com:serviceId:ZWaveDevice1"
+
Basic functionality for all Insteon devices
  #define ZWDEVICE_STYPE      "urn:schemas-micasaverde-com:service:ZWaveDevice:1"
+
  
// Variables
+
<pre>#define INN_FILE                        "S_InsteonNetwork1.xml"
  #define ZWD_POLL_SETTINGS    "PollSettings" // DEVICEDATA_Polling_Settings_CONST
+
#define INN_SID                        "urn:micasaverde-com:serviceId:InsteonNetwork1"
  #define ZWD_MULTCH_ENDPOINT    "MultiChEndpoint" // DEVICEDATA_Multi_Channel_End_Point_CONST
+
#define INN_STYPE                      "urn:schemas-micasaverde-org:service:InsteonNetwork:1"</pre>
  #define ZWD_MULTCH_CAPABIL    "MultiChCapabilities" // DEVICEDATA_Multi_Channel_Capabilities_CONST
+
  
// ZWD_MULTCH_ENDPOINT    string m_sMultiChannelList, // If m_cProtocolVersion>=2 (multi channel), then If this has embedded devices, Format: [number of end points] , [0/1 end points are dynamic], [0/1 end points are identical]
+
=== Actions ===
                  // If m_cProtocolVersion<2 (multi instance), then the total number of instances
+
<pre>#define INN_RESET_NETWORK              "ResetNetwork"
// ZWD_MULTCH_CAPABIL      m_sMultiChannelCapability;  // m_cProtocolVersion>=2, if this has devices, Format: [end point #], Generic device class, Specific device class, command class 1, command class 2.... \n repeat next end point
+
#define INN_REMOVE_NODES                "RemoveNodes"
                    // If m_cProtocolVersion<2, command class, # of instances \n repeat command class
+
#define INN_ADD_NODES                  "AddNodes"
 +
#define INN_STOP_ADDREM_NODES          "StopAddRemoveNodes"
 +
#define INN_SEND_DATA                  "SendData"</pre>
  
  #define ZWD_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
+
=== Variables ===
  #define ZWD_CAPABILITIES    "Capabilities" // DEVICEDATA_Capabilities_CONST
+
<pre>#define INN_COM_PORT                    "ComPort"           // DEVICEDATA_COM_Port_on_PC_CONST
  #define ZWD_CONFIG        "Configuration// DEVICEDATA_Configuration_CONST
+
#define INN_LOCK_COM_PORT              "LockComPort"   
  #define ZWD_LAST_RESET      "LastReset" // DEVICEDATA_Last_Reset_CONST
+
#define INN_LAST_ERROR                  "LastError"
  #define ZWD_SCENES_AS_EVENTS  "ScenesAsEvents" // DEVICEDATA_Scenes_As_Events_CONST
+
#define INN_LAST_UPDATE                "LastUpdate"        // DEVICEDATA_LastUpdate_CONST
  #define ZWD_SCENES       "Scenes"  // DEVICEDATA_Scenes_CONST
+
#define INN_NET_STATUS_ID              "NetStatusID"   
  #define ZWD_SCENES_TIMESTAMPS  "ScenesTimestamp// DEVICEDATA_Scenes_CONST
+
#define INN_NET_STATUS_TEXT            "NetStatusText"   
  #define ZWD_WAKEUP_INTERVAL    "WakeupInterval// DEVICEDATA_Wakeup_Interval_CONST
+
#define INN_POLL_ENABLED                "PollingEnabled"
  #define ZWD_BATTERY_LEVEL    "BatteryLevel" // DEVICEDATA_Battery_Level_CONST
+
#define INN_POLL_DELAY_INITIAL          "PollDelayInitial"
  #define ZWD_BATTERY_ALARM    "BatteryAlarm" // DEVICEDATA_Battery_Alarm_CONST
+
#define INN_POLL_DELAY_DEADTIME        "PollDelayDeadTime"
  #define ZWD_LAST_WAKEUP      "LastWakeup" // DEVICEDATA_Last_Wakeup_CONST
+
#define INN_POLL_MINDELAY              "PollMinDelay"
  #define ZWD_LAST_ROUTE_UPD    "LastRouteUpdate" // DEVICEDATA_Last_Route_Update_CONST
+
#define INN_POLL_FREQUENCY              "PollFrequency"
  #define ZWD_VARIABLES_GET    "VariablesGet" // DEVICEDATA_Variables_Get_CONST
+
#define INN_NODE_ID                    "NodeID"           // The dongle's id
  #define ZWD_VARIABLES_SET    "VariablesSet" // DEVICEDATA_Variables_Set_CONST
+
#define INN_SL_X10_CODE                "sl_X10Code"</pre>
  #define ZWD_ASSOCIATION_GET    "AssociationGet" // DEVICEDATA_Association_Get_CONST
+
  #define ZWD_ASSOCIATION_SET    "AssociationSet"  // DEVICEDATA_Association_Set_CONST
+
  #define ZWD_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
+
  #define ZWD_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
+
  #define ZWD_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
+
  
  
// ============  InsteonNetwork  ============
+
== InsteonDevice ==
// Basic functionality for all Insteon devices
+
Basic functionality for all Insteon devices
  
  #define INN_FILE        "S_InsteonNetwork1.xml"
+
<pre>#define INDEVICE_FILE                  "S_InsteonDevice1.xml"
  #define INN_SID          "urn:micasaverde-com:serviceId:InsteonNetwork1"
+
#define INDEVICE_SID                    "urn:micasaverde-com:serviceId:InsteonDevice1"
  #define INN_STYPE        "urn:schemas-micasaverde-org:service:InsteonNetwork:1"
+
#define INDEVICE_STYPE                  "urn:schemas-micasaverde-com:service:InsteonDevice:1"</pre>
  
  #define INN_RESET_NETWORK    "ResetNetwork"
+
=== Variables ===
  #define INN_REMOVE_NODES    "RemoveNodes"
+
<pre>#define IND_POLL_SETTINGS              "PollSettings"     // DEVICEDATA_Polling_Settings_CONST
   #define INN_ADD_NODES      "AddNodes"
+
#define IND_MULTCH_ENDPOINT            "MultiChEndpoint// DEVICEDATA_Multi_Channel_End_Point_CONST
  #define INN_SEND_DATA      "SendData"
+
#define IND_MULTCH_CAPABIL              "MultiChCapabilities" // DEVICEDATA_Multi_Channel_Capabilities_CONST
  
// Variables
+
#define IND_NEIGHBORS                  "Neighbors"        // DEVICEDATA_Neighbors_to_Call_CONST
  #define INN_COM_PORT      "ComPort" // DEVICEDATA_COM_Port_on_PC_CONST
+
#define IND_CAPABILITIES                "Capabilities"     // DEVICEDATA_Capabilities_CONST
  #define INN_LAST_ERROR      "LastError"
+
#define IND_CONFIG                      "Configuration"     // DEVICEDATA_Configuration_CONST
  #define INN_AUTO_CONFIGURE    "AutoConfigure" // DEVICEDATA_Auto_Configure_CONST
+
#define IND_LAST_RESET                  "LastReset"         // DEVICEDATA_Last_Reset_CONST
  #define INN_LAST_UPDATE      "LastUpdate" // DEVICEDATA_LastUpdate_CONST
+
#define IND_SCENES_AS_EVENTS            "ScenesAsEvents"   // DEVICEDATA_Scenes_As_Events_CONST
  #define INN_NET_STATUS_ID    "NetStatusID"
+
#define IND_WAKEUP_INTERVAL            "WakeupInterval"   // DEVICEDATA_Wakeup_Interval_CONST
  #define INN_NET_STATUS_TEXT    "NetStatusText"
+
#define IND_LAST_WAKEUP                "LastWakeup"       // DEVICEDATA_Last_Wakeup_CONST
   #define INN_POLL_ENABLED    "PollingEnabled"
+
#define IND_LAST_ROUTE_UPD              "LastRouteUpdate"   // DEVICEDATA_Last_Route_Update_CONST
  #define INN_POLL_DELAY_INITIAL  "PollDelayInitial"
+
#define IND_VARIABLES_GET              "VariablesGet"     // DEVICEDATA_Variables_Get_CONST
  #define INN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
+
#define IND_VARIABLES_SET              "VariablesSet"     // DEVICEDATA_Variables_Set_CONST
  #define INN_POLL_MINDELAY   "PollMinDelay"
+
#define IND_ASSOCIATION_GET            "AssociationGet"   // DEVICEDATA_Association_Get_CONST
  #define INN_POLL_FREQUENCY    "PollFrequency"
+
#define IND_ASSOCIATION_SET            "AssociationSet"   // DEVICEDATA_Association_Set_CONST
  #define INN_NODE_ID        "NodeID" // The dongle's id
+
#define IND_MANUF_INFO                  "ManufacturerInfo" // DEVICEDATA_Model_CONST
 +
#define IND_VERSION_INFO                "VersionInfo"       // DEVICEDATA_Configuration_CONST
 +
#define IND_UPDATED_NAME                "UpdatedName"       // DEVICEDATA_Update_Name_CONST</pre>
  
  /*
 
  #define INN_VERSION_INFO    "VersionInfo"
 
  #define INN_HOME_ID        "HomeID"
 
  #define INN_ROLE        "Role"
 
  #define INN_RESET_MODE      "ResetMode"
 
  #define INN_INCLUSION_MODE    "InclusionMode"
 
  #define INN_NODETYPE      "NodeType"
 
  #define INN_TIMEOUT        "Timeout"
 
  #define INN_MULTIPLE      "Multiple"
 
  #define INN_SIMULATE_INCOMING  "SimulateIncomingData"
 
  */
 
  
// ============  InsteonDevice  ============
+
== USB UIRT ==
// Basic functionality for all Insteon devices
+
Basic functionality for USB UIRT
  
  #define INDEVICE_FILE      "S_InsteonDevice1.xml"
+
<pre>#define UIRT_FILE                      "S_USBUIRT.xml"
  #define INDEVICE_SID      "urn:micasaverde-com:serviceId:InsteonDevice1"
+
#define UIRT_SID                        "urn:micasaverde-com:serviceId:USBUIRT1"
  #define INDEVICE_STYPE      "urn:schemas-micasaverde-com:service:InsteonDevice:1"
+
#define UIRT_TYPE                      "urn:schemas-micasaverde-com:service:USBUIRT:1"</pre>
  
// Variables
+
=== Variables ===
  #define IND_POLL_SETTINGS    "PollSettings" // DEVICEDATA_Polling_Settings_CONST
+
<pre>#define UIRT_COM_PORT                  "ComPort"</pre>
  #define IND_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
+
  #define IND_MULTCH_CAPABIL    "MultiChCapabilities"  // DEVICEDATA_Multi_Channel_Capabilities_CONST
+
  
// IND_MULTCH_ENDPOINT    string m_sMultiChannelList, // If m_cProtocolVersion>=2 (multi channel), then If this has embedded devices, Format: [number of end points] , [0/1 end points are dynamic], [0/1 end points are identical]
 
                  // If m_cProtocolVersion<2 (multi instance), then the total number of instances
 
// IND_MULTCH_CAPABIL      m_sMultiChannelCapability;  // m_cProtocolVersion>=2, if this has devices, Format: [end point #], Generic device class, Specific device class, command class 1, command class 2.... \n repeat next end point
 
                    // If m_cProtocolVersion<2, command class, # of instances \n repeat command class
 
  
  #define IND_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
+
== Camera ==
  #define IND_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
+
Basic functionality for all Cameras
  #define IND_CONFIG        "Configuration"  // DEVICEDATA_Configuration_CONST
+
  #define IND_LAST_RESET      "LastReset"  // DEVICEDATA_Last_Reset_CONST
+
  #define IND_SCENES_AS_EVENTS  "ScenesAsEvents"  // DEVICEDATA_Scenes_As_Events_CONST
+
  #define IND_SCENES        "Scenes"  // DEVICEDATA_Scenes_CONST
+
  #define IND_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
+
  #define IND_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
+
  #define IND_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
+
  #define IND_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
+
  #define IND_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
+
  #define IND_VARIABLES_GET    "VariablesGet"  // DEVICEDATA_Variables_Get_CONST
+
  #define IND_VARIABLES_SET    "VariablesSet"  // DEVICEDATA_Variables_Set_CONST
+
  #define IND_ASSOCIATION_GET    "AssociationGet"  // DEVICEDATA_Association_Get_CONST
+
  #define IND_ASSOCIATION_SET    "AssociationSet"  // DEVICEDATA_Association_Set_CONST
+
  #define IND_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
+
  #define IND_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
+
  #define IND_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
+
  
// ============  USB UIRT  ============
+
<pre>#define CAMDEVICE_FILE                  "S_Camera1.xml"
// Basic functionality for USB UIRT
+
#define CAMDEVICE_SID                  "urn:micasaverde-com:serviceId:Camera1"
 +
#define CAMDEVICE_STYPE                "urn:schemas-micasaverde-com:service:Camera:1"</pre>
  
  #define UIRT_FILE      "S_USBUIRT.xml"
+
=== Variables ===
  #define UIRT_SID      "urn:micasaverde-com:serviceId:USBUIRT1"
+
<pre>#define CAM_USERNAME                    "Username"         // DEVICEDATA_AuthUser_CONST
  #define UIRT_TYPE      "urn:schemas-micasaverde-com:service:USBUIRT:1"
+
#define CAM_PASSWORD                    "Password"         // DEVICEDATA_AuthPassword_CONST
  
// Variables
+
#define CAM_RELATED_SENSORS            "RelatedSensors"    // Comma separated list: Archive a photo whenever the following sensors are tripped or doors are opened:
 +
#define CAM_SENSOR_ARCHIVE_SEC          "SensorArchiveSeconds" // Integer: And after the sensor(s) are tripped archive the video for  seconds.
 +
#define CAM_RELATED_LIGHTS              "RelatedLights"    // Comma separated list: Which lights should be turned on when viewing this camera:
 +
#define CAM_LIGHT_OPTIONS              "LightOptions"      // V=When I view the camera from the web or phone.
 +
                                                            // S=When the sensor(s) above are tripped and they are armed
 +
                                                            // B=When the sensors above are tripped and they are *not* armed
 +
                                                            // A=When you take an automatic picture for the archive
 +
                                                            // So: VSBA means do them all
  
// Actions
+
#define CAM_AUTO_ARCH_SEC              "AutoArchiveSeconds" // For archival purposes, take a picture from the camera every x seconds
  #define UIRT_COM_PORT    "ComPort"
+
#define CAM_AUTO_PRES_DAYS              "AutoArchivePreserveDays" // and keep the pictures x days
 +
#define CAM_URL                        "URL"              // DEVICEDATA_Path_CONST
 +
#define CAM_DIRECT_URL                  "DirectStreamingURL"
 +
#define CAM_TIMEOUT                    "Timeout"</pre>
  
// ============  Camera  ============
 
// Basic functionality for all Cameras
 
  
  #define CAMDEVICE_FILE      "S_Camera1.xml"
+
== PanTiltZoom ==
  #define CAMDEVICE_SID      "urn:micasaverde-com:serviceId:Camera1"
+
For Cameras
  #define CAMDEVICE_STYPE      "urn:schemas-micasaverde-com:service:Camera:1"
+
  
// Variables
+
<pre>#define PTZ_FILE                        "S_PanTiltZoom1.xml"
  #define CAM_USERNAME      "Username" // DEVICEDATA_AuthUser_CONST
+
#define PTZ_SID                        "urn:micasaverde-com:serviceId:PanTiltZoom1"
  #define CAM_PASSWORD      "Password" // DEVICEDATA_AuthPassword_CONST
+
#define PTZ_STYPE                      "urn:schemas-micasaverde-com:service:PanTiltZoom:1"</pre>
  
  #define CAM_RELATED_SENSORS    "RelatedSensors"   // Comma separated list: Archive a photo whenever the following sensors are tripped or doors are opened:
+
=== Actions ===
  #define CAM_SENSOR_ARCHIVE_SEC  "SensorArchiveSeconds"   // Integer: And after the sensor(s) are tripped archive the video for  seconds.
+
<pre>#define PTZ_LEFT                        "MoveLeft"
  #define CAM_RELATED_LIGHTS    "RelatedLights" // Comma separated list: Which lights should be turned on when viewing this camera:
+
#define PTZ_RIGHT                      "MoveRight"
  #define CAM_LIGHT_OPTIONS    "LightOptions" // V=When I view the camera from the web or phone.
+
#define PTZ_UP                          "MoveUp"
                        // S=When the sensor(s) above are tripped and they are armed
+
#define PTZ_DOWN                        "MoveDown"
                         // B=When the sensors above are tripped and they are *not* armed
+
#define PTZ_IN                          "ZoomIn"
                        // A=When you take an automatic picture for the archive
+
#define PTZ_OUT                         "ZoomOut"</pre>
                        // So: VSBA means do them all
+
  
  #define CAM_AUTO_ARCH_SEC    "AutoArchiveSeconds"  // For archival purposes, take a picture from the camera every x seconds
 
  #define CAM_AUTO_PRES_DAYS    "AutoArchivePreserveDays"  // and keep the pictures x days
 
  #define CAM_URL          "URL"  // DEVICEDATA_Path_CONST
 
  
// ============  PanTiltZoom  ============
+
== SwitchPower1 ==
// For Cameras
+
<pre>#define SWP_SID                        "urn:upnp-org:serviceId:SwitchPower1"</pre>
  
  #define PTZ_FILE        "S_PanTiltZoom1.xml"
+
=== Actions ===
  #define PTZ_SID          "urn:micasaverde-com:serviceId:PanTiltZoom1"
+
<pre>#define SWP_SET_TARGET                  "SetTarget"</pre>
  #define PTZ_STYPE        "urn:schemas-micasaverde-com:service:PanTiltZoom:1"
+
  
// Actions
+
=== Variables ===
  #define PTZ_LEFT        "MoveLeft"
+
<pre>#define SWP_STATUS                      "Status"  
  #define PTZ_RIGHT        "MoveRight"
+
#define SWP_TARGET                      "Target"</pre>
  #define PTZ_UP          "MoveUp"
+
  #define PTZ_DOWN        "MoveDown"
+
  #define PTZ_IN          "ZoomIn"
+
  #define PTZ_OUT          "ZoomOut"
+
  
// ============  SwitchPower1  ============
 
  #define SWP_SID        "urn:upnp-org:serviceId:SwitchPower1"
 
  
// Actions
+
== S_WindowCovering1 ==
  #define SWP_SET_TARGET    "SetTarget"  
+
<pre>#define WC_SID                          "urn:upnp-org:serviceId:WindowCovering1"</pre>
  
// Variables
+
=== Actions ===
  #define SWP_STATUS      "Status"  
+
<pre>#define WC_UP                          "Up"
  #define SWP_TARGET      "Target"  
+
#define WC_DOWN                        "Down"
 +
#define WC_STOP                        "Stop"</pre>
  
// ============  S_WindowCovering1  ============
+
=== Variables ===
  #define WC_SID        "urn:upnp-org:serviceId:WindowCovering1"
+
<pre>#define WC_STATUS                      "Status"
 +
#define WC_TARGET                      "Target"</pre>
  
// Actions
 
  #define WC_UP        "Up"
 
  #define WC_DOWN        "Down"
 
  #define WC_STOP        "Stop"
 
  
// Variables
+
== Dimming1 ==
 +
<pre>#define SWD_SID                        "urn:upnp-org:serviceId:Dimming1"</pre>
  
// ============  Dimming1  ============
+
=== Actions ===
  #define SWD_SID          "urn:upnp-org:serviceId:Dimming1"
+
<pre>#define SWD_SET_LOAD_LEVEL              "SetLoadLevelTarget"</pre>
  
// Actions
+
=== Variables ===
  #define SWD_SET_LOAD_LEVEL    "SetLoadLevelTarget"  
+
<pre>#define SWD_LOAD_LEVEL_STATUS          "LoadLevelStatus"
 +
#define SWD_LOAD_LEVEL_TARGET          "LoadLevelTarget"</pre>
  
// Variables
 
  #define SWD_LOAD_LEVEL_STATUS  "LoadLevelStatus"
 
  #define SWD_LOAD_LEVEL_TARGET  "LoadLevelTarget"
 
  
// ============ DoorLock1 ============
+
== DoorLock1 ==
  #define DL_SID       "urn:micasaverde-com:serviceId:DoorLock1"
+
<pre>#define DL_SID                         "urn:micasaverde-com:serviceId:DoorLock1"</pre>
  
// Actions
+
=== Actions ===
  #define DL_SET_TARGET   "SetTarget"
+
<pre>#define DL_SET_TARGET                   "SetTarget"
  #define DL_SET_PIN     "SetPin"
+
#define DL_SET_PIN                     "SetPin"
  #define DL_CLEAR_PIN   "ClearPin"
+
#define DL_CLEAR_PIN                   "ClearPin"
 +
#define DL_SET_PIN_DATE                "SetPinValidityDate"
 +
#define DL_SET_PIN_WEEK                "SetPinValidityWeekly"
 +
#define DL_CLEAR_PIN_VALID              "ClearPinValidity"</pre>
  
// Variables
+
=== Variables ===
  #define DL_STATUS     "Status"  
+
<pre>#define DL_STATUS                       "Status"
  #define DL_TARGET     "Target"  
+
#define DL_TARGET                       "Target"
  #define DL_SL_USER_CODE   "sl_UserCode"
+
#define DL_MIN_PIN_SIZE                "MinPinSize"
  #define DL_SL_PIN_FAILED "sl_PinFailed"
+
#define DL_MAX_PIN_SIZE                "MaxPinSize"
 +
#define DL_KEEP_PIN_CODES              "KeepPinCodes"
 +
#define DL_SL_USER_CODE                 "sl_UserCode"
 +
#define DL_SL_PIN_FAILED               "sl_PinFailed"
 +
#define DL_SL_LOCK_BUTTON              "sl_LockButton"
 +
#define DL_SL_LOCK_FAILURE              "sl_LockFailure"
 +
#define DL_SL_UNAUTH_USER              "sl_UnauthUser"
 +
#define DL_SL_LOW_BATTERY              "sl_LowBattery"
 +
#define DL_SL_VERY_LOW_BATTERY          "sl_VeryLowBattery"
 +
#define DL_SL_CODE_CHANGED              "sl_CodeChanged"
  
// Syntax: CodeID, Pin Code (only if start date is not empty), start date, stop date, Name \t
+
#define DL_PIN_CODES                    "PinCodes"      // DEVICEDATA_PIN_Codes_CONST
  #define DL_PIN_CODES    "PinCodes"  // DEVICEDATA_PIN_Codes_CONST
+
#define DL_NUM_SCHEDULES                "NumSchedules"  // DEVICEDATA_PIN_Codes_CONST</pre>
  
// ============  HVAC_UserOperatingMode1  ============
 
  #define HVACO_SID      "urn:upnp-org:serviceId:HVAC_UserOperatingMode1"
 
  
// Actions
+
== HVAC_UserOperatingMode1 ==
  #define HVACO_SET_MODE    "SetModeTarget"
+
<pre>#define HVACO_SID                      "urn:upnp-org:serviceId:HVAC_UserOperatingMode1"</pre>
  
// Variables
+
=== Actions ===
  #define HVACO_STATUS    "ModeStatus"
+
<pre>#define HVACO_SET_MODE                  "SetModeTarget"</pre>
  
// ============  HVAC_FanOperatingMode1  ============
+
=== Variables ===
  #define HVACF_SID      "urn:upnp-org:serviceId:HVAC_FanOperatingMode1"
+
<pre>#define HVACO_TARGET                    "ModeTarget"
 +
#define HVACO_STATUS                    "ModeStatus"
 +
#define HVACO_SUPPORTED                "SupportedType"</pre>
  
// Actions
+
== HVAC_OperatingState1 ==
  #define HVACF_SET_MODE    "SetMode"
+
<pre>#define HVACS_SID                      "urn:micasaverde-com:serviceId:HVAC_OperatingState1"</pre>
  
// Variables
+
=== Variables ===
  #define HVACF_STATUS    "ModeStatus"
+
<pre>#define HVACS_STATE                    "ModeState"
 +
#define HVACS_STATE_ENERGY              "ModeStateForEnergy"</pre>
  
  
// ============  TemperatureSetpoint1_Heat/Cool  ============
+
== HVAC_FanOperatingMode1 ==
  #define HVACHEAT_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Heat"
+
<pre>#define HVACF_SID                      "urn:upnp-org:serviceId:HVAC_FanOperatingMode1"</pre>
  #define HVACCOOL_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Cool"
+
  
// Variables
+
=== Actions ===
  #define HVACHC_SETPOINT    "SetCurrentSetpoint"
+
<pre>#define HVACF_SET_MODE                  "SetMode"</pre>
  
// Variables
+
=== Variables ===
  #define HVACHC_CURRENTSP    "CurrentSetpoint"
+
<pre>#define HVACF_STATUS                    "Mode"</pre>
  
// ============  TemperatureSensor1  ============
 
  #define TEMP_SID    "urn:upnp-org:serviceId:TemperatureSensor1"
 
  
// Variables
+
== TemperatureSetpoint1_Heat/Cool ==
  #define TEMP_CURRENT  "CurrentTemperature"
+
<pre>#define HVACHEAT_SID                    "urn:upnp-org:serviceId:TemperatureSetpoint1_Heat"
 +
#define HVACCOOL_SID                    "urn:upnp-org:serviceId:TemperatureSetpoint1_Cool"</pre>
  
// ============  LightSensor1  ============
+
=== Actions ===
  #define LIGHT_SID    "urn:micasaverde-com:serviceId:LightSensor1"
+
<pre>#define HVACHC_SETPOINT                "SetCurrentSetpoint"</pre>
  
// Variables
+
=== Variables ===
  #define LIGHT_CURRENT  "CurrentLevel"
+
<pre>#define HVACHC_CURRENTSP                "CurrentSetpoint"
 +
#define HVACHC_SETPOINT_TARGET          "SetpointTarget"</pre>
  
// ============  HumiditySensor1  ============
 
  #define HUM_SID    "urn:micasaverde-com:serviceId:HumiditySensor1"
 
  
// Variables
+
== TemperatureSensor1 ==
  #define HUM_CURRENT  "CurrentLevel"
+
<pre>#define TEMP_SID                        "urn:upnp-org:serviceId:TemperatureSensor1"</pre>
  
// ============  SecuritySensor1  ============
+
=== Variables ===
  #define SES_SID    "urn:micasaverde-com:serviceId:SecuritySensor1"
+
<pre>#define TEMP_CURRENT                    "CurrentTemperature"</pre>
  
// Variables
 
  #define SES_ARMED  "Armed"
 
  #define SES_TRIPPED  "Tripped"
 
  
// Action
+
== LightSensor1 ==
  #define SES_SET_ARMED  "SetArmed"
+
<pre>#define LIGHT_SID                      "urn:micasaverde-com:serviceId:LightSensor1"</pre>
  
// ============  EnergyMetering1  ============
+
=== Variables ===
  #define ENE_SID    "urn:micasaverde-com:serviceId:EnergyMetering1"
+
<pre>#define LIGHT_CURRENT                  "CurrentLevel"</pre>
  
// Variables
 
  #define ENE_KWH        "KWH"
 
  #define ENE_WATT      "Watt"
 
  #define ENE_ACTUAL      "ActualUsage"
 
  #define ENE_USER_SUPPLIED  "UserSuppliedWattage"
 
  
// ============  IrTransmitter1  ============
+
== HumiditySensor1 ==
  #define IRT_SID    "urn:micasaverde-com:serviceId:IrTransmitter1"
+
<pre>#define HUM_SID                        "urn:micasaverde-com:serviceId:HumiditySensor1"</pre>
  
// Variables
+
=== Variables ===
  #define IRT_SENDPRONTO  "SendProntoCode"
+
<pre>#define HUM_CURRENT                    "CurrentLevel"</pre>
  
  
// ============  SerialPort1  ============
+
== SecuritySensor1 ==
  #define SPT_SID    "urn:micasaverde-org:serviceId:SerialPort1"
+
<pre>#define SES_SID                        "urn:micasaverde-com:serviceId:SecuritySensor1"</pre>
  
// Variables
+
=== Variables ===
  #define SPT_BAUD  "baud"
+
<pre>#define SES_ARMED                      "Armed"
 +
#define SES_TRIPPED                    "Tripped"
 +
#define SES_LAST_TRIP                  "LastTrip"</pre>
  
// ============  SceneController1  ============
+
=== Action ===
  #define SCR_SID          "urn:micasaverde-com:serviceId:SceneController1"
+
<pre>#define SES_SET_ARMED                  "SetArmed"</pre>
  
// Variables
 
  #define SCR_SL_SCENE_ACTIVATED    "sl_SceneActivated"
 
  #define SCR_SL_SCENE_DEACTIVATED  "sl_SceneDeactivated"
 
  
// ============  GenericIO  ============
+
== EnergyMetering1 ==
  #define GIO_SID          "urn:micasaverde-com:serviceId:GenericIO"
+
<pre>#define ENE_SID                        "urn:micasaverde-com:serviceId:EnergyMetering1"</pre>
  
// Variables
+
=== Actions ===
  #define GIO_IS_INPUT      "IsInput" // DEVICEDATA_InputOrOutput_CONST, 1 if it's input
+
<pre>#define ENE_RESETKWH                    "ResetKWH"     // Reset Kwh</pre>
  #define GIO_DEFAULT_STATE    "DefaultState"// DEVICEDATA_Default_State_CONST, 0 is 'normal', 1 if it's reversed
+
  
#endif
+
=== Variables ===
 +
<pre>#define ENE_KWH                        "KWH"
 +
#define ENE_KWH_READING                "KWHReading"    // The time it was last read
 +
#define ENE_KVARH                      "kVARh"
 +
#define ENE_KVAR                        "kVAR"
 +
#define ENE_WATTS                      "Watts"
 +
#define ENE_PULSE                      "Pulse"
 +
#define ENE_ACTUAL                      "ActualUsage"
 +
#define ENE_USER_SUPPLIED              "UserSuppliedWattage"
 +
#define ENE_WHOLE_HOUSE                "WholeHouse"
 +
#define ENE_LOG                        "Log"</pre>
 +
 
 +
 
 +
== IrTransmitter1 ==
 +
<pre>#define IRT_SID                        "urn:micasaverde-com:serviceId:IrTransmitter1"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define IRT_SENDPRONTO                  "SendProntoCode"</pre>
 +
 
 +
 
 +
== SerialPort1 ==
 +
<pre>#define SPT_SID                        "urn:micasaverde-org:serviceId:SerialPort1"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define SPT_BAUD                        "baud"
 +
#define SPT_VENDOR                      "vendor"
 +
#define SPT_PRODUCT                    "product"
 +
#define SPT_PATH                        "path"</pre>
 +
 
 +
 
 +
== SceneController1 ==
 +
<pre>#define SCR_SID                        "urn:micasaverde-com:serviceId:SceneController1"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define SCR_SL_SCENE_ACTIVATED          "sl_SceneActivated"
 +
#define SCR_SL_SCENE_DEACTIVATED        "sl_SceneDeactivated"
 +
#define SCR_SCENES                      "Scenes"
 +
#define SCR_LAST_SCENE_ID              "LastSceneID"
 +
#define SCR_LAST_SCENE_TIME            "LastSceneTime"
 +
#define SCR_MANAGE_LEDS                "ManageLeds"
 +
#define SCR_NUM_BUTTONS                "NumButtons"
 +
#define SCR_FIRES_OFF_EVENTS            "FiresOffEvents"
 +
#define SCR_SCENE_SHORTCUTS            "SceneShortcuts"
 +
#define SCR_ACTIVATION_METHOD          "ActivationMethod"  // 1=BASIC_SET only (ignore scene_activate) 2=SCENE_ACTIVATE only (ignore basic set).  0=anything goes</pre>
 +
 
 +
 
 +
== SceneControllerLED1 ==
 +
<pre>#define SCL_SID                        "urn:micasaverde-com:serviceId:SceneControllerLED1"</pre>
 +
 
 +
=== Actions ===
 +
<pre>#define SCL_SET_LIGHT                  "SetLight"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define SCL_LIGHT_SETTINGS              "LightSettings"</pre>
 +
 
 +
 
 +
== GenericIO ==
 +
<pre>#define GIO_SID                        "urn:micasaverde-com:serviceId:GenericIO"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define GIO_IS_INPUT                    "IsInput"          // DEVICEDATA_InputOrOutput_CONST, 1 if it's input
 +
#define GIO_DEFAULT_STATE              "DefaultState"      // DEVICEDATA_Default_State_CONST, 0 is 'normal', 1 if it's reversed</pre>
 +
 
 +
 
 +
== IR ==
 +
<pre>#define IR_SID                          "urn:micasaverde-com:serviceId:IrDevice1"</pre>
 +
 
 +
=== Actions ===
 +
<pre>#define IR_SEND_CODE                    "SendCode"</pre>
 +
 
 +
=== Variables ===
 +
<pre>#define IR_CODESETS                    "Codesets"
 +
#define IR_CODESET                      "Codeset"
 +
#define IR_REMOTE                      "Remote"
 +
#define IR_MFRID                        "MfrId"</pre>

Latest revision as of 10:37, 5 January 2016

The following is the contents of the file Constants.h which defines the strings used for file device types, services, actions, variables, etc.

/*
Copyright (C) 2008 Mi Casa Verde, Inc., a Nevada Corporation 
All rights reserved. This software may not be used or distributed without express consent.
*/


Contents

[edit] Device Types

#define DEVICETYPE_HOME_AUTO_GATEWAY    "urn:schemas-micasaverde-com:device:HomeAutomationGateway:1"
#define DEVICETYPE_BINARY_LIGHT         "urn:schemas-upnp-org:device:BinaryLight:1"
#define DEVICETYPE_DIMMABLE_LIGHT       "urn:schemas-upnp-org:device:DimmableLight:1"
#define DEVICETYPE_THERMOSTAT           "urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1"
#define DEVICETYPE_HEATER               "urn:schemas-upnp-org:device:Heater:1"
#define DEVICETYPE_HUMIDITY_SENSOR      "urn:schemas-micasaverde-com:device:HumiditySensor:1"
#define DEVICETYPE_MULTI_IO             "urn:schemas-micasaverde-com:device:MultiIO:1"
#define DEVICETYPE_DOOR_LOCK            "urn:schemas-micasaverde-com:device:DoorLock:1"
#define DEVICETYPE_DOOR_SENSOR          "urn:schemas-micasaverde-com:device:DoorSensor:1"
#define DEVICETYPE_ZWAVE_NETWORK        "urn:schemas-micasaverde-com:device:ZWaveNetwork:1"
#define DEVICETYPE_ZIGBEE_NETWORK       "urn:schemas-micasaverde-com:device:ZigbeeNetwork:1"
#define DEVICETYPE_INSTEON_NETWORK      "urn:schemas-micasaverde-com:device:InsteonNetwork:1"
#define DEVICETYPE_USB_UIRT             "urn:schemas-micasaverde-com:device:USBUIRT:1"
#define DEVICETYPE_TEMPERATURE_SENSOR   "urn:schemas-micasaverde-com:device:TemperatureSensor:1"
#define DEVICETYPE_POWER_METER          "urn:schemas-micasaverde-com:device:PowerMeter:1"
#define DEVICETYPE_MOTION_SENSOR        "urn:schemas-micasaverde-com:device:MotionSensor:1"
#define DEVICETYPE_SMOKE_SENSOR         "urn:schemas-micasaverde-com:device:SmokeSensor:1"
#define DEVICETYPE_GENERIC_SENSOR       "urn:schemas-micasaverde-com:device:GenericSensor:1"
#define DEVICETYPE_LIGHT_SENSOR         "urn:schemas-micasaverde-com:device:LightSensor:1"
#define DEVICETYPE_IR_TRANSMITTER       "urn:schemas-micasaverde-com:device:IrTransmitter:1"
#define DEVICETYPE_WINDOW_COVERING      "urn:schemas-micasaverde-com:device:WindowCovering:1"
#define DEVICETYPE_GENERIC_IO           "urn:schemas-micasaverde-com:device:GenericIO:1"
#define DEVICETYPE_REMOTE_CONTROL       "urn:schemas-micasaverde-com:device:RemoteControl:1"
#define DEVICETYPE_COMBO_DEVICE         "urn:schemas-micasaverde-com:device:ComboDevice:1"
#define DEVICETYPE_CAMERA               "urn:schemas-upnp-org:device:DigitalSecurityCamera:1"
#define DEVICETYPE_CAMERA2              "urn:schemas-upnp-org:device:DigitalSecurityCamera:2"
#define DEVICETYPE_SERIALPORT           "urn:micasaverde-org:device:SerialPort:1"
#define DEVICETYPE_SERIALPORTROOT       "urn:micasaverde-org:device:SerialPortRoot:1"
#define DEVICETYPE_SCENE_CONTROLLER     "urn:schemas-micasaverde-com:device:SceneController:1"
#define DEVICETYPE_SCENE_CONTR_LED      "urn:schemas-micasaverde-com:device:SceneControllerLED:1"
#define DEVICETYPE_ENERGY_CALCULATOR    "urn:schemas-micasaverde-com:device:EnergyCalculator:1"
#define DEVICETYPE_TEMP_LEAK_SENSOR     "urn:schemas-micasaverde-com:device:TempLeakSensor:1"
#define DEVICETYPE_RELAY                "urn:schemas-micasaverde-com:device:Relay:1"
#define DEVICETYPE_ALARMPANEL           "urn:schemas-micasaverde-com:device:AlarmPanel:1"
#define DEVICETYPE_ALARMPARTITION1      "urn:schemas-micasaverde-com:device:AlarmPartition:1"
#define DEVICETYPE_ALARMPARTITION2      "urn:schemas-micasaverde-com:device:AlarmPartition:2"
#define DEVICETYPE_SIREN                "urn:schemas-micasaverde-com:device:Siren:1"
#define DEVICETYPE_FLOOD_SENSOR         "urn:schemas-micasaverde-com:device:FloodSensor:1"

#define DEVICETYPE_SCENE                "urn:schemas-micasaverde-com:device:Scene:1"

[edit] IR Device Types

#define DEVICETYPE_IR                   "urn:schemas-micasaverde-com:device:IrDevice:1"
#define DEVICETYPE_TV                   "urn:schemas-micasaverde-com:device:tv:1"
#define DEVICETYPE_CABLE                "urn:schemas-micasaverde-com:device:cable:1"
#define DEVICETYPE_SATELLITE            "urn:schemas-micasaverde-com:device:satellite:1"
#define DEVICETYPE_VIDEO_ACCESSORY      "urn:schemas-micasaverde-com:device:videoaccessory:1"
#define DEVICETYPE_VCR_DVR              "urn:schemas-micasaverde-com:device:vcrdvd:1"
#define DEVICETYPE_DVD_BLURAY           "urn:schemas-micasaverde-com:device:dvdbluray:1"
#define DEVICETYPE_RECEIVER             "urn:schemas-micasaverde-com:device:receiver:1"
#define DEVICETYPE_AMP                  "urn:schemas-micasaverde-com:device:amp:1"
#define DEVICETYPE_CD                   "urn:schemas-micasaverde-com:device:cd:1"
#define DEVICETYPE_MISC_HOME_CONTROL    "urn:schemas-micasaverde-com:device:mischomecontrol:1"
#define DEVICETYPE_AV_MISC              "urn:schemas-micasaverde-com:device:avmisc:1"
#define DEVICETYPE_VIRTUAL_DEVICE       "urn:schemas-micasaverde-com:device:VirtualDevice:1"

[edit] Device Files

#define DEVICEFILE_BINARY_LIGHT         "D_BinaryLight1.xml"
#define DEVICEFILE_DIMMABLE_LIGHT       "D_DimmableLight1.xml"
#define DEVICEFILE_THERMOSTAT           "D_HVAC_ZoneThermostat1.xml"
#define DEVICEFILE_HEATER               "D_Heater1.xml"
#define DEVICEFILE_HUMIDITY_SENSOR      "D_HumiditySensor1.xml"
#define DEVICEFILE_MULTI_IO             "D_GC100.xml"
#define DEVICEFILE_DOOR_LOCK            "D_DoorLock1.xml"
#define DEVICEFILE_DOOR_SENSOR          "D_DoorSensor1.xml"
#define DEVICEFILE_ZWAVE_NETWORK        "D_ZWaveNetwork.xml"
#define DEVICEFILE_INSTEON_NETWORK      "D_InsteonNetwork.xml"
#define DEVICEFILE_USB_UIRT             "D_USB_UIRT.xml"
#define DEVICEFILE_TEMPERATURE_SENSOR   "D_TemperatureSensor1.xml"
#define DEVICEFILE_POWER_METER          "D_PowerMeter1.xml"
#define DEVICEFILE_MOTION_SENSOR        "D_MotionSensor1.xml"
#define DEVICEFILE_SMOKE_SENSOR         "D_SmokeSensor1.xml"
#define DEVICEFILE_GENERIC_SENSOR       "D_GenericSensor1.xml"
#define DEVICEFILE_LIGHT_SENSOR         "D_LightSensor1.xml"
#define DEVICEFILE_IR_TRANSMITTER       "D_IrTransmitter1.xml"
#define DEVICEFILE_IR_DEVICE            "D_IrDevice1.xml"
#define DEVICEFILE_WINDOW_COVERING      "D_WindowCovering1.xml"
#define DEVICEFILE_SERIAL_PORT_ROOT     "D_SerialPortRoot1.xml"
#define DEVICEFILE_GENERIC_IO           "D_GenericIO1.xml"
#define DEVICEFILE_REMOTE_CONTROL       "D_RemoteControl1.xml"
#define DEVICEFILE_COMBO_DEVICE         "D_ComboDevice1.xml"
#define DEVICEFILE_CAMERA               "D_DigitalSecurityCamera1.xml"
#define DEVICEFILE_SCENE_CONTROLLER     "D_SceneController1.xml"
#define DEVICEFILE_SCENE_CONTR_LED      "D_SceneControllerLED1.xml"
#define DEVICEFILE_ENERGY_CALCULATOR    "D_EnergyCalculator1.xml"
#define DEVICEFILE_AV_MISC              "D_AvMisc1.xml"
#define DEVICEFILE_TEMP_LEAK_SENSOR     "D_TempLeakSensor1.xml"
#define DEVICEFILE_RELAY                "D_Relay1.xml"
#define DEVICEFILE_SIREN                "D_Siren1.xml"
#define DEVICEFILE_FLOOD_SENSOR         "D_FloodSensor1.xml"

#define DEVICEFILE_AV_SCENE             "D_Scene1.xml"

[edit] Device Categories

See Luup Device Categories.

[edit] HaGateway

Basic functionality for the gateway itself

#define HAGEVICE_FILE                   "S_HomeAutomationGateway1.xml"
#define HAGEVICE_SID                    "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
#define HAGEVICE_STYPE                  "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"

[edit] Variables

#define HAG_ACTIVE_SCENES               "ActiveScenes"
#define HAG_DATAVERSION_USERDATA        "DataVersionUserData" // The current data version for user_data
#define HAG_DATAVERSION_STATUS          "DataVersionStatus" // The current data version for lu_status

[edit] Actions

#define HAG_GET_USER_DATA		"GetUserData"  
#define HAG_MODIFY_USER_DATA		"ModifyUserData" 
#define HAG_MODIFY_GET_VARIABLE		"GetVariable" 
#define HAG_MODIFY_SET_VARIABLE		"SetVariable" 
#define HAG_MODIFY_GET_STATUS		"GetStatus" 
#define HAG_MODIFY_GET_ACTIONS		"GetActions" 
#define HAG_MODIFY_CREATE_DEVICE	"CreateDevice" 
#define HAG_MODIFY_DELETE_DEVICE	"DeleteDevice" 
#define HAG_MODIFY_CREATE_PLUGIN	"CreatePlugin" 
#define HAG_MODIFY_DELETE_PLUGIN	"DeletePlugin" 
#define HAG_MODIFY_CREATE_PLUGIN_DEVICE	"CreatePluginDevice" 
#define HAG_IMPORT_UPNP_DEVICE		"ImportUpnpDevice" 
#define HAG_PROCESS_CHILD		"ProcessChildDevices" 
#define HAG_RELOAD			"Reload" 
#define HAG_RUN_SCENE			"RunScene"
#define HAG_SCENE_OFF			"SceneOff"
#define HAG_RUN_LUA			"RunLua"
#define HAG_LOG_IP_REQUEST		"LogIpRequest"

[edit] HaDevice

Basic functionality for all home automation devices

#define HADEVICE_FILE                   "S_HaDevice1.xml"
#define HADEVICE_SID                    "urn:micasaverde-com:serviceId:HaDevice1"
#define HADEVICE_STYPE                  "urn:schemas-micasaverde-com:service:HaDevice:1"

[edit] Variables

#define HAD_ENERGY_LOG                  "EnergyLog"         // DEVICEDATA_Energy_Log_CONST
#define HAD_IOPORT_DEVICE               "IODevice"          // The device number to connect to for IO (this is on the master device)
#define HAD_IOPORT_DEVICE_XREF          "IODeviceXRef"      // On the port, this is the device number that connects to it
#define HAD_IOPORT_MAX_TIME             "MaxTime"           // The maximum time to leave the socket open before closing and re-opening
#define HAD_IOPORT_PORT                 "IOPort"            // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
#define HAD_IOPORT_PATH                 "IOPortPath"        // Read-only, created at each boot, has the current path to the port
#define HAD_IGNORE_ROOM                 "IgnoreRoom"        // DEVICEDATA_Room_Not_Required_CONST
#define HAD_COMM_FAILURE                "CommFailure"
#define HAD_POLLING_ENABLED             "PollingEnabled"
#define HAD_POLL_MIN_DELAY              "PollMinDelay"
#define HAD_CONFIGURED                  "Configured"
#define HAD_JOBID                       "JobID"
#define HAD_REVERSE                     "ReverseOnOff"      // DEVICEDATA_Reverse_CONST
#define HAD_LAST_UPDATE                 "LastUpdate"        // DEVICEDATA_LastUpdate_CONST
#define HAD_LAST_ACTIVITY               "LastActivity"      // Used by the OPower plugin
#define HAD_AUTO_CONFIGURE              "AutoConfigure"     // DEVICEDATA_Auto_Configure_CONST
#define HAD_LAST_TIME_CHECK             "LastTimeCheck"     // Only for devices that are capable of implementing time this is when the time was last checked
#define HAD_LAST_TIME_OFFSET            "LastTimeOffset"    // For HAD_LAST_TIME_CHECK this is the timezone offset from UTC when the time was last checked
#define HAD_FIRST_CONFIGURED            "FirstConfigured"   // The date this was first configured
#define HAD_BATTERY_LEVEL               "BatteryLevel"      // DEVICEDATA_Battery_Level_CONST
#define HAD_BATTERY_DATE                "BatteryDate"       // The date when the battery level was reported
#define HAD_BATTERY_ALARM               "BatteryAlarm"      // DEVICEDATA_Battery_Alarm_CONST
#define HAD_DOCUMENTATION               "Documentation"  
#define HAD_ALARM                       "sl_Alarm"

[edit] Actions

#define HAD_RECONFIGURE                 "Reconfigure"
#define HAD_REMOVE                      "Remove"
#define HAD_POLL                        "Poll"
#define HAD_SET_POLL_FREQUENCY          "SetPollFrequency"
#define HAD_STRESS_TEST                 "StressTest"
#define HAD_TOGGLE_STATE                "ToggleState"


[edit] ZWaveNetwork

Basic functionality for all ZWave devices

#define ZWN_FILE                        "S_ZWaveNetwork1.xml"
#define ZWN_SID                         "urn:micasaverde-com:serviceId:ZWaveNetwork1"
#define ZWN_STYPE                       "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"

#define ZWN_RESET_NETWORK               "ResetNetwork"
#define ZWN_RECONFIGURE_ALL             "ReconfigureAllNodes"
#define ZWN_REMOVE_NODES                "RemoveNodes"
#define ZWN_ADD_NODES                   "AddNodes"
#define ZWN_DOWNLOAD                    "DownloadNetwork"
#define ZWN_HEAL_NETWORK                "HealNetwork"
#define ZWN_UPDATE_NETWORK              "UpdateNetwork"
#define ZWN_UPDATE_NEIGHBORS            "UpdateNeighbors"
#define ZWN_SET_POLLING                 "SetPolling"
#define ZWN_SEND_DATA                   "SendData"
#define ZWN_POLL_ALL_NODES              "PollAllNodes"
#define ZWN_SOFT_RESET                  "SoftReset"
#define ZWN_BACKUP_DONGLE               "BackupDongle"
#define ZWN_SCENE_IDS                   "SceneIDs"          // For scene controllers, node#-button#=ZWaveSceneID,...
#define ZWN_PUT_BYTE                    "PutByte"

[edit] Variables

#define ZWN_LAST_UPDATE                 "LastUpdate"        // DEVICEDATA_LastUpdate_CONST
#define ZWN_LAST_HEAL                   "LastHeal"          // DEVICEDATA_LastUpdate_CONST
#define ZWN_ROUTE_FAILURE               "LastRouteFailure"  // DEVICEDATA_LastUpdate_CONST
#define ZWN_LAST_DONGLE_BACKUP          "LastDongleBackup"
#define ZWN_NET_STATUS_ID               "NetStatusID"  
#define ZWN_NET_STATUS_TEXT             "NetStatusText"  
#define ZWN_COM_PORT                    "ComPort"           // DEVICEDATA_COM_Port_on_PC_CONST
#define ZWN_LOCK_COM_PORT               "LockComPort"  
#define ZWN_NODE_ID                     "NodeID"            // The dongle's id
#define ZWN_VERSION_INFO                "VersionInfo"
#define ZWN_HOME_ID                     "HomeID"
#define ZWN_ROLE                        "Role"
#define ZWN_RESET_MODE                  "ResetMode"
#define ZWN_INCLUSION_MODE              "InclusionMode"
#define ZWN_NODETYPE                    "NodeType"
#define ZWN_TIMEOUT                     "Timeout"
#define ZWN_MULTIPLE                    "Multiple"
#define ZWN_SIMULATE_INCOMING           "SimulateIncomingData"
#define ZWN_POLL_ENABLED                "PollingEnabled"
#define ZWN_POLL_DELAY_INITIAL          "PollDelayInitial"
#define ZWN_POLL_DELAY_DEADTIME         "PollDelayDeadTime"
#define ZWN_POLL_MINDELAY               "PollMinDelay"
#define ZWN_POLL_FREQUENCY              "PollFrequency"
#define ZWN_LAST_ERROR                  "LastError"
#define ZWN_DELAY_PROCESSING            "DelayProcessing"
#define ZWN_FAILED_ONLY                 "FailedOnly"
#define ZWN_USE_45                      "Use45"
#define ZWN_USE_MR                      "UseMR"
#define ZWN_TO_3066                     "TO3066"            // indicates when we're going to work around the TO3066 issue
#define ZWN_LIMIT_NEIGHBORS             "LimitNeighbors"    // indicates when we figure manual routing, only consider Z-Wave's neighbors as valid options


[edit] ZWaveDevice

Basic functionality for all ZWave devices

#define ZWDEVICE_FILE                   "S_ZWaveDevice1.xml"
#define ZWDEVICE_SID                    "urn:micasaverde-com:serviceId:ZWaveDevice1"
#define ZWDEVICE_STYPE                  "urn:schemas-micasaverde-com:service:ZWaveDevice:1"

[edit] Variables

#define ZWD_POLL_SETTINGS               "PollSettings"      // DEVICEDATA_Polling_Settings_CONST
#define ZWD_POLL_COMMANDS               "PollCommands"      // A comma-separated list of command classes/commands to poll.  X means the device won't respond to any poll
#define ZWD_MULTCH_ENDPOINT             "MultiChEndpoint"   // DEVICEDATA_Multi_Channel_End_Point_CONST
#define ZWD_MULTCH_CAPABIL              "MultiChCapabilities" // DEVICEDATA_Multi_Channel_Capabilities_CONST

#define ZWD_NEIGHBORS                   "Neighbors"         // DEVICEDATA_Neighbors_to_Call_CONST
#define ZWD_NEIGHBORS_INVERSE           "NeighborsInverse"  // Which neighbors see us
#define ZWD_CAPABILITIES                "Capabilities"      // DEVICEDATA_Capabilities_CONST
#define ZWD_SECURITY_FAILED             "SecurityFailed"    // Don't talk to this node with security even if it reports it can
#define ZWD_CONFIG                      "Configuration"     // DEVICEDATA_Configuration_CONST
#define ZWD_LAST_RESET                  "LastReset"         // DEVICEDATA_Last_Reset_CONST
#define ZWD_SCENES_AS_EVENTS            "ScenesAsEvents"    // DEVICEDATA_Scenes_As_Events_CONST
#define ZWD_SCENES_TIMESTAMPS           "ScenesTimestamp"   // DEVICEDATA_Scenes_CONST
#define ZWD_WAKEUP_INTERVAL             "WakeupInterval"    // DEVICEDATA_Wakeup_Interval_CONST
#define ZWD_LAST_WAKEUP                 "LastWakeup"        // DEVICEDATA_Last_Wakeup_CONST
#define ZWD_LAST_ROUTE_UPD              "LastRouteUpdate"   // DEVICEDATA_Last_Route_Update_CONST
#define ZWD_HEALTH                      "Health"            // A rating from 0-5
#define ZWD_HEALTH_DATE                 "HealthDate"        // The date the rating was assigned
#define ZWD_VARIABLES_GET               "VariablesGet"      // DEVICEDATA_Variables_Get_CONST
#define ZWD_VARIABLES_SET               "VariablesSet"      // DEVICEDATA_Variables_Set_CONST
#define ZWD_ASSOCIATION_GET             "AssociationGet"    // DEVICEDATA_Association_Get_CONST
#define ZWD_ASSOCIATION_SET             "AssociationSet"    // DEVICEDATA_Association_Set_CONST
#define ZWD_ASSOCIATION_NUM             "AssociationNum"
#define ZWD_NONCE_ACK                   "NonceACK"
#define ZWD_MANUF_INFO                  "ManufacturerInfo"  // DEVICEDATA_Model_CONST
#define ZWD_VERSION_INFO                "VersionInfo"       // DEVICEDATA_Configuration_CONST
#define ZWD_SETPOINT_INFO               "SetPointInfo" 
#define ZWD_NODE_INFO                   "NodeInfo"          // The Z-Wave node info frame
#define ZWD_INITIAL_NAME                "InitialName"       // The name that was initially set when the node was first added
#define ZWD_CONFIGURED_NAME             "ConfiguredName"    // The user-specified name when we configured the node.  We won't need to set the name unless this has changed
#define ZWD_CONFIGURED_VARIABLE         "ConfiguredVariable" // The user-specified VariablesSet when we configured the node.  We won't need to set the name unless this has changed
#define ZWD_CONFIGURED_ASSOC            "ConfiguredAssoc"   // The user-specified AssociationSet when we configured the node.  We won't need to set the name unless this has changed
#define ZWD_DOCUMENTATION               "Documentation"     // For the Z-Wave options page
#define ZWD_METER_TYPE                  "MeterType"
#define ZWD_METER_SCALE                 "MeterScale"
#define ZWD_ALARM_TYPE                  "AlarmType"
#define ZWD_POLL_OK                     "PollOk"
#define ZWD_POLL_TX_FAIL                "PollTxFail"
#define ZWD_POLL_NO_REPLY               "PollNoReply"
#define ZWD_MANUAL_ROUTE                "ManualRoute"       // A route specified by an end-user
#define ZWD_ALL_ROUTES_FAILED           "AllRoutesFailed"
#define ZWD_AUTO_ROUTE                  "AutoRoute"         // A route chosen by profilings
#define ZWD_IGNORE_DIRECT_SCENE         "IgnoreDirectScene" // See notes in IsSceneControllerEvent

[edit] InsteonNetwork

Basic functionality for all Insteon devices

#define INN_FILE                        "S_InsteonNetwork1.xml"
#define INN_SID                         "urn:micasaverde-com:serviceId:InsteonNetwork1"
#define INN_STYPE                       "urn:schemas-micasaverde-org:service:InsteonNetwork:1"

[edit] Actions

#define INN_RESET_NETWORK               "ResetNetwork"
#define INN_REMOVE_NODES                "RemoveNodes"
#define INN_ADD_NODES                   "AddNodes"
#define INN_STOP_ADDREM_NODES           "StopAddRemoveNodes"
#define INN_SEND_DATA                   "SendData"

[edit] Variables

#define INN_COM_PORT                    "ComPort"           // DEVICEDATA_COM_Port_on_PC_CONST
#define INN_LOCK_COM_PORT               "LockComPort"  
#define INN_LAST_ERROR                  "LastError"
#define INN_LAST_UPDATE                 "LastUpdate"        // DEVICEDATA_LastUpdate_CONST
#define INN_NET_STATUS_ID               "NetStatusID"  
#define INN_NET_STATUS_TEXT             "NetStatusText"  
#define INN_POLL_ENABLED                "PollingEnabled"
#define INN_POLL_DELAY_INITIAL          "PollDelayInitial"
#define INN_POLL_DELAY_DEADTIME         "PollDelayDeadTime"
#define INN_POLL_MINDELAY               "PollMinDelay"
#define INN_POLL_FREQUENCY              "PollFrequency"
#define INN_NODE_ID                     "NodeID"            // The dongle's id
#define INN_SL_X10_CODE                 "sl_X10Code"


[edit] InsteonDevice

Basic functionality for all Insteon devices

#define INDEVICE_FILE                   "S_InsteonDevice1.xml"
#define INDEVICE_SID                    "urn:micasaverde-com:serviceId:InsteonDevice1"
#define INDEVICE_STYPE                  "urn:schemas-micasaverde-com:service:InsteonDevice:1"

[edit] Variables

#define IND_POLL_SETTINGS               "PollSettings"      // DEVICEDATA_Polling_Settings_CONST
#define IND_MULTCH_ENDPOINT             "MultiChEndpoint"   // DEVICEDATA_Multi_Channel_End_Point_CONST
#define IND_MULTCH_CAPABIL              "MultiChCapabilities" // DEVICEDATA_Multi_Channel_Capabilities_CONST

#define IND_NEIGHBORS                   "Neighbors"         // DEVICEDATA_Neighbors_to_Call_CONST
#define IND_CAPABILITIES                "Capabilities"      // DEVICEDATA_Capabilities_CONST
#define IND_CONFIG                      "Configuration"     // DEVICEDATA_Configuration_CONST
#define IND_LAST_RESET                  "LastReset"         // DEVICEDATA_Last_Reset_CONST
#define IND_SCENES_AS_EVENTS            "ScenesAsEvents"    // DEVICEDATA_Scenes_As_Events_CONST
#define IND_WAKEUP_INTERVAL             "WakeupInterval"    // DEVICEDATA_Wakeup_Interval_CONST
#define IND_LAST_WAKEUP                 "LastWakeup"        // DEVICEDATA_Last_Wakeup_CONST
#define IND_LAST_ROUTE_UPD              "LastRouteUpdate"   // DEVICEDATA_Last_Route_Update_CONST
#define IND_VARIABLES_GET               "VariablesGet"      // DEVICEDATA_Variables_Get_CONST
#define IND_VARIABLES_SET               "VariablesSet"      // DEVICEDATA_Variables_Set_CONST
#define IND_ASSOCIATION_GET             "AssociationGet"    // DEVICEDATA_Association_Get_CONST
#define IND_ASSOCIATION_SET             "AssociationSet"    // DEVICEDATA_Association_Set_CONST
#define IND_MANUF_INFO                  "ManufacturerInfo"  // DEVICEDATA_Model_CONST
#define IND_VERSION_INFO                "VersionInfo"       // DEVICEDATA_Configuration_CONST
#define IND_UPDATED_NAME                "UpdatedName"       // DEVICEDATA_Update_Name_CONST


[edit] USB UIRT

Basic functionality for USB UIRT

#define UIRT_FILE                       "S_USBUIRT.xml"
#define UIRT_SID                        "urn:micasaverde-com:serviceId:USBUIRT1"
#define UIRT_TYPE                       "urn:schemas-micasaverde-com:service:USBUIRT:1"

[edit] Variables

#define UIRT_COM_PORT                   "ComPort"


[edit] Camera

Basic functionality for all Cameras

#define CAMDEVICE_FILE                  "S_Camera1.xml"
#define CAMDEVICE_SID                   "urn:micasaverde-com:serviceId:Camera1"
#define CAMDEVICE_STYPE                 "urn:schemas-micasaverde-com:service:Camera:1"

[edit] Variables

#define CAM_USERNAME                    "Username"          // DEVICEDATA_AuthUser_CONST
#define CAM_PASSWORD                    "Password"          // DEVICEDATA_AuthPassword_CONST

#define CAM_RELATED_SENSORS             "RelatedSensors"    // Comma separated list: Archive a photo whenever the following sensors are tripped or doors are opened:
#define CAM_SENSOR_ARCHIVE_SEC          "SensorArchiveSeconds" // Integer: And after the sensor(s) are tripped archive the video for  seconds.
#define CAM_RELATED_LIGHTS              "RelatedLights"     // Comma separated list: Which lights should be turned on when viewing this camera:
#define CAM_LIGHT_OPTIONS               "LightOptions"      // V=When I view the camera from the web or phone.
                                                            // S=When the sensor(s) above are tripped and they are armed
                                                            // B=When the sensors above are tripped and they are *not* armed
                                                            // A=When you take an automatic picture for the archive
                                                            // So: VSBA means do them all

#define CAM_AUTO_ARCH_SEC               "AutoArchiveSeconds" // For archival purposes, take a picture from the camera every x seconds
#define CAM_AUTO_PRES_DAYS              "AutoArchivePreserveDays" // and keep the pictures x days
#define CAM_URL                         "URL"               // DEVICEDATA_Path_CONST
#define CAM_DIRECT_URL                  "DirectStreamingURL"
#define CAM_TIMEOUT                     "Timeout"


[edit] PanTiltZoom

For Cameras

#define PTZ_FILE                        "S_PanTiltZoom1.xml"
#define PTZ_SID                         "urn:micasaverde-com:serviceId:PanTiltZoom1"
#define PTZ_STYPE                       "urn:schemas-micasaverde-com:service:PanTiltZoom:1"

[edit] Actions

#define PTZ_LEFT                        "MoveLeft"
#define PTZ_RIGHT                       "MoveRight"
#define PTZ_UP                          "MoveUp"
#define PTZ_DOWN                        "MoveDown"
#define PTZ_IN                          "ZoomIn"
#define PTZ_OUT                         "ZoomOut"


[edit] SwitchPower1

#define SWP_SID                         "urn:upnp-org:serviceId:SwitchPower1"

[edit] Actions

#define SWP_SET_TARGET                  "SetTarget"

[edit] Variables

#define SWP_STATUS                      "Status" 
#define SWP_TARGET                      "Target"


[edit] S_WindowCovering1

#define WC_SID                          "urn:upnp-org:serviceId:WindowCovering1"

[edit] Actions

#define WC_UP                           "Up"
#define WC_DOWN                         "Down"
#define WC_STOP                         "Stop"

[edit] Variables

#define WC_STATUS                       "Status"
#define WC_TARGET                       "Target"


[edit] Dimming1

#define SWD_SID                         "urn:upnp-org:serviceId:Dimming1"

[edit] Actions

#define SWD_SET_LOAD_LEVEL              "SetLoadLevelTarget"

[edit] Variables

#define SWD_LOAD_LEVEL_STATUS           "LoadLevelStatus"
#define SWD_LOAD_LEVEL_TARGET           "LoadLevelTarget"


[edit] DoorLock1

#define DL_SID                          "urn:micasaverde-com:serviceId:DoorLock1"

[edit] Actions

#define DL_SET_TARGET                   "SetTarget"
#define DL_SET_PIN                      "SetPin"
#define DL_CLEAR_PIN                    "ClearPin"
#define DL_SET_PIN_DATE                 "SetPinValidityDate"
#define DL_SET_PIN_WEEK                 "SetPinValidityWeekly"
#define DL_CLEAR_PIN_VALID              "ClearPinValidity"

[edit] Variables

#define DL_STATUS                       "Status"
#define DL_TARGET                       "Target"
#define DL_MIN_PIN_SIZE                 "MinPinSize"
#define DL_MAX_PIN_SIZE                 "MaxPinSize"
#define DL_KEEP_PIN_CODES               "KeepPinCodes"
#define DL_SL_USER_CODE                 "sl_UserCode"
#define DL_SL_PIN_FAILED                "sl_PinFailed"
#define DL_SL_LOCK_BUTTON               "sl_LockButton"
#define DL_SL_LOCK_FAILURE              "sl_LockFailure"
#define DL_SL_UNAUTH_USER               "sl_UnauthUser"
#define DL_SL_LOW_BATTERY               "sl_LowBattery"
#define DL_SL_VERY_LOW_BATTERY          "sl_VeryLowBattery"
#define DL_SL_CODE_CHANGED              "sl_CodeChanged"

#define DL_PIN_CODES                    "PinCodes"      // DEVICEDATA_PIN_Codes_CONST
#define DL_NUM_SCHEDULES                "NumSchedules"  // DEVICEDATA_PIN_Codes_CONST


[edit] HVAC_UserOperatingMode1

#define HVACO_SID                       "urn:upnp-org:serviceId:HVAC_UserOperatingMode1"

[edit] Actions

#define HVACO_SET_MODE                  "SetModeTarget"

[edit] Variables

#define HVACO_TARGET                    "ModeTarget"
#define HVACO_STATUS                    "ModeStatus"
#define HVACO_SUPPORTED                 "SupportedType"

[edit] HVAC_OperatingState1

#define HVACS_SID                       "urn:micasaverde-com:serviceId:HVAC_OperatingState1"

[edit] Variables

#define HVACS_STATE                     "ModeState"
#define HVACS_STATE_ENERGY              "ModeStateForEnergy"


[edit] HVAC_FanOperatingMode1

#define HVACF_SID                       "urn:upnp-org:serviceId:HVAC_FanOperatingMode1"

[edit] Actions

#define HVACF_SET_MODE                  "SetMode"

[edit] Variables

#define HVACF_STATUS                    "Mode"


[edit] TemperatureSetpoint1_Heat/Cool

#define HVACHEAT_SID                    "urn:upnp-org:serviceId:TemperatureSetpoint1_Heat"
#define HVACCOOL_SID                    "urn:upnp-org:serviceId:TemperatureSetpoint1_Cool"

[edit] Actions

#define HVACHC_SETPOINT                 "SetCurrentSetpoint"

[edit] Variables

#define HVACHC_CURRENTSP                "CurrentSetpoint"
#define HVACHC_SETPOINT_TARGET          "SetpointTarget"


[edit] TemperatureSensor1

#define TEMP_SID                        "urn:upnp-org:serviceId:TemperatureSensor1"

[edit] Variables

#define TEMP_CURRENT                    "CurrentTemperature"


[edit] LightSensor1

#define LIGHT_SID                       "urn:micasaverde-com:serviceId:LightSensor1"

[edit] Variables

#define LIGHT_CURRENT                   "CurrentLevel"


[edit] HumiditySensor1

#define HUM_SID                         "urn:micasaverde-com:serviceId:HumiditySensor1"

[edit] Variables

#define HUM_CURRENT                     "CurrentLevel"


[edit] SecuritySensor1

#define SES_SID                         "urn:micasaverde-com:serviceId:SecuritySensor1"

[edit] Variables

#define SES_ARMED                       "Armed"
#define SES_TRIPPED                     "Tripped"
#define SES_LAST_TRIP                   "LastTrip"

[edit] Action

#define SES_SET_ARMED                   "SetArmed"


[edit] EnergyMetering1

#define ENE_SID                         "urn:micasaverde-com:serviceId:EnergyMetering1"

[edit] Actions

#define ENE_RESETKWH                    "ResetKWH"      // Reset Kwh

[edit] Variables

#define ENE_KWH                         "KWH"
#define ENE_KWH_READING                 "KWHReading"    // The time it was last read
#define ENE_KVARH                       "kVARh"
#define ENE_KVAR                        "kVAR"
#define ENE_WATTS                       "Watts"
#define ENE_PULSE                       "Pulse"
#define ENE_ACTUAL                      "ActualUsage"
#define ENE_USER_SUPPLIED               "UserSuppliedWattage"
#define ENE_WHOLE_HOUSE                 "WholeHouse"
#define ENE_LOG                         "Log"


[edit] IrTransmitter1

#define IRT_SID                         "urn:micasaverde-com:serviceId:IrTransmitter1"

[edit] Variables

#define IRT_SENDPRONTO                  "SendProntoCode"


[edit] SerialPort1

#define SPT_SID                         "urn:micasaverde-org:serviceId:SerialPort1"

[edit] Variables

#define SPT_BAUD                        "baud"
#define SPT_VENDOR                      "vendor"
#define SPT_PRODUCT                     "product"
#define SPT_PATH                        "path"


[edit] SceneController1

#define SCR_SID                         "urn:micasaverde-com:serviceId:SceneController1"

[edit] Variables

#define SCR_SL_SCENE_ACTIVATED          "sl_SceneActivated"
#define SCR_SL_SCENE_DEACTIVATED        "sl_SceneDeactivated"
#define SCR_SCENES                      "Scenes"
#define SCR_LAST_SCENE_ID               "LastSceneID"
#define SCR_LAST_SCENE_TIME             "LastSceneTime"
#define SCR_MANAGE_LEDS                 "ManageLeds"
#define SCR_NUM_BUTTONS                 "NumButtons"
#define SCR_FIRES_OFF_EVENTS            "FiresOffEvents"
#define SCR_SCENE_SHORTCUTS             "SceneShortcuts"
#define SCR_ACTIVATION_METHOD           "ActivationMethod"  // 1=BASIC_SET only (ignore scene_activate) 2=SCENE_ACTIVATE only (ignore basic set).  0=anything goes


[edit] SceneControllerLED1

#define SCL_SID                         "urn:micasaverde-com:serviceId:SceneControllerLED1"

[edit] Actions

#define SCL_SET_LIGHT                   "SetLight"

[edit] Variables

#define SCL_LIGHT_SETTINGS              "LightSettings"


[edit] GenericIO

#define GIO_SID                         "urn:micasaverde-com:serviceId:GenericIO"

[edit] Variables

#define GIO_IS_INPUT                    "IsInput"           // DEVICEDATA_InputOrOutput_CONST, 1 if it's input
#define GIO_DEFAULT_STATE               "DefaultState"      // DEVICEDATA_Default_State_CONST, 0 is 'normal', 1 if it's reversed


[edit] IR

#define IR_SID                          "urn:micasaverde-com:serviceId:IrDevice1"

[edit] Actions

#define IR_SEND_CODE                    "SendCode"

[edit] Variables

#define IR_CODESETS                     "Codesets"
#define IR_CODESET                      "Codeset"
#define IR_REMOTE                       "Remote"
#define IR_MFRID                        "MfrId"
Personal tools