Luup UPNP Files

From MiOS
(Difference between revisions)
Jump to: navigation, search
Line 134: Line 134:
  
  
<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
+
== HaGateway ==
 +
Basic functionality for the gateway itself
  
  extern const char *g_DeviceCategories[];
+
<pre>#define HAGEVICE_FILE              "S_HomeAutomationGateway1.xml"
extern const char *g_DeviceDescriptions[];  // Default descriptions
+
#define HAGEVICE_SID                "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
 +
#define HAGEVICE_STYPE              "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"</pre>
  
  #define MINIMUM_TIME   1230811200  // If the time is &lt; this, we'll assume the clock isn't set
+
=== Variables ===
 +
<pre>#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</pre>
  
// 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
+
=== Actions ===
 +
<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_RUN_LUA                "RunLua"
 +
#define HAG_LOG_IP_REQUEST          "LogIpRequest"</pre>
  
  #define TEMPORARY_UPNP_ARGUMENT    "TEMPORARY_UPNP_ARGUMENT"
 
  
  #define SAFE_DEVICE_ID(pDevice_LuaUPnP)  (pDevice_LuaUPnP&nbsp;? pDevice_LuaUPnP-&gt;m_pDevice_Basic_get()-&gt;m_iDevice_Num_get()&nbsp;: 0)
+
== HaDevice ==
 +
Basic functionality for all home automation devices
  
// These are stored in the json file for the device itself and not part of the UPNP variables:  
+
<pre>#define HADEVICE_FILE              "S_HaDevice1.xml"
 +
#define HADEVICE_SID                "urn:micasaverde-com:serviceId:HaDevice1"
 +
#define HADEVICE_STYPE              "urn:schemas-micasaverde-com:service:HaDevice:1"</pre>
  
  /*
+
=== Variables ===
  Device_Num
+
<pre>#define HAD_ENERGY_LOG              "EnergyLog"        // DEVICEDATA_Energy_Log_CONST
  FK_DevType
+
#define HAD_IOPORT_DEVICE          "IODevice"          // The device number to connect to for IO (this is on the master device)
  Device_Num_Parent
+
#define HAD_IOPORT_DEVICE_XREF      "IODeviceXRef"      // On the port, this is the device number that connects to it
  FK_Device_Category
+
#define HAD_IOPORT_MAX_TIME        "MaxTime"          // The maximum time to leave the socket open before closing and re-opening
   Room_Num
+
#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>
  
    Description
+
=== Actions ===
  InternalID // DEVICEDATA_PortChannel_Number_CONST
+
<pre>#define HAD_RECONFIGURE            "Reconfigure"
  Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST
+
#define HAD_REMOVE                  "Remove"
  Model    // DEVICEDATA_Model_Desc_CONST
+
#define HAD_POLL                    "Poll"
  IPAddress
+
#define HAD_SET_POLL_FREQUENCY      "SetPollFrequency"
  MacAddress
+
#define HAD_STRESS_TEST            "StressTest"
  UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST
+
#define HAD_TOGGLE_STATE            "ToggleState"</pre>
*/
+
  
// ============ HaGateway ============ // Basic functionality for the gateway itself
 
  
  #define HAGEVICE_FILE      "S_HomeAutomationGateway1.xml"
+
== ZWaveNetwork ==
#define HAGEVICE_SID      "urn:micasaverde-com:serviceId:HomeAutomationGateway1"
+
Basic functionality for all ZWave devices
#define HAGEVICE_STYPE      "urn:schemas-micasaverde-org:service:HomeAutomationGateway:1"
+
  
// Variables
+
<pre>#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 HAG_ACTIVE_SCENES    "ActiveScenes"
+
#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"</pre>
  
  /*
+
=== Variables ===
  #define HAG_ENERGY_DOW     "EnergyDOW"
+
<pre>#define ZWN_LAST_UPDATE            "LastUpdate"        // DEVICEDATA_LastUpdate_CONST
  #define HAG_ENERGY_TIME_OF_DAY "GetUserData"
+
#define ZWN_LAST_HEAL              "LastHeal"          // DEVICEDATA_LastUpdate_CONST
  #define HAG_NUM_LIGHTS      "GetUserData"
+
#define ZWN_ROUTE_FAILURE          "LastRouteFailure" // DEVICEDATA_LastUpdate_CONST
#define HAG_THERMOSTAT_ON    "GetUserData"
+
#define ZWN_LAST_DONGLE_BACKUP     "LastDongleBackup"
#define HAG_ENERGY_DOW     "GetUserData"
+
#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>
  
// Actions
+
== ZWaveDevice ==
 +
Basic functionality for all ZWave devices
  
  #define HAG_GET_USER_DATA    "GetUserData"
+
<pre>#define ZWDEVICE_FILE              "S_ZWaveDevice1.xml"
#define HAG_MODIFY_USER_DATA  "ModifyUserData"  
+
#define ZWDEVICE_SID                "urn:micasaverde-com:serviceId:ZWaveDevice1"
#define HAG_MODIFY_GET_VARIABLE  "GetVariable"
+
#define ZWDEVICE_STYPE              "urn:schemas-micasaverde-com:service:ZWaveDevice:1"</pre>
#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"
+
  
<br> // ============ HaDevice ============ // Basic functionality for all home automation devices
+
=== Variables ===
 +
<pre>#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 HADEVICE_FILE      "S_HaDevice1.xml"
+
#define ZWD_NEIGHBORS              "Neighbors"         // DEVICEDATA_Neighbors_to_Call_CONST
#define HADEVICE_SID      "urn:micasaverde-com:serviceId:HaDevice1"
+
#define ZWD_NEIGHBORS_INVERSE      "NeighborsInverse"  // Which neighbors see us
#define HADEVICE_STYPE      "urn:schemas-micasaverde-com:service:HaDevice:1"
+
#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
// Variables
+
#define ZWD_CONFIG                  "Configuration"     // DEVICEDATA_Configuration_CONST
 
+
#define ZWD_LAST_RESET              "LastReset"         // DEVICEDATA_Last_Reset_CONST
  #define HAD_ENERGY_LOG      "EnergyLog"  // DEVICEDATA_Energy_Log_CONST
+
#define ZWD_SCENES_AS_EVENTS        "ScenesAsEvents"    // DEVICEDATA_Scenes_As_Events_CONST
#define HAD_WATTS        "Watts"   // DEVICEDATA_Wattage_CONST
+
#define ZWD_SCENES_TIMESTAMPS      "ScenesTimestamp"   // DEVICEDATA_Scenes_CONST
#define HAD_IOPORT_DEVICE    "IODevice" // The device number to connect to for IO (this is on the master device)
+
#define ZWD_WAKEUP_INTERVAL        "WakeupInterval"   // DEVICEDATA_Wakeup_Interval_CONST
#define HAD_IOPORT_PORT      "IOPort" // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)
+
#define ZWD_LAST_WAKEUP            "LastWakeup"        // DEVICEDATA_Last_Wakeup_CONST
#define HAD_IGNORE_ROOM      "IgnoreRoom"   // DEVICEDATA_Room_Not_Required_CONST
+
#define ZWD_LAST_ROUTE_UPD         "LastRouteUpdate"  // DEVICEDATA_Last_Route_Update_CONST
#define HAD_COMM_FAILURE    "CommFailure"
+
#define ZWD_HEALTH                  "Health"           // A rating from 0-5
#define HAD_POLLING_ENABLED   "PollingEnabled"
+
#define ZWD_HEALTH_DATE            "HealthDate"       // The date the rating was assigned
#define HAD_POLL_MIN_DELAY    "PollMinDelay"
+
#define ZWD_VARIABLES_GET          "VariablesGet"      // DEVICEDATA_Variables_Get_CONST
#define HAD_CONFIGURED      "Configured"
+
#define ZWD_VARIABLES_SET          "VariablesSet"     // DEVICEDATA_Variables_Set_CONST
#define HAD_JOBID        "JobID"
+
#define ZWD_ASSOCIATION_GET        "AssociationGet"    // DEVICEDATA_Association_Get_CONST
#define HAD_REVERSE        "ReverseOnOff"  // DEVICEDATA_Reverse_CONST
+
#define ZWD_ASSOCIATION_SET        "AssociationSet"    // DEVICEDATA_Association_Set_CONST
#define HAD_LAST_UPDATE      "LastUpdate" // DEVICEDATA_LastUpdate_CONST
+
#define ZWD_ASSOCIATION_NUM        "AssociationNum"
#define HAD_AUTO_CONFIGURE    "AutoConfigure" // DEVICEDATA_Auto_Configure_CONST
+
#define ZWD_NONCE_ACK              "NonceACK"
 
+
#define ZWD_MANUF_INFO              "ManufacturerInfo"  // DEVICEDATA_Model_CONST
  #define HAD_RECONFIGURE      "Reconfigure"
+
#define ZWD_VERSION_INFO            "VersionInfo"       // DEVICEDATA_Configuration_CONST
#define HAD_REMOVE       "Remove"
+
#define ZWD_SETPOINT_INFO          "SetPointInfo"  
#define HAD_POLL        "Poll"
+
#define ZWD_NODE_INFO              "NodeInfo"         // The Z-Wave node info frame
#define HAD_SET_POLL_FREQUENCY  "SetPollFrequency"
+
#define ZWD_INITIAL_NAME            "InitialName"       // The name that was initially set when the node was first added
#define HAD_STRESS_TEST      "StressTest"
+
#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
// ============ ZWaveNetwork ============ // Basic functionality for all ZWave devices
+
#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 ZWN_FILE        "S_ZWaveNetwork1.xml"
+
#define ZWD_METER_TYPE              "MeterType"
#define ZWN_SID         "urn:micasaverde-com:serviceId:ZWaveNetwork1"
+
#define ZWD_METER_SCALE            "MeterScale"
#define ZWN_STYPE        "urn:schemas-micasaverde-org:service:ZWaveNetwork:1"
+
#define ZWD_ALARM_TYPE              "AlarmType"
 
+
#define ZWD_POLL_OK                "PollOk"
   #define ZWN_RESET_NETWORK    "ResetNetwork"
+
#define ZWD_POLL_TX_FAIL            "PollTxFail"
#define ZWN_REMOVE_NODES    "RemoveNodes"
+
#define ZWD_POLL_NO_REPLY          "PollNoReply"
#define ZWN_ADD_NODES      "AddNodes"
+
#define ZWD_MANUAL_ROUTE            "ManualRoute"       // A route specified by an end-user
#define ZWN_DOWNLOAD      "DownloadNetwork"
+
#define ZWD_ALL_ROUTES_FAILED      "AllRoutesFailed"
#define ZWN_HEAL_NETWORK    "HealNetwork"
+
#define ZWD_AUTO_ROUTE              "AutoRoute"         // A route chosen by profilings</pre>
#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&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&lt;2 (multi instance), then the total number of instances
+
 
+
// 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
+
 
+
                    // If m_cProtocolVersion&lt;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
+
  
 
<br> // ============ InsteonNetwork ============ // Basic functionality for all Insteon devices  
 
<br> // ============ InsteonNetwork ============ // Basic functionality for all Insteon devices  

Revision as of 17:09, 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


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_DATAVERSION_USERDATA    "DataVersionUserData" // The current data version for user_data
#define HAG_DATAVERSION_STATUS      "DataVersionStatus" // The current data version for lu_status

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_RUN_LUA                 "RunLua"
#define HAG_LOG_IP_REQUEST          "LogIpRequest"


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

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"


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"

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

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


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