Luup UPNP Files
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_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"
// 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_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_DimmableLight1.xml"
- define DEVICEFILE_GENERIC_IO "D_BinaryLight1.xml"
- define DEVICEFILE_REMOTE_CONTROL "D_BinaryLight1.xml"
- define DEVICEFILE_COMBO_DEVICE "D_BinaryLight1.xml"
- define DEVICEFILE_CAMERA "D_DigitalSecurityCamera1.xml"
- define DEVICEFILE_SCENE_CONTROLLER "D_DoorLock1.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
// 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
// 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
// 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_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"
- 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_RECONFIGURE "Reconfigure"
- define HAD_REMOVE "Remove"
- define HAD_POLL "Poll"
- define HAD_SET_POLL_FREQUENCY "SetPollFrequency"
// ============ 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"
// Variables
- define ZWN_LAST_UPDATE "LastUpdate" // DEVICEDATA_LastUpdate_CONST
- 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"
// ============ 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_LAST_UPDATE "LastUpdate" // DEVICEDATA_LastUpdate_CONST
- define ZWD_AUTO_CONFIGURE "AutoConfigure" // DEVICEDATA_Auto_Configure_CONST
- define ZWD_POLL_SETTINGS "PollSettings" // DEVICEDATA_Polling_Settings_CONST
- define ZWD_REVERSE "ReverseOnOff" // DEVICEDATA_Reverse_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_WAKEUP_INTERVAL "WakeupInterval" // DEVICEDATA_Wakeup_Interval_CONST
- define ZWD_PIN_CODES "PinCodes" // DEVICEDATA_PIN_Codes_CONST
- define ZWD_BATTERY_LEVEL "BatteryLevel" // DEVICEDATA_Battery_Level_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
// ============ 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_ARCHIVE_SETTINGS "ArchiveSettings" // DEVICEDATA_Video_settings_CONST
- define CAM_RELATED_DEVICES "RelatedDevices" // DEVICEDATA_sDevice_Num_Relations_For_Creat_CONST
- 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"
// ============ 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"
// ============ 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"
// ============ MotionSensor1 ============
- define MOT_SID "urn:micasaverde-com:serviceId:MotionSensor1"
// Variables
- define MOT_ARMED "Armed"
- define MOT_TRIPPED "Tripped"
// ============ 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_BUTTON_PRESSED "sl_SceneButtonPressed"
- endif