Luup UPNP Files

From MiOS
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
[[Category:Development]]
 
 
The following is the contents of the file "Constant.h" which defines the strings used for file device types, services, actions, variables, etc.
 
The following is the contents of the file "Constant.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_HUMIDITY_SENSOR     "urn:schemas-micasaverde-com:device:HumiditySensor:1"
  #define DEVICETYPE_THERMOSTAT     "urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1"
+
#define DEVICETYPE_MULTI_IO             "urn:schemas-micasaverde-com:device:MultiIO:1"
  #define DEVICETYPE_HUMIDITY_SENSOR   "urn:schemas-micasaverde-com:device:HumiditySensor:1"
+
#define DEVICETYPE_DOOR_LOCK           "urn:schemas-micasaverde-com:device:DoorLock:1"
  #define DEVICETYPE_MULTI_IO       "urn:schemas-micasaverde-com:device:MultiIO:1"
+
#define DEVICETYPE_DOOR_SENSOR         "urn:schemas-micasaverde-com:device:DoorSensor:1"
  #define DEVICETYPE_DOOR_LOCK     "urn:schemas-micasaverde-com:device:DoorLock:1"
+
#define DEVICETYPE_ZWAVE_NETWORK       "urn:schemas-micasaverde-com:device:ZWaveNetwork:1"
  #define DEVICETYPE_DOOR_SENSOR     "urn:schemas-micasaverde-com:device:DoorSensor:1"
+
#define DEVICETYPE_ZIGBEE_NETWORK      "urn:schemas-micasaverde-com:device:ZigbeeNetwork:1"
  #define DEVICETYPE_ZWAVE_NETWORK   "urn:schemas-micasaverde-com:device:ZWaveNetwork: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_POWER_METER          "urn:schemas-micasaverde-com:device:PowerMeter:1"
  #define DEVICETYPE_MOTION_SENSOR    "urn:schemas-micasaverde-com:device:MotionSensor:1"
+
#define DEVICETYPE_MOTION_SENSOR        "urn:schemas-micasaverde-com:device:MotionSensor:1"
  #define DEVICETYPE_LIGHT_SENSOR      "urn:schemas-micasaverde-com:device:LightSensor:1"
+
#define DEVICETYPE_SMOKE_SENSOR        "urn:schemas-micasaverde-com:device:SmokeSensor:1"
  #define DEVICETYPE_IR_TRANSMITTER    "urn:schemas-micasaverde-com:device:IrTransmitter:1"
+
#define DEVICETYPE_LIGHT_SENSOR        "urn:schemas-micasaverde-com:device:LightSensor:1"
  #define DEVICETYPE_WINDOW_COVERING    "urn:schemas-micasaverde-com:device:WindowCovering:1"
+
#define DEVICETYPE_IR_TRANSMITTER      "urn:schemas-micasaverde-com:device:IrTransmitter:1"
  #define DEVICETYPE_GENERIC_IO      "urn:schemas-micasaverde-com:device:GenericIO:1"
+
#define DEVICETYPE_WINDOW_COVERING     "urn:schemas-micasaverde-com:device:WindowCovering:1"
  #define DEVICETYPE_REMOTE_CONTROL    "urn:schemas-micasaverde-com:device:RemoteControl:1"
+
#define DEVICETYPE_GENERIC_IO          "urn:schemas-micasaverde-com:device:GenericIO:1"
  #define DEVICETYPE_COMBO_DEVICE     "urn:schemas-micasaverde-com:device:ComboDevice:1"
+
#define DEVICETYPE_REMOTE_CONTROL      "urn:schemas-micasaverde-com:device:RemoteControl:1"
  #define DEVICETYPE_CAMERA        "urn:schemas-upnp-org:device:DigitalSecurityCamera:1"
+
#define DEVICETYPE_COMBO_DEVICE        "urn:schemas-micasaverde-com:device:ComboDevice:1"
  #define DEVICETYPE_SERIALPORT      "urn:micasaverde-org:device:SerialPort:1"
+
#define DEVICETYPE_CAMERA              "urn:schemas-upnp-org:device:DigitalSecurityCamera:1"
  #define DEVICETYPE_SCENE_CONTROLLER    "urn:schemas-micasaverde-com:device:SceneController:1"
+
#define DEVICETYPE_SERIALPORT          "urn:micasaverde-org:device:SerialPort:1"
  #define DEVICETYPE_ENERGY_CALCULATOR  "urn:schemas-micasaverde-com:device:EnergyCalculator:1"
+
#define DEVICETYPE_SERIALPORTROOT      "urn:micasaverde-org:device:SerialPortRoot:1"
// IR Device Types
+
#define DEVICETYPE_SCENE_CONTROLLER    "urn:schemas-micasaverde-com:device:SceneController:1"
  #define DEVICETYPE_TV          "urn:schemas-micasaverde-com:device:tv:1"
+
#define DEVICETYPE_SCENE_CONTR_LED     "urn:schemas-micasaverde-com:device:SceneControllerLED:1"
  #define DEVICETYPE_CABLE        "urn:schemas-micasaverde-com:device:cable:1"
+
#define DEVICETYPE_ENERGY_CALCULATOR    "urn:schemas-micasaverde-com:device:EnergyCalculator:1"
  #define DEVICETYPE_SATELLITE      "urn:schemas-micasaverde-com:device:satellite:1"
+
#define DEVICETYPE_TEMP_LEAK_SENSOR    "urn:schemas-micasaverde-com:device:TemperatureLeakSensor: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"
+
  
// 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
+
  
// Device Sub-Categories
 
#define DEVICE_SUBCATEGORY_NONE  0
 
  
// Security
+
== Device Files ==
#define DEVICE_SUBCATEGORY_DOOR  1
+
#define DEVICE_SUBCATEGORY_LEAK  2
+
#define DEVICE_SUBCATEGORY_MOTION  3
+
#define DEVICE_SUBCATEGORY_SMOKE  4
+
  
// IR
+
<pre>#define DEVICEFILE_BINARY_LIGHT        "D_BinaryLight1.xml"
#define DEVICE_SUBCATEGORY_IRT   1
+
#define DEVICEFILE_DIMMABLE_LIGHT      "D_DimmableLight1.xml"
#define DEVICE_SUBCATEGORY_USBUIRT  2
+
#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_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_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_AV_SCENE            "D_Scene1.xml"</pre>
  
  
// Cast the second one between int and char * so we can use a simple  
+
== Device Categories ==
// array that's fast to iterate and not use an stl map
+
 
 +
<pre>#define DEVICE_CATEGORY_INTERFACE      1
 +
#define DEVICE_CATEGORY_DIMMABLE_LIGHT  2
 +
#define DEVICE_CATEGORY_SWITCH          3
 +
#define DEVICE_CATEGORY_SECURITY_SENSOR 4
 +
#define DEVICE_CATEGORY_HVAC            5
 +
#define DEVICE_CATEGORY_CAMERA          6
 +
#define DEVICE_CATEGORY_DOOR_LOCK      7
 +
#define DEVICE_CATEGORY_WINDOW_COV      8
 +
#define DEVICE_CATEGORY_REMOTE_CONTROL  9
 +
#define DEVICE_CATEGORY_IR_TX          10
 +
#define DEVICE_CATEGORY_GENERIC_IO      11
 +
#define DEVICE_CATEGORY_GENERIC_SENSOR  12
 +
#define DEVICE_CATEGORY_SERIAL_PORT    13
 +
#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_SENSOR    18
 +
#define DEVICE_CATEGORY_ZWAVE_INT      19
 +
#define DEVICE_CATEGORY_INSTEON_INT    20
 +
#define DEVICE_CATEGORY_POWER_METER    21
 +
 
 +
#define DEVICE_CATEGORY_MAX            21</pre>
 +
 
 +
 
 +
== Device Sub-Categories ==
 +
<pre>#define DEVICE_SUBCATEGORY_NONE        0</pre>
 +
 
 +
=== Security ===
 +
 
 +
<pre>#define DEVICE_SUBCATEGORY_DOOR        1
 +
#define DEVICE_SUBCATEGORY_LEAK        2
 +
#define DEVICE_SUBCATEGORY_MOTION      3
 +
#define DEVICE_SUBCATEGORY_SMOKE        4</pre>
 +
 
 +
=== IR ===
 +
 
 +
<pre>#define DEVICE_SUBCATEGORY_IRT          1
 +
#define DEVICE_SUBCATEGORY_USBUIRT      2</pre>
 +
 
 +
 
 +
<br> // Cast the second one between int and char * so we can use a simple // array that's fast to iterate and not use an stl map  
 +
 
 
   extern const char *g_DeviceCategories[];
 
   extern const char *g_DeviceCategories[];
  extern const char *g_DeviceDescriptions[];  // Default descriptions
+
extern const char *g_DeviceDescriptions[];  // Default descriptions
 +
 
 +
  #define MINIMUM_TIME    1230811200  // If the time is &lt; this, we'll assume the clock isn't set
  
  #define MINIMUM_TIME    1230811200  // If the time is < this, we'll assume the clock isn't set
+
// 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
  
// 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 TEMPORARY_UPNP_ARGUMENT    "TEMPORARY_UPNP_ARGUMENT"
 
   #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)
+
   #define SAFE_DEVICE_ID(pDevice_LuaUPnP)  (pDevice_LuaUPnP&nbsp;? pDevice_LuaUPnP-&gt;m_pDevice_Basic_get()-&gt;m_iDevice_Num_get()&nbsp;: 0)
  
// These are stored in the json file for the device itself and not part of the UPNP variables:
+
// These are stored in the json file for the device itself and not part of the UPNP variables:  
  
 
   /*
 
   /*
    Device_Num
+
  Device_Num
    FK_DevType
+
  FK_DevType
    Device_Num_Parent
+
  Device_Num_Parent
    FK_Device_Category
+
  FK_Device_Category
    Room_Num
+
  Room_Num
  
 
     Description
 
     Description
    InternalID // DEVICEDATA_PortChannel_Number_CONST
+
  InternalID // DEVICEDATA_PortChannel_Number_CONST
    Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST
+
  Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST
    Model    // DEVICEDATA_Model_Desc_CONST
+
  Model    // DEVICEDATA_Model_Desc_CONST
    IPAddress
+
  IPAddress
    MacAddress
+
  MacAddress
    UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST
+
  UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST
  */
+
*/
  
// ============ HaGateway ============
+
// ============ HaGateway ============ // Basic functionality for the gateway itself  
// Basic functionality for the gateway itself
+
  
 
   #define HAGEVICE_FILE      "S_HomeAutomationGateway1.xml"
 
   #define HAGEVICE_FILE      "S_HomeAutomationGateway1.xml"
  #define HAGEVICE_SID      "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
+
#define HAGEVICE_SID      "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
  #define HAGEVICE_STYPE      "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"
+
#define HAGEVICE_STYPE      "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"
 +
 
 +
// Variables
  
// Variables
 
 
   #define HAG_ACTIVE_SCENES    "ActiveScenes"
 
   #define HAG_ACTIVE_SCENES    "ActiveScenes"
  
 
   /*
 
   /*
  #define HAG_ENERGY_DOW      "EnergyDOW"
+
#define HAG_ENERGY_DOW      "EnergyDOW"
  #define HAG_ENERGY_TIME_OF_DAY  "GetUserData"
+
#define HAG_ENERGY_TIME_OF_DAY  "GetUserData"
  #define HAG_NUM_LIGHTS      "GetUserData"
+
#define HAG_NUM_LIGHTS      "GetUserData"
  #define HAG_THERMOSTAT_ON    "GetUserData"
+
#define HAG_THERMOSTAT_ON    "GetUserData"
  #define HAG_ENERGY_DOW      "GetUserData"
+
#define HAG_ENERGY_DOW      "GetUserData"
  */
+
*/
 +
 
 +
// Actions
  
// Actions
 
 
   #define HAG_GET_USER_DATA    "GetUserData"   
 
   #define HAG_GET_USER_DATA    "GetUserData"   
  #define HAG_MODIFY_USER_DATA  "ModifyUserData"  
+
#define HAG_MODIFY_USER_DATA  "ModifyUserData"  
  #define HAG_MODIFY_GET_VARIABLE  "GetVariable"  
+
#define HAG_MODIFY_GET_VARIABLE  "GetVariable"  
  #define HAG_MODIFY_SET_VARIABLE  "SetVariable"  
+
#define HAG_MODIFY_SET_VARIABLE  "SetVariable"  
  #define HAG_MODIFY_GET_STATUS  "GetStatus"  
+
#define HAG_MODIFY_GET_STATUS  "GetStatus"  
  #define HAG_MODIFY_GET_ACTIONS  "GetActions"  
+
#define HAG_MODIFY_GET_ACTIONS  "GetActions"  
  #define HAG_MODIFY_CREATE_DEVICE  "CreateDevice"  
+
#define HAG_MODIFY_CREATE_DEVICE  "CreateDevice"  
  #define HAG_MODIFY_DELETE_DEVICE  "DeleteDevice"  
+
#define HAG_MODIFY_DELETE_DEVICE  "DeleteDevice"  
  #define HAG_PROCESS_CHILD    "ProcessChildDevices"  
+
#define HAG_PROCESS_CHILD    "ProcessChildDevices"  
  #define HAG_RELOAD        "Reload"  
+
#define HAG_RELOAD        "Reload"  
  #define HAG_RUN_SCENE      "RunScene"
+
#define HAG_RUN_SCENE      "RunScene"
  #define HAG_RUN_LUA        "RunLua"
+
#define HAG_RUN_LUA        "RunLua"
  
 
+
<br> // ============ HaDevice ============ // Basic functionality for all home automation devices  
// ============ HaDevice ============
+
// Basic functionality for all home automation devices
+
  
 
   #define HADEVICE_FILE      "S_HaDevice1.xml"
 
   #define HADEVICE_FILE      "S_HaDevice1.xml"
  #define HADEVICE_SID      "urn:micasaverde-com:serviceId:HaDevice1"
+
#define HADEVICE_SID      "urn:micasaverde-com:serviceId:HaDevice1"
  #define HADEVICE_STYPE      "urn:schemas-micasaverde-com:service:HaDevice:1"
+
#define HADEVICE_STYPE      "urn:schemas-micasaverde-com:service:HaDevice:1"
 +
 
 +
// Variables
  
// Variables
 
 
   #define HAD_ENERGY_LOG      "EnergyLog"  // DEVICEDATA_Energy_Log_CONST
 
   #define HAD_ENERGY_LOG      "EnergyLog"  // DEVICEDATA_Energy_Log_CONST
  #define HAD_WATTS        "Watts"    // DEVICEDATA_Wattage_CONST
+
#define HAD_WATTS        "Watts"    // DEVICEDATA_Wattage_CONST
  #define HAD_IOPORT_DEVICE    "IODevice"  // The device number to connect to for IO (this is on the master device)
+
#define HAD_IOPORT_DEVICE    "IODevice"  // The device number to connect to for IO (this is on the master device)
  #define HAD_IOPORT_PORT      "IOPort"  // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
+
#define HAD_IOPORT_PORT      "IOPort"  // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
  #define HAD_IGNORE_ROOM      "IgnoreRoom"    // DEVICEDATA_Room_Not_Required_CONST
+
#define HAD_IGNORE_ROOM      "IgnoreRoom"    // DEVICEDATA_Room_Not_Required_CONST
  #define HAD_COMM_FAILURE    "CommFailure"
+
#define HAD_COMM_FAILURE    "CommFailure"
  #define HAD_POLLING_ENABLED    "PollingEnabled"
+
#define HAD_POLLING_ENABLED    "PollingEnabled"
  #define HAD_POLL_MIN_DELAY    "PollMinDelay"
+
#define HAD_POLL_MIN_DELAY    "PollMinDelay"
  #define HAD_CONFIGURED      "Configured"
+
#define HAD_CONFIGURED      "Configured"
  #define HAD_JOBID        "JobID"
+
#define HAD_JOBID        "JobID"
  #define HAD_REVERSE        "ReverseOnOff"  // DEVICEDATA_Reverse_CONST
+
#define HAD_REVERSE        "ReverseOnOff"  // DEVICEDATA_Reverse_CONST
  #define HAD_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
+
#define HAD_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
  #define HAD_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
+
#define HAD_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
  
 
   #define HAD_RECONFIGURE      "Reconfigure"
 
   #define HAD_RECONFIGURE      "Reconfigure"
  #define HAD_REMOVE        "Remove"
+
#define HAD_REMOVE        "Remove"
  #define HAD_POLL        "Poll"
+
#define HAD_POLL        "Poll"
  #define HAD_SET_POLL_FREQUENCY  "SetPollFrequency"
+
#define HAD_SET_POLL_FREQUENCY  "SetPollFrequency"
  #define HAD_STRESS_TEST      "StressTest"
+
#define HAD_STRESS_TEST      "StressTest"
  
// ============ ZWaveNetwork ============
+
// ============ ZWaveNetwork ============ // Basic functionality for all ZWave devices  
// Basic functionality for all ZWave devices
+
  
 
   #define ZWN_FILE        "S_ZWaveNetwork1.xml"
 
   #define ZWN_FILE        "S_ZWaveNetwork1.xml"
  #define ZWN_SID          "urn:micasaverde-com:serviceId:ZWaveNetwork1"
+
#define ZWN_SID          "urn:micasaverde-com:serviceId:ZWaveNetwork1"
  #define ZWN_STYPE        "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"
+
#define ZWN_STYPE        "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"
  
 
   #define ZWN_RESET_NETWORK    "ResetNetwork"
 
   #define ZWN_RESET_NETWORK    "ResetNetwork"
  #define ZWN_REMOVE_NODES    "RemoveNodes"
+
#define ZWN_REMOVE_NODES    "RemoveNodes"
  #define ZWN_ADD_NODES      "AddNodes"
+
#define ZWN_ADD_NODES      "AddNodes"
  #define ZWN_DOWNLOAD      "DownloadNetwork"
+
#define ZWN_DOWNLOAD      "DownloadNetwork"
  #define ZWN_HEAL_NETWORK    "HealNetwork"
+
#define ZWN_HEAL_NETWORK    "HealNetwork"
  #define ZWN_SET_POLLING      "SetPolling"
+
#define ZWN_SET_POLLING      "SetPolling"
  #define ZWN_SEND_DATA      "SendData"
+
#define ZWN_SEND_DATA      "SendData"
  #define ZWN_POLL_ALL_NODES    "PollAllNodes"
+
#define ZWN_POLL_ALL_NODES    "PollAllNodes"
  #define ZWN_SOFT_RESET      "SoftReset"
+
#define ZWN_SOFT_RESET      "SoftReset"
  #define ZWN_BACKUP_DONGLE    "BackupDongle"
+
#define ZWN_BACKUP_DONGLE    "BackupDongle"
 +
 
 +
// Variables
  
// Variables
 
 
   #define ZWN_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
 
   #define ZWN_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
  #define ZWN_LAST_DONGLE_BACKUP  "LastDongleBackup"
+
#define ZWN_LAST_DONGLE_BACKUP  "LastDongleBackup"
  #define ZWN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
+
#define ZWN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
  #define ZWN_NET_STATUS_ID    "NetStatusID"   
+
#define ZWN_NET_STATUS_ID    "NetStatusID"   
  #define ZWN_NET_STATUS_TEXT    "NetStatusText"   
+
#define ZWN_NET_STATUS_TEXT    "NetStatusText"   
  #define ZWN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
+
#define ZWN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
  #define ZWN_NODE_ID        "NodeID"  // The dongle's id
+
#define ZWN_NODE_ID        "NodeID"  // The dongle's id
  #define ZWN_VERSION_INFO    "VersionInfo"
+
#define ZWN_VERSION_INFO    "VersionInfo"
  #define ZWN_HOME_ID        "HomeID"
+
#define ZWN_HOME_ID        "HomeID"
  #define ZWN_ROLE        "Role"
+
#define ZWN_ROLE        "Role"
  #define ZWN_RESET_MODE      "ResetMode"
+
#define ZWN_RESET_MODE      "ResetMode"
  #define ZWN_INCLUSION_MODE    "InclusionMode"
+
#define ZWN_INCLUSION_MODE    "InclusionMode"
  #define ZWN_NODETYPE      "NodeType"
+
#define ZWN_NODETYPE      "NodeType"
  #define ZWN_TIMEOUT        "Timeout"
+
#define ZWN_TIMEOUT        "Timeout"
  #define ZWN_MULTIPLE      "Multiple"
+
#define ZWN_MULTIPLE      "Multiple"
  #define ZWN_SIMULATE_INCOMING  "SimulateIncomingData"
+
#define ZWN_SIMULATE_INCOMING  "SimulateIncomingData"
  #define ZWN_POLL_ENABLED    "PollingEnabled"
+
#define ZWN_POLL_ENABLED    "PollingEnabled"
  #define ZWN_POLL_DELAY_INITIAL  "PollDelayInitial"
+
#define ZWN_POLL_DELAY_INITIAL  "PollDelayInitial"
  #define ZWN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
+
#define ZWN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
  #define ZWN_POLL_MINDELAY    "PollMinDelay"
+
#define ZWN_POLL_MINDELAY    "PollMinDelay"
  #define ZWN_POLL_FREQUENCY    "PollFrequency"
+
#define ZWN_POLL_FREQUENCY    "PollFrequency"
  #define ZWN_LAST_ERROR      "LastError"
+
#define ZWN_LAST_ERROR      "LastError"
  #define ZWN_DELAY_PROCESSING  "DelayProcessing"  implement this
+
#define ZWN_DELAY_PROCESSING  "DelayProcessing"  implement this
  
// ============ ZWaveDevice ============
+
// ============ ZWaveDevice ============ // Basic functionality for all ZWave devices  
// Basic functionality for all ZWave devices
+
  
 
   #define ZWDEVICE_FILE      "S_ZWaveDevice1.xml"
 
   #define ZWDEVICE_FILE      "S_ZWaveDevice1.xml"
  #define ZWDEVICE_SID      "urn:micasaverde-com:serviceId:ZWaveDevice1"
+
#define ZWDEVICE_SID      "urn:micasaverde-com:serviceId:ZWaveDevice1"
  #define ZWDEVICE_STYPE      "urn:schemas-micasaverde-com:service:ZWaveDevice:1"
+
#define ZWDEVICE_STYPE      "urn:schemas-micasaverde-com:service:ZWaveDevice:1"
 +
 
 +
// Variables
  
// Variables
 
 
   #define ZWD_POLL_SETTINGS    "PollSettings"  // DEVICEDATA_Polling_Settings_CONST
 
   #define ZWD_POLL_SETTINGS    "PollSettings"  // DEVICEDATA_Polling_Settings_CONST
  #define ZWD_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
+
#define ZWD_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
  #define ZWD_MULTCH_CAPABIL    "MultiChCapabilities"  // DEVICEDATA_Multi_Channel_Capabilities_CONST
+
#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]
+
// ZWD_MULTCH_ENDPOINT string m_sMultiChannelList, // If m_cProtocolVersion&gt;=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
+
// 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
+
                    // If m_cProtocolVersion<2, command class, # of instances \n repeat command class
+
  
  #define ZWD_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
+
                  // If m_cProtocolVersion&lt;2 (multi instance), then the total number of instances
  #define ZWD_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
+
  #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        "Scenes"  // DEVICEDATA_Scenes_CONST
+
  #define ZWD_SCENES_TIMESTAMPS  "ScenesTimestamp"  // DEVICEDATA_Scenes_CONST
+
  #define ZWD_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
+
  #define ZWD_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
+
  #define ZWD_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
+
  #define ZWD_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
+
  #define ZWD_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
+
  #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_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
+
  #define ZWD_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
+
  #define ZWD_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
+
  
 +
// ZWD_MULTCH_CAPABIL m_sMultiChannelCapability; // m_cProtocolVersion&gt;=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
  
// ============ InsteonNetwork ============
+
                    // If m_cProtocolVersion&lt;2, command class, # of instances \n repeat command class
// Basic functionality for all Insteon devices
+
 
 +
  #define ZWD_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
 +
#define ZWD_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
 +
#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        "Scenes"  // DEVICEDATA_Scenes_CONST
 +
#define ZWD_SCENES_TIMESTAMPS  "ScenesTimestamp"  // DEVICEDATA_Scenes_CONST
 +
#define ZWD_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
 +
#define ZWD_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
 +
#define ZWD_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
 +
#define ZWD_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
 +
#define ZWD_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
 +
#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_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
 +
#define ZWD_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
 +
#define ZWD_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
 +
 
 +
<br> // ============ InsteonNetwork ============ // Basic functionality for all Insteon devices  
  
 
   #define INN_FILE        "S_InsteonNetwork1.xml"
 
   #define INN_FILE        "S_InsteonNetwork1.xml"
  #define INN_SID          "urn:micasaverde-com:serviceId:InsteonNetwork1"
+
#define INN_SID          "urn:micasaverde-com:serviceId:InsteonNetwork1"
  #define INN_STYPE        "urn:schemas-micasaverde-org:service:InsteonNetwork:1"
+
#define INN_STYPE        "urn:schemas-micasaverde-org:service:InsteonNetwork:1"
  
 
   #define INN_RESET_NETWORK    "ResetNetwork"
 
   #define INN_RESET_NETWORK    "ResetNetwork"
  #define INN_REMOVE_NODES    "RemoveNodes"
+
#define INN_REMOVE_NODES    "RemoveNodes"
  #define INN_ADD_NODES      "AddNodes"
+
#define INN_ADD_NODES      "AddNodes"
  #define INN_SEND_DATA      "SendData"
+
#define INN_SEND_DATA      "SendData"
 +
 
 +
// Variables
  
// Variables
 
 
   #define INN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
 
   #define INN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
  #define INN_LAST_ERROR      "LastError"
+
#define INN_LAST_ERROR      "LastError"
  #define INN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
+
#define INN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
  #define INN_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
+
#define INN_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
  #define INN_NET_STATUS_ID    "NetStatusID"   
+
#define INN_NET_STATUS_ID    "NetStatusID"   
  #define INN_NET_STATUS_TEXT    "NetStatusText"   
+
#define INN_NET_STATUS_TEXT    "NetStatusText"   
  #define INN_POLL_ENABLED    "PollingEnabled"
+
#define INN_POLL_ENABLED    "PollingEnabled"
  #define INN_POLL_DELAY_INITIAL  "PollDelayInitial"
+
#define INN_POLL_DELAY_INITIAL  "PollDelayInitial"
  #define INN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
+
#define INN_POLL_DELAY_DEADTIME  "PollDelayDeadTime"
  #define INN_POLL_MINDELAY    "PollMinDelay"
+
#define INN_POLL_MINDELAY    "PollMinDelay"
  #define INN_POLL_FREQUENCY    "PollFrequency"
+
#define INN_POLL_FREQUENCY    "PollFrequency"
  #define INN_NODE_ID        "NodeID"  // The dongle's id
+
#define INN_NODE_ID        "NodeID"  // The dongle's id
  
 
   /*
 
   /*
  #define INN_VERSION_INFO    "VersionInfo"
+
#define INN_VERSION_INFO    "VersionInfo"
  #define INN_HOME_ID        "HomeID"
+
#define INN_HOME_ID        "HomeID"
  #define INN_ROLE        "Role"
+
#define INN_ROLE        "Role"
  #define INN_RESET_MODE      "ResetMode"
+
#define INN_RESET_MODE      "ResetMode"
  #define INN_INCLUSION_MODE    "InclusionMode"
+
#define INN_INCLUSION_MODE    "InclusionMode"
  #define INN_NODETYPE      "NodeType"
+
#define INN_NODETYPE      "NodeType"
  #define INN_TIMEOUT        "Timeout"
+
#define INN_TIMEOUT        "Timeout"
  #define INN_MULTIPLE      "Multiple"
+
#define INN_MULTIPLE      "Multiple"
  #define INN_SIMULATE_INCOMING  "SimulateIncomingData"
+
#define INN_SIMULATE_INCOMING  "SimulateIncomingData"
  */
+
*/
  
// ============ InsteonDevice ============
+
// ============ InsteonDevice ============ // Basic functionality for all Insteon devices  
// Basic functionality for all Insteon devices
+
  
 
   #define INDEVICE_FILE      "S_InsteonDevice1.xml"
 
   #define INDEVICE_FILE      "S_InsteonDevice1.xml"
  #define INDEVICE_SID      "urn:micasaverde-com:serviceId:InsteonDevice1"
+
#define INDEVICE_SID      "urn:micasaverde-com:serviceId:InsteonDevice1"
  #define INDEVICE_STYPE      "urn:schemas-micasaverde-com:service:InsteonDevice:1"
+
#define INDEVICE_STYPE      "urn:schemas-micasaverde-com:service:InsteonDevice:1"
 +
 
 +
// Variables
  
// Variables
 
 
   #define IND_POLL_SETTINGS    "PollSettings"  // DEVICEDATA_Polling_Settings_CONST
 
   #define IND_POLL_SETTINGS    "PollSettings"  // DEVICEDATA_Polling_Settings_CONST
  #define IND_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
+
#define IND_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
  #define IND_MULTCH_CAPABIL    "MultiChCapabilities"  // DEVICEDATA_Multi_Channel_Capabilities_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]
+
// IND_MULTCH_ENDPOINT string m_sMultiChannelList, // If m_cProtocolVersion&gt;=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&lt;2 (multi instance), then the total number of instances
                     // If m_cProtocolVersion<2, command class, # of instances \n repeat command class
+
 
 +
// IND_MULTCH_CAPABIL m_sMultiChannelCapability; // m_cProtocolVersion&gt;=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&lt;2, command class, # of instances \n repeat command class
  
 
   #define IND_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
 
   #define IND_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
  #define IND_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
+
#define IND_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
  #define IND_CONFIG        "Configuration"  // DEVICEDATA_Configuration_CONST
+
#define IND_CONFIG        "Configuration"  // DEVICEDATA_Configuration_CONST
  #define IND_LAST_RESET      "LastReset"  // DEVICEDATA_Last_Reset_CONST
+
#define IND_LAST_RESET      "LastReset"  // DEVICEDATA_Last_Reset_CONST
  #define IND_SCENES_AS_EVENTS  "ScenesAsEvents"  // DEVICEDATA_Scenes_As_Events_CONST
+
#define IND_SCENES_AS_EVENTS  "ScenesAsEvents"  // DEVICEDATA_Scenes_As_Events_CONST
  #define IND_SCENES        "Scenes"  // DEVICEDATA_Scenes_CONST
+
#define IND_SCENES        "Scenes"  // DEVICEDATA_Scenes_CONST
  #define IND_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
+
#define IND_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
  #define IND_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
+
#define IND_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
  #define IND_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
+
#define IND_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
  #define IND_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
+
#define IND_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
  #define IND_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
+
#define IND_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
  #define IND_VARIABLES_GET    "VariablesGet"  // DEVICEDATA_Variables_Get_CONST
+
#define IND_VARIABLES_GET    "VariablesGet"  // DEVICEDATA_Variables_Get_CONST
  #define IND_VARIABLES_SET    "VariablesSet"  // DEVICEDATA_Variables_Set_CONST
+
#define IND_VARIABLES_SET    "VariablesSet"  // DEVICEDATA_Variables_Set_CONST
  #define IND_ASSOCIATION_GET    "AssociationGet"  // DEVICEDATA_Association_Get_CONST
+
#define IND_ASSOCIATION_GET    "AssociationGet"  // DEVICEDATA_Association_Get_CONST
  #define IND_ASSOCIATION_SET    "AssociationSet"  // DEVICEDATA_Association_Set_CONST
+
#define IND_ASSOCIATION_SET    "AssociationSet"  // DEVICEDATA_Association_Set_CONST
  #define IND_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
+
#define IND_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
  #define IND_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
+
#define IND_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
  #define IND_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
+
#define IND_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST
  
// ============ USB UIRT ============
+
// ============ USB UIRT ============ // Basic functionality for USB UIRT  
// Basic functionality for USB UIRT
+
  
 
   #define UIRT_FILE      "S_USBUIRT.xml"
 
   #define UIRT_FILE      "S_USBUIRT.xml"
  #define UIRT_SID      "urn:micasaverde-com:serviceId:USBUIRT1"
+
#define UIRT_SID      "urn:micasaverde-com:serviceId:USBUIRT1"
  #define UIRT_TYPE      "urn:schemas-micasaverde-com:service:USBUIRT:1"
+
#define UIRT_TYPE      "urn:schemas-micasaverde-com:service:USBUIRT:1"
  
// Variables
+
// Variables  
 +
 
 +
// Actions
  
// Actions
 
 
   #define UIRT_COM_PORT    "ComPort"
 
   #define UIRT_COM_PORT    "ComPort"
  
// ============ Camera ============
+
// ============ Camera ============ // Basic functionality for all Cameras  
// Basic functionality for all Cameras
+
  
 
   #define CAMDEVICE_FILE      "S_Camera1.xml"
 
   #define CAMDEVICE_FILE      "S_Camera1.xml"
  #define CAMDEVICE_SID      "urn:micasaverde-com:serviceId:Camera1"
+
#define CAMDEVICE_SID      "urn:micasaverde-com:serviceId:Camera1"
  #define CAMDEVICE_STYPE      "urn:schemas-micasaverde-com:service:Camera:1"
+
#define CAMDEVICE_STYPE      "urn:schemas-micasaverde-com:service:Camera:1"
 +
 
 +
// Variables
  
// Variables
 
 
   #define CAM_USERNAME      "Username"  // DEVICEDATA_AuthUser_CONST
 
   #define CAM_USERNAME      "Username"  // DEVICEDATA_AuthUser_CONST
  #define CAM_PASSWORD      "Password"  // DEVICEDATA_AuthPassword_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_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_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_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.
+
#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
+
                      // S=When the sensor(s) above are tripped and they are armed
                        // B=When the sensors above are tripped and they are *not* armed
+
                      // B=When the sensors above are tripped and they are *not* armed
                        // A=When you take an automatic picture for the archive
+
                      // A=When you take an automatic picture for the archive
                        // So: VSBA means do them all
+
                      // 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_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_AUTO_PRES_DAYS    "AutoArchivePreserveDays"  // and keep the pictures x days
  #define CAM_URL          "URL"  // DEVICEDATA_Path_CONST
+
#define CAM_URL          "URL"  // DEVICEDATA_Path_CONST
  
// ============ PanTiltZoom ============
+
// ============ PanTiltZoom ============ // For Cameras  
// For Cameras
+
  
 
   #define PTZ_FILE        "S_PanTiltZoom1.xml"
 
   #define PTZ_FILE        "S_PanTiltZoom1.xml"
  #define PTZ_SID          "urn:micasaverde-com:serviceId:PanTiltZoom1"
+
#define PTZ_SID          "urn:micasaverde-com:serviceId:PanTiltZoom1"
  #define PTZ_STYPE        "urn:schemas-micasaverde-com:service:PanTiltZoom:1"
+
#define PTZ_STYPE        "urn:schemas-micasaverde-com:service:PanTiltZoom:1"
 +
 
 +
// Actions
  
// Actions
 
 
   #define PTZ_LEFT        "MoveLeft"
 
   #define PTZ_LEFT        "MoveLeft"
  #define PTZ_RIGHT        "MoveRight"
+
#define PTZ_RIGHT        "MoveRight"
  #define PTZ_UP          "MoveUp"
+
#define PTZ_UP          "MoveUp"
  #define PTZ_DOWN        "MoveDown"
+
#define PTZ_DOWN        "MoveDown"
  #define PTZ_IN          "ZoomIn"
+
#define PTZ_IN          "ZoomIn"
  #define PTZ_OUT          "ZoomOut"
+
#define PTZ_OUT          "ZoomOut"
 +
 
 +
// ============ SwitchPower1 ============
  
// ============  SwitchPower1  ============
 
 
   #define SWP_SID        "urn:upnp-org:serviceId:SwitchPower1"
 
   #define SWP_SID        "urn:upnp-org:serviceId:SwitchPower1"
  
// Actions
+
// Actions  
 +
 
 
   #define SWP_SET_TARGET    "SetTarget"  
 
   #define SWP_SET_TARGET    "SetTarget"  
  
// Variables
+
// Variables  
 +
 
 
   #define SWP_STATUS      "Status"  
 
   #define SWP_STATUS      "Status"  
  #define SWP_TARGET      "Target"  
+
#define SWP_TARGET      "Target"  
 +
 
 +
// ============ S_WindowCovering1 ============
  
// ============  S_WindowCovering1  ============
 
 
   #define WC_SID        "urn:upnp-org:serviceId:WindowCovering1"
 
   #define WC_SID        "urn:upnp-org:serviceId:WindowCovering1"
  
// Actions
+
// Actions  
 +
 
 
   #define WC_UP        "Up"  
 
   #define WC_UP        "Up"  
  #define WC_DOWN        "Down"  
+
#define WC_DOWN        "Down"  
  #define WC_STOP        "Stop"  
+
#define WC_STOP        "Stop"  
  
// Variables
+
// Variables  
 +
 
 +
// ============ Dimming1 ============
  
// ============  Dimming1  ============
 
 
   #define SWD_SID          "urn:upnp-org:serviceId:Dimming1"
 
   #define SWD_SID          "urn:upnp-org:serviceId:Dimming1"
  
// Actions
+
// Actions  
 +
 
 
   #define SWD_SET_LOAD_LEVEL    "SetLoadLevelTarget"  
 
   #define SWD_SET_LOAD_LEVEL    "SetLoadLevelTarget"  
  
// Variables
+
// Variables  
 +
 
 
   #define SWD_LOAD_LEVEL_STATUS  "LoadLevelStatus"  
 
   #define SWD_LOAD_LEVEL_STATUS  "LoadLevelStatus"  
  #define SWD_LOAD_LEVEL_TARGET  "LoadLevelTarget"
+
#define SWD_LOAD_LEVEL_TARGET  "LoadLevelTarget"
 +
 
 +
// ============ DoorLock1 ============
  
// ============  DoorLock1  ============
 
 
   #define DL_SID        "urn:micasaverde-com:serviceId:DoorLock1"
 
   #define DL_SID        "urn:micasaverde-com:serviceId:DoorLock1"
  
// Actions
+
// Actions  
 +
 
 
   #define DL_SET_TARGET    "SetTarget"
 
   #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"
 +
 
 +
// Variables
  
// Variables
 
 
   #define DL_STATUS      "Status"  
 
   #define DL_STATUS      "Status"  
  #define DL_TARGET      "Target"  
+
#define DL_TARGET      "Target"  
  #define DL_SL_USER_CODE    "sl_UserCode"
+
#define DL_SL_USER_CODE    "sl_UserCode"
  #define DL_SL_PIN_FAILED  "sl_PinFailed"
+
#define DL_SL_PIN_FAILED  "sl_PinFailed"
 +
 
 +
// Syntax: CodeID, Pin Code (only if start date is not empty), start date, stop date, Name \t
  
// 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
  
// ============ HVAC_UserOperatingMode1 ============
+
// ============ HVAC_UserOperatingMode1 ============  
 +
 
 
   #define HVACO_SID      "urn:upnp-org:serviceId:HVAC_UserOperatingMode1"
 
   #define HVACO_SID      "urn:upnp-org:serviceId:HVAC_UserOperatingMode1"
  
// Actions
+
// Actions  
 +
 
 
   #define HVACO_SET_MODE    "SetModeTarget"   
 
   #define HVACO_SET_MODE    "SetModeTarget"   
  
// Variables
+
// Variables  
 +
 
 
   #define HVACO_STATUS    "ModeStatus"   
 
   #define HVACO_STATUS    "ModeStatus"   
  
// ============ HVAC_FanOperatingMode1 ============
+
// ============ HVAC_FanOperatingMode1 ============  
 +
 
 
   #define HVACF_SID      "urn:upnp-org:serviceId:HVAC_FanOperatingMode1"
 
   #define HVACF_SID      "urn:upnp-org:serviceId:HVAC_FanOperatingMode1"
  
// Actions
+
// Actions  
 +
 
 
   #define HVACF_SET_MODE    "SetMode"   
 
   #define HVACF_SET_MODE    "SetMode"   
  
// Variables
+
// Variables  
 +
 
 
   #define HVACF_STATUS    "ModeStatus"   
 
   #define HVACF_STATUS    "ModeStatus"   
  
 +
<br> // ============ TemperatureSetpoint1_Heat/Cool ============
  
// ============  TemperatureSetpoint1_Heat/Cool  ============
 
 
   #define HVACHEAT_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Heat"
 
   #define HVACHEAT_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Heat"
  #define HVACCOOL_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Cool"
+
#define HVACCOOL_SID    "urn:upnp-org:serviceId:TemperatureSetpoint1_Cool"
 +
 
 +
// Variables
  
// Variables
 
 
   #define HVACHC_SETPOINT    "SetCurrentSetpoint"   
 
   #define HVACHC_SETPOINT    "SetCurrentSetpoint"   
  
// Variables
+
// Variables  
 +
 
 
   #define HVACHC_CURRENTSP    "CurrentSetpoint"   
 
   #define HVACHC_CURRENTSP    "CurrentSetpoint"   
  
// ============ TemperatureSensor1 ============
+
// ============ TemperatureSensor1 ============  
 +
 
 
   #define TEMP_SID    "urn:upnp-org:serviceId:TemperatureSensor1"
 
   #define TEMP_SID    "urn:upnp-org:serviceId:TemperatureSensor1"
  
// Variables
+
// Variables  
 +
 
 
   #define TEMP_CURRENT  "CurrentTemperature"
 
   #define TEMP_CURRENT  "CurrentTemperature"
  
// ============ LightSensor1 ============
+
// ============ LightSensor1 ============  
 +
 
 
   #define LIGHT_SID    "urn:micasaverde-com:serviceId:LightSensor1"
 
   #define LIGHT_SID    "urn:micasaverde-com:serviceId:LightSensor1"
  
// Variables
+
// Variables  
 +
 
 
   #define LIGHT_CURRENT  "CurrentLevel"
 
   #define LIGHT_CURRENT  "CurrentLevel"
  
// ============ HumiditySensor1 ============
+
// ============ HumiditySensor1 ============  
 +
 
 
   #define HUM_SID    "urn:micasaverde-com:serviceId:HumiditySensor1"
 
   #define HUM_SID    "urn:micasaverde-com:serviceId:HumiditySensor1"
  
// Variables
+
// Variables  
 +
 
 
   #define HUM_CURRENT  "CurrentLevel"
 
   #define HUM_CURRENT  "CurrentLevel"
  
// ============ SecuritySensor1 ============
+
// ============ SecuritySensor1 ============  
 +
 
 
   #define SES_SID    "urn:micasaverde-com:serviceId:SecuritySensor1"
 
   #define SES_SID    "urn:micasaverde-com:serviceId:SecuritySensor1"
  
// Variables
+
// Variables  
 +
 
 
   #define SES_ARMED  "Armed"
 
   #define SES_ARMED  "Armed"
  #define SES_TRIPPED  "Tripped"
+
#define SES_TRIPPED  "Tripped"
 +
 
 +
// Action
  
// Action
 
 
   #define SES_SET_ARMED  "SetArmed"
 
   #define SES_SET_ARMED  "SetArmed"
  
// ============ EnergyMetering1 ============
+
// ============ EnergyMetering1 ============  
 +
 
 
   #define ENE_SID    "urn:micasaverde-com:serviceId:EnergyMetering1"
 
   #define ENE_SID    "urn:micasaverde-com:serviceId:EnergyMetering1"
  
// Variables
+
// Variables  
 +
 
 
   #define ENE_KWH        "KWH"
 
   #define ENE_KWH        "KWH"
  #define ENE_WATT      "Watt"
+
#define ENE_WATT      "Watt"
  #define ENE_ACTUAL      "ActualUsage"
+
#define ENE_ACTUAL      "ActualUsage"
  #define ENE_USER_SUPPLIED  "UserSuppliedWattage"
+
#define ENE_USER_SUPPLIED  "UserSuppliedWattage"
 +
 
 +
// ============ IrTransmitter1 ============
  
// ============  IrTransmitter1  ============
 
 
   #define IRT_SID    "urn:micasaverde-com:serviceId:IrTransmitter1"
 
   #define IRT_SID    "urn:micasaverde-com:serviceId:IrTransmitter1"
  
// Variables
+
// Variables  
 +
 
 
   #define IRT_SENDPRONTO  "SendProntoCode"
 
   #define IRT_SENDPRONTO  "SendProntoCode"
  
 +
<br> // ============ SerialPort1 ============
  
// ============  SerialPort1  ============
 
 
   #define SPT_SID    "urn:micasaverde-org:serviceId:SerialPort1"
 
   #define SPT_SID    "urn:micasaverde-org:serviceId:SerialPort1"
  
// Variables
+
// Variables  
 +
 
 
   #define SPT_BAUD  "baud"
 
   #define SPT_BAUD  "baud"
  
// ============ SceneController1 ============
+
// ============ SceneController1 ============  
 +
 
 
   #define SCR_SID          "urn:micasaverde-com:serviceId:SceneController1"
 
   #define SCR_SID          "urn:micasaverde-com:serviceId:SceneController1"
  
// Variables
+
// Variables  
 +
 
 
   #define SCR_SL_SCENE_ACTIVATED    "sl_SceneActivated"
 
   #define SCR_SL_SCENE_ACTIVATED    "sl_SceneActivated"
  #define SCR_SL_SCENE_DEACTIVATED  "sl_SceneDeactivated"
+
#define SCR_SL_SCENE_DEACTIVATED  "sl_SceneDeactivated"
 +
 
 +
// ============ GenericIO ============
  
// ============  GenericIO  ============
 
 
   #define GIO_SID          "urn:micasaverde-com:serviceId:GenericIO"
 
   #define GIO_SID          "urn:micasaverde-com:serviceId:GenericIO"
  
// Variables
+
// Variables  
 +
 
 
   #define GIO_IS_INPUT      "IsInput"  // DEVICEDATA_InputOrOutput_CONST, 1 if it's input
 
   #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
+
#define GIO_DEFAULT_STATE    "DefaultState"// DEVICEDATA_Default_State_CONST, 0 is 'normal', 1 if it's reversed
  
 
#endif
 
#endif
 +
 +
[[Category:Development]]

Revision as of 16:47, 30 August 2011

The following is the contents of the file "Constant.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

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_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_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_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:TemperatureLeakSensor:1"

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

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"


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_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_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_AV_SCENE             "D_Scene1.xml"


Device Categories

#define DEVICE_CATEGORY_INTERFACE       1
#define DEVICE_CATEGORY_DIMMABLE_LIGHT  2
#define DEVICE_CATEGORY_SWITCH          3
#define DEVICE_CATEGORY_SECURITY_SENSOR 4
#define DEVICE_CATEGORY_HVAC            5
#define DEVICE_CATEGORY_CAMERA          6
#define DEVICE_CATEGORY_DOOR_LOCK       7
#define DEVICE_CATEGORY_WINDOW_COV      8
#define DEVICE_CATEGORY_REMOTE_CONTROL  9
#define DEVICE_CATEGORY_IR_TX           10
#define DEVICE_CATEGORY_GENERIC_IO      11
#define DEVICE_CATEGORY_GENERIC_SENSOR  12
#define DEVICE_CATEGORY_SERIAL_PORT     13
#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_SENSOR    18
#define DEVICE_CATEGORY_ZWAVE_INT       19
#define DEVICE_CATEGORY_INSTEON_INT     20
#define DEVICE_CATEGORY_POWER_METER     21

#define DEVICE_CATEGORY_MAX             21


Device Sub-Categories

#define DEVICE_SUBCATEGORY_NONE         0

Security

#define DEVICE_SUBCATEGORY_DOOR         1
#define DEVICE_SUBCATEGORY_LEAK         2
#define DEVICE_SUBCATEGORY_MOTION       3
#define DEVICE_SUBCATEGORY_SMOKE        4

IR

#define DEVICE_SUBCATEGORY_IRT          1
#define DEVICE_SUBCATEGORY_USBUIRT      2



// Cast the second one between int and char * so we can use a simple // 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

// 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 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)

// These are stored in the json file for the device itself and not part of the UPNP variables:

 /*
  Device_Num
  FK_DevType
  Device_Num_Parent
  FK_Device_Category
  Room_Num
   Description
  InternalID // DEVICEDATA_PortChannel_Number_CONST
  Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST
  Model    // DEVICEDATA_Model_Desc_CONST
  IPAddress
  MacAddress
  UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST
*/

// ============ 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"

// Variables

 #define HAG_ACTIVE_SCENES    "ActiveScenes"
 /*
#define HAG_ENERGY_DOW      "EnergyDOW"
#define HAG_ENERGY_TIME_OF_DAY  "GetUserData"
#define HAG_NUM_LIGHTS      "GetUserData"
#define HAG_THERMOSTAT_ON    "GetUserData"
#define HAG_ENERGY_DOW      "GetUserData"
*/

// 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_PROCESS_CHILD    "ProcessChildDevices" 
#define HAG_RELOAD        "Reload" 
#define HAG_RUN_SCENE      "RunScene"
#define HAG_RUN_LUA        "RunLua"


// ============ 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"

// Variables

 #define HAD_ENERGY_LOG      "EnergyLog"  // DEVICEDATA_Energy_Log_CONST
#define HAD_WATTS        "Watts"    // DEVICEDATA_Wattage_CONST
#define HAD_IOPORT_DEVICE    "IODevice"  // The device number to connect to for IO (this is on the master device)
#define HAD_IOPORT_PORT      "IOPort"  // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial 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_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
 #define HAD_RECONFIGURE      "Reconfigure"
#define HAD_REMOVE        "Remove"
#define HAD_POLL        "Poll"
#define HAD_SET_POLL_FREQUENCY  "SetPollFrequency"
#define HAD_STRESS_TEST      "StressTest"

// ============ 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_REMOVE_NODES    "RemoveNodes"
#define ZWN_ADD_NODES      "AddNodes"
#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

 #define ZWN_LAST_UPDATE      "LastUpdate"  // DEVICEDATA_LastUpdate_CONST
#define ZWN_LAST_DONGLE_BACKUP  "LastDongleBackup"
#define ZWN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
#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_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 ============ // 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"

// Variables

 #define ZWD_POLL_SETTINGS    "PollSettings"  // DEVICEDATA_Polling_Settings_CONST
#define ZWD_MULTCH_ENDPOINT    "MultiChEndpoint"  // DEVICEDATA_Multi_Channel_End_Point_CONST
#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]

                 // If m_cProtocolVersion<2 (multi instance), then the total number of instances

// 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

                   // If m_cProtocolVersion<2, command class, # of instances \n repeat command class
 #define ZWD_NEIGHBORS      "Neighbors"  // DEVICEDATA_Neighbors_to_Call_CONST
#define ZWD_CAPABILITIES    "Capabilities"  // DEVICEDATA_Capabilities_CONST
#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        "Scenes"  // DEVICEDATA_Scenes_CONST
#define ZWD_SCENES_TIMESTAMPS  "ScenesTimestamp"  // DEVICEDATA_Scenes_CONST
#define ZWD_WAKEUP_INTERVAL    "WakeupInterval"  // DEVICEDATA_Wakeup_Interval_CONST
#define ZWD_BATTERY_LEVEL    "BatteryLevel"  // DEVICEDATA_Battery_Level_CONST
#define ZWD_BATTERY_ALARM    "BatteryAlarm"  // DEVICEDATA_Battery_Alarm_CONST
#define ZWD_LAST_WAKEUP      "LastWakeup"  // DEVICEDATA_Last_Wakeup_CONST
#define ZWD_LAST_ROUTE_UPD    "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
#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_MANUF_INFO      "ManufacturerInfo"  // DEVICEDATA_Model_CONST
#define ZWD_VERSION_INFO    "VersionInfo"  // DEVICEDATA_Configuration_CONST
#define ZWD_UPDATED_NAME    "UpdatedName"  // DEVICEDATA_Update_Name_CONST


// ============ 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"
 #define INN_RESET_NETWORK    "ResetNetwork"
#define INN_REMOVE_NODES    "RemoveNodes"
#define INN_ADD_NODES      "AddNodes"
#define INN_SEND_DATA      "SendData"

// Variables

 #define INN_COM_PORT      "ComPort"  // DEVICEDATA_COM_Port_on_PC_CONST
#define INN_LAST_ERROR      "LastError"
#define INN_AUTO_CONFIGURE    "AutoConfigure"  // DEVICEDATA_Auto_Configure_CONST
#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_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 ============ // 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"

// 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

// 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
#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_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 ============ // 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"

// Variables

// Actions

 #define UIRT_COM_PORT    "ComPort"

// ============ 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"

// 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

// ============ 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"

// 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"

// ============ SwitchPower1 ============

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

// Actions

 #define SWP_SET_TARGET    "SetTarget" 

// Variables

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

// ============ S_WindowCovering1 ============

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

// Actions

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

// Variables

// ============ Dimming1 ============

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

// Actions

 #define SWD_SET_LOAD_LEVEL    "SetLoadLevelTarget" 

// Variables

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

// ============ DoorLock1 ============

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

// Actions

 #define DL_SET_TARGET    "SetTarget"
#define DL_SET_PIN      "SetPin"
#define DL_CLEAR_PIN    "ClearPin"

// Variables

 #define DL_STATUS      "Status" 
#define DL_TARGET      "Target" 
#define DL_SL_USER_CODE    "sl_UserCode"
#define DL_SL_PIN_FAILED  "sl_PinFailed"

// 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

// ============ HVAC_UserOperatingMode1 ============

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

// Actions

 #define HVACO_SET_MODE    "SetModeTarget"  

// Variables

 #define HVACO_STATUS    "ModeStatus"  

// ============ HVAC_FanOperatingMode1 ============

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

// Actions

 #define HVACF_SET_MODE    "SetMode"  

// Variables

 #define HVACF_STATUS    "ModeStatus"  


// ============ TemperatureSetpoint1_Heat/Cool ============

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

// Variables

 #define HVACHC_SETPOINT    "SetCurrentSetpoint"  

// Variables

 #define HVACHC_CURRENTSP    "CurrentSetpoint"  

// ============ TemperatureSensor1 ============

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

// Variables

 #define TEMP_CURRENT  "CurrentTemperature"

// ============ LightSensor1 ============

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

// Variables

 #define LIGHT_CURRENT  "CurrentLevel"

// ============ HumiditySensor1 ============

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

// Variables

 #define HUM_CURRENT  "CurrentLevel"

// ============ SecuritySensor1 ============

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

// Variables

 #define SES_ARMED  "Armed"
#define SES_TRIPPED  "Tripped"

// Action

 #define SES_SET_ARMED  "SetArmed"

// ============ EnergyMetering1 ============

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

// Variables

 #define ENE_KWH        "KWH"
#define ENE_WATT      "Watt"
#define ENE_ACTUAL      "ActualUsage"
#define ENE_USER_SUPPLIED  "UserSuppliedWattage"

// ============ IrTransmitter1 ============

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

// Variables

 #define IRT_SENDPRONTO  "SendProntoCode"


// ============ SerialPort1 ============

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

// Variables

 #define SPT_BAUD  "baud"

// ============ SceneController1 ============

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

// Variables

 #define SCR_SL_SCENE_ACTIVATED    "sl_SceneActivated"
#define SCR_SL_SCENE_DEACTIVATED  "sl_SceneDeactivated"

// ============ GenericIO ============

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

// 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
  1. endif
Personal tools