Luup UPNP Files

From MiOS
(Difference between revisions)
Jump to: navigation, search
m
m
Line 1: Line 1:
[[Category:Develpment]]
+
[[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.
  

Revision as of 21:32, 20 April 2010

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

  • /
#ifndef Constants_h
#define Constants_h

// Device Types

 #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_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_MOTION_SENSOR    "urn:schemas-micasaverde-com:device:MotionSensor: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_SCENE_CONTROLLER    "urn:schemas-micasaverde-com:device:SceneController:1"
 #define DEVICETYPE_ENERGY_CALCULATOR  "urn:schemas-micasaverde-com:device:EnergyCalculator:1"

// IR Device Types

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

 #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      18
 #define DEVICE_CATEGORY_ZWAVE_INT    19
 #define DEVICE_CATEGORY_INSTEON_INT    20

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