com.udi.isy.jsdk
Class ISYClient

java.lang.Object
  extended by com.universaldevices.client.UDClient
      extended by com.udi.isy.jsdk.ISYClient
All Implemented Interfaces:
IModelChangeListener
Direct Known Subclasses:
ISYInsteonClient

public abstract class ISYClient
extends UDClient

This class extends core UDClient funcationality to support all communications and notifications to/from ISY

Author:
UD Architect

Field Summary
 
Fields inherited from interface com.universaldevices.device.model.IModelChangeListener
UD_BATCH_MODE_CHANGED_ACTION, UD_BATTERY_DEVICE_WRITE_MODE_CHANGED_ACTION, UD_CLIENT_HEART_BEAT_EVENT, UD_DEVICE_SPECIFIC_EVENT, UD_DISCOVERING_NODES_ACTION, UD_DISCOVERING_NODES_COMPLETE_ACTION, UD_FOLDER_ADDED_ACTION, UD_FOLDER_REMOVED_ACTION, UD_FOLDER_RENAMED_ACTION, UD_GROUP_ADDED_ACTION, UD_GROUP_REMOVED_ACTION, UD_GROUP_RENAMED_ACTION, UD_INTERNET_ACCESS_DISABLED_ACTION, UD_INTERNET_ACCESS_ENABLED_ACTION, UD_INTERNET_ACCESS_EVENT, UD_INTERNET_ACCESS_FAILED_ACTION, UD_NETWORK_RENAMED_ACTION, UD_NODE_ADDED_ACTION, UD_NODE_CHANGE_LINK_ACTION, UD_NODE_CLEAR_ERROR_ACTION, UD_NODE_DEVICE_ID_CHANGED, UD_NODE_DEVICE_PROPERTY_CHANGED, UD_NODE_ENABLED_ACTION, UD_NODE_HAS_PENDING_DEVICE_WRITES_ACTION, UD_NODE_IN_ERROR_ACTION, UD_NODE_MOVED_ACTION, UD_NODE_PARENT_CHANGED_ACTION, UD_NODE_POWER_INFO_CHANGED_ACTION, UD_NODE_REMOVED_ACTION, UD_NODE_REMOVED_FROM_GROUP_ACTION, UD_NODE_RENAMED_ACTION, UD_NODE_REVISED_ACTION, UD_NODE_WRITING_TO_DEVICE_ACTION, UD_NODES_UPDATED_EVENT, UD_NOTIFICATION_SETTINGS_UPDATED_ACTION, UD_NTP_COMM_FAILED_ACTION, UD_NTP_SETTINGS_UPDATED_ACTION, UD_PROGRESS_EVENT_UPDATE, UD_PROGRESS_UPDATED_EVENT, UD_SYS_CONFIG_UPDATED_EVENT, UD_SYSTEM_BUSY_EVENT, UD_SYSTEM_IS_BUSY_ACTION, UD_SYSTEM_IS_IDLE_ACTION, UD_SYSTEM_IS_IN_SAFE_MODE_ACTION, UD_SYSTEM_IS_NOT_BUSY_ACTION, UD_TIME_CHANGED_ACTION, UD_TIME_CONFIG_CHANGED_ACTION, UD_TRIGGER_EVENT_GET_STATUS, UD_TRIGGER_EVENT_INFO_STRING, UD_TRIGGER_EVENT_KEY_CHANGED, UD_TRIGGER_EVENT_LEARN_IR, UD_TRIGGER_EVENT_SCHEDULE, UD_TRIGGER_EVENT_STATUS, UD_TRIGGER_EVENT_VAR_INIT, UD_TRIGGER_EVENT_VAR_STATUS, UD_TRIGGER_UPDATED_EVENT
 
Constructor Summary
ISYClient()
           
 
Method Summary
 boolean addFolder(java.lang.String address, java.lang.String name)
          Adds a UDFolder to ISY
 boolean addGroup(java.lang.String address, java.lang.String name)
          Adds a UDGroup to ISY
 boolean addNode(java.lang.String newAddress, java.lang.String newName, java.lang.String type, char flag)
          Adds a UDNode to ISY
 boolean cancelNodesDiscovery()
          Cancels UDNode discovery.
 boolean changeGroupState(java.lang.String control, java.lang.String action, java.lang.String group_address)
          Changes the state of a group based on the given parameters
 boolean changeNodeState(java.lang.String control, java.lang.String action, java.lang.String node_address)
          Changes the state of a node based on the given parameters
 boolean disableInternetAccess()
          Disables internet access
 boolean discoverNodes(java.lang.String type)
          Starts UDNode discovery.
 boolean enableInternetAccess()
          Enables internet access
 java.lang.Object getCurrValue(UDNode node, java.lang.String control)
          Returns the current value of a UDControl for a UDNode
 java.lang.String getLog()
           
 boolean getNumPendingNotifications()
          Gets the number of pending notifications (which are queued to be sent out) and stores it in this object.
 com.universaldevices.common.datetime.DateTime getSystemDateTime()
          Returns ISY's system date/time related attributes
 SystemOptions getSystemOptions()
          Retrieves the currently set SystemOptions in ISY (such things as email addresses, number pending, etc.).
 SystemStatus getSystemStatus()
          Returns ISY's system status
 boolean isISYReady()
           
 boolean moveNode(java.lang.String id, java.lang.String gid, char flag)
          Moves a UDNode to a UDGroup
abstract  void onDeviceOffLine()
          This method is invoked when an ISY is no longer reachable (for any reason)
 void onDeviceOffLine(UDProxyDevice device)
          This method is invoked when an ISY is no longer reachable (for any reason)
abstract  void onDeviceOnLine()
          This method is invoked when an ISY is on line (possibly again)
 void onDeviceOnLine(UDProxyDevice device)
          This method is invoked when an ISY is on line (possibly again)
abstract  void onDeviceSpecific(java.lang.String action, java.lang.String node, XMLElement ei)
          Notifies the client of any device specific changes.
 void onDeviceSpecific(UDProxyDevice device, java.lang.String action, java.lang.String node, XMLElement ei)
          Notifies the client of any device specific changes.
abstract  void onDiscoveringNodes()
          This method is invoked when ISY goes into Linking/Discovery mode
 void onDiscoveringNodes(UDProxyDevice device)
          This method is invoked when ISY goes into Linking/Discovery mode
abstract  void onFolderRemoved(java.lang.String folderAddress)
          This method is called when a Folder is removed
 void onFolderRemoved(UDProxyDevice device, java.lang.String folderAddress)
          This method is called when a Folder is removed
abstract  void onFolderRenamed(UDFolder folder)
          This method is called when a Folder is renamed
 void onFolderRenamed(UDProxyDevice device, UDFolder folder)
          This method is called when a Folder is renamed
abstract  void onGroupRemoved(java.lang.String groupAddress)
          This method is invoked when a group/scene is permanently removed from ISY
 void onGroupRemoved(UDProxyDevice device, java.lang.String groupAddress)
          This method is invoked when a group/scene is permanently removed from ISY
abstract  void onGroupRenamed(UDGroup group)
          This method is invoked when a group/scene is renamed
 void onGroupRenamed(UDProxyDevice device, UDGroup group)
          This method is invoked when a group/scene is renamed
abstract  void onInternetAccessDisabled()
          This method is invoked when Internet access is disabled
abstract  void onInternetAccessEnabled(java.lang.String url)
          This method is invoked when Internet access has been enabled
 void onInternetAccessUpdated(UDProxyDevice device, java.lang.String url, java.lang.String action)
          This method is called when the state of internet access has changed
abstract  void onModelChanged(UDControl control, java.lang.Object value, UDNode node)
          This method is invoked when ISY senses a change in the value of any UDControl for any UDNode
 void onModelChanged(UDProxyDevice device, UDControl control, java.lang.Object value, UDNode node)
          This method is invoked when ISY senses a change in the value of any UDControl for any UDNode
abstract  void onNetworkRenamed(java.lang.String newName)
          This method is invoked when the network has been renamed
 void onNetworkRenamed(UDProxyDevice device, java.lang.String newName)
          This method is invoked when the network has been renamed
abstract  void onNewFolder(UDFolder folder)
          This method is called when a new folder is created
 void onNewFolder(UDProxyDevice device, UDFolder newFolder)
          This method is called when a new folder is created
abstract  void onNewGroup(UDGroup new_group)
          This method is invoked when a new group/scene has been created in ISY
 void onNewGroup(UDProxyDevice device, UDGroup new_group)
          This method is invoked when a new group/scene has been created in ISY
abstract  void onNewNode(UDNode node)
          This method is invoked when a new node (representation of a physical device) is added to ISY
 void onNewNode(UDProxyDevice device, UDNode newNode)
          This method is invoked when a new node (representation of a physical device) is added to ISY
abstract  void onNodeDiscoveryStopped()
          This method is invoked when ISY is no longer in Linking/ Discovery mode
 void onNodeDiscoveryStopped(UDProxyDevice device)
          This method is invoked when ISY is no longer in Linking/ Discovery mode
abstract  void onNodeEnabled(UDNode node, boolean b)
          This method is invoked when a node is enabled or disabled
 void onNodeEnabled(UDProxyDevice device, UDNode node, boolean b)
          This method is invoked when a node is enabled or disabled
abstract  void onNodeError(UDNode node)
          This method is invoked when there's an error communicating with the node (or, better said, the physical device which is represented by this node>
 void onNodeError(UDProxyDevice device, UDNode node)
          This method is invoked when there's an error communicating with the node (or, better said, the physical device which is represented by this node>
abstract  void onNodeHasPendingDeviceWrites(UDNode node, boolean hasPending)
          This method is called when the node has pending device writes
 void onNodeHasPendingDeviceWrites(UDProxyDevice device, UDNode node, boolean hasPending)
          This method is called when the node has pending device writes
abstract  void onNodeIsWritingToDevice(UDNode node, boolean isWriting)
          This method is called when the device associated with the node is being programmed (written to)
 void onNodeIsWritingToDevice(UDProxyDevice device, UDNode node, boolean isWriting)
          This method is called when the device associated with the node is being programmed (written to)
 void onNodeMoved(UDProxyDevice device, UDNode node, UDGroup group, char role)
          This method is invoked when a node has been moved to a scene/group
abstract  void onNodeMovedAsMaster(UDNode node, UDGroup group)
          This method is invoked when a node has been moved to a scene/group as a controller/master
abstract  void onNodeMovedAsSlave(UDNode node, UDGroup group)
          This method is invoked when a node has been moved to a scene/group as a responder/slave
abstract  void onNodeParentChanged(UDNode node, UDNode newParent)
          This method is called when the parent of a node has changed
 void onNodeParentChanged(UDProxyDevice device, UDNode node, UDNode newParent)
          This method is called when the parent of a node has changed
abstract  void onNodePowerInfoChanged(UDNode node)
          This method is called when the power information has changed for a node
 void onNodePowerInfoChanged(UDProxyDevice device, UDNode node)
          This method is called when the power information has changed for a node
abstract  void onNodeRemoved(java.lang.String nodeAddress)
          This method is invoked when a UDNode (and any associated physical device thereof) has been permanently removed from ISY
 void onNodeRemoved(UDProxyDevice device, java.lang.String nodeAddress)
          This method is invoked when a UDNode (and any associated physical device thereof) has been permanently removed from ISY
abstract  void onNodeRemovedFromGroup(UDNode node, UDGroup group)
          This method is invoked when UDNode has been removed from a group/scene (UDGroup
 void onNodeRemovedFromGroup(UDProxyDevice device, UDNode node, UDGroup group)
          This method is invoked when UDNode has been removed from a group/scene (UDGroup
abstract  void onNodeRenamed(UDNode node)
          This method is invoked when a UDNode has been renamed
 void onNodeRenamed(UDProxyDevice device, UDNode node)
          This method is invoked when a UDNode has been renamed
abstract  void onNodeToGroupRoleChanged(UDNode node, UDGroup group, char new_role)
          Notifies the client that the node's role for a group changed
 void onNodeToGroupRoleChanged(UDProxyDevice device, UDNode node, UDGroup group, char new_role)
          Notifies the client that the node's role for a group changed
abstract  void onProgress(java.lang.String action, XMLElement ei)
          Notifies the client of the progress of actions currently being taken.
 void onProgress(UDProxyDevice device, java.lang.String action, XMLElement ei)
          Notifies the client of the progress of actions currently being taken.
abstract  void onSystemConfigChanged(java.lang.String event, XMLElement eventInfo)
          Notifies the client that system configurations have change
 void onSystemConfigChanged(UDProxyDevice device, java.lang.String event, XMLElement eventInfo)
          Notifies the client that system configurations have changed
abstract  void onSystemStatus(boolean busy)
          This method is invoked when the state of ISY changes
 void onSystemStatus(UDProxyDevice device, java.lang.String event)
          This method is invoked when the state of ISY changes
abstract  void onTriggerStatus(java.lang.String arg1, XMLElement arg2)
          This method is invoked when the trigger status changes
 void onTriggerStatus(UDProxyDevice device, java.lang.String arg1, XMLElement arg2)
          This method is invoked when the trigger status changes
 boolean queryGroup(java.lang.String address)
          Queries a UDGroup within ISY
 boolean queryNode(java.lang.String address)
          Queries a UDNode within ISY
 boolean reboot()
          Reboots ISY; this method is fully encrypted on the wire for security purposes
 boolean removeeFolder(java.lang.String id)
          Permanently removes a UDFolder from ISY
 boolean removeFromGroup(java.lang.String id, java.lang.String gid)
          Removes a UDNode from a UDGroup
 boolean removeGroup(java.lang.String id)
          Permanently removes a UDGroup from ISY
 boolean removeNode(java.lang.String address)
          Permanently removes a UDNode from ISY
 boolean renameFolder(java.lang.String address, java.lang.String newName)
          Renames a UDFloder in ISY
 boolean renameGroup(java.lang.String address, java.lang.String newName)
          Renames a UDGroup in ISY
 boolean renameNetwork(java.lang.String name)
          Renames the network
 boolean renameNode(java.lang.String address, java.lang.String newName)
          Renames a UDNode in ISY
 boolean resetAllNotifications()
          Resets any pending notifications which are queued to be sent based on the configured interval
 boolean resetLog()
          Completely resets and removes all the ISY's log entries
 boolean saveSystemDateTime(com.universaldevices.common.datetime.DateTime dt)
          Sets ISY's system date/time/latitude/longitude
 boolean saveSystemOptions(SystemOptions conf)
          Sets the SystemOptions in ISY (such things as email addresses, number pending, etc.).
 boolean setParent(java.lang.String node, int nodeType, java.lang.String parent, int parentType)
          Sets a parent for a node
 void start(java.lang.String uuid, java.lang.String url)
          Starts the client given the uuid of the device and its url (protocol, host, and port only: http://1.2.3.4:5).
 boolean updateUserCredentials(java.lang.String userid, java.lang.String pwd)
          Updates the main userid/pwd pair for ISY
 
Methods inherited from class com.universaldevices.client.UDClient
addUDErrorListener, addUDModelChangeListener, authenticate, cleanUp, getControls, getDevice, getGroups, getNodes, isStarted, onNewDevice, onNewDeviceAnnounced, removeUDErrorListener, removeUDModelChangeListener, setStarted, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.universaldevices.device.model.IModelChangeListener
onNodeDeviceIdChanged, onNodeDevicePropertiesRefreshed, onNodeDevicePropertiesRefreshedComplete, onNodeDevicePropertyChanged, onNodeErrorCleared, onNodeRevised
 

Constructor Detail

ISYClient

public ISYClient()
Method Detail

start

public void start(java.lang.String uuid,
                  java.lang.String url)
           throws java.lang.Exception
Starts the client given the uuid of the device and its url (protocol, host, and port only: http://1.2.3.4:5).

This method is especially useful when there are firewall issues which stop the UPnP traffic to reach the system. This method may fail if ISY is using DHCP address

Parameters:
uuid - - the uuid of ISY
url - - the protocol://host:port for ISY
Throws:
java.net.MalformedURLException
java.lang.Exception

isISYReady

public boolean isISYReady()
Returns:
- whether or not ISY is ready to accept commands

getCurrValue

public java.lang.Object getCurrValue(UDNode node,
                                     java.lang.String control)
Returns the current value of a UDControl for a UDNode

Parameters:
node - - the UDNode for which we seek the current value
control - - the UDControl for which we want the current value
Returns:
- the current value of a UDControl for a UDNode

changeGroupState

public boolean changeGroupState(java.lang.String control,
                                java.lang.String action,
                                java.lang.String group_address)
Changes the state of a group based on the given parameters

Parameters:
control - - the UDControl being affected
action - - the UDAction applied to the control
group_address - - the address of the UDGroup
Returns:
- true if successful, false otherwise

changeNodeState

public boolean changeNodeState(java.lang.String control,
                               java.lang.String action,
                               java.lang.String node_address)
Changes the state of a node based on the given parameters

Parameters:
control - - the UDControl being affected
action - - the UDAction applied to the control
node_address - - the address of the UDNode
Returns:
- true if successful, false otherwise

addNode

public boolean addNode(java.lang.String newAddress,
                       java.lang.String newName,
                       java.lang.String type,
                       char flag)
Adds a UDNode to ISY

Parameters:
newAddress - - the address of the new UDNode
newName - - the name of the new UDNode
Returns:
true if successful, false otherwise
See Also:
UDNode

removeNode

public boolean removeNode(java.lang.String address)
Permanently removes a UDNode from ISY

Parameters:
address - - the address of the UDNode to be removed
Returns:
- true if successful, false otherwise
See Also:
UDNode

renameNode

public boolean renameNode(java.lang.String address,
                          java.lang.String newName)
Renames a UDNode in ISY

Parameters:
address - - the address of the UDNode to be renamed
newName - - the new name for the UDNode
Returns:
- true if successful, false otherwise
See Also:
UDNode

addGroup

public boolean addGroup(java.lang.String address,
                        java.lang.String name)
Adds a UDGroup to ISY

Parameters:
address - - the address of the new UDGroup
name - - the name of the new UDGroup
Returns:
- true if successful, false otherwise
See Also:
UDGroup

addFolder

public boolean addFolder(java.lang.String address,
                         java.lang.String name)
Adds a UDFolder to ISY

Parameters:
address - - the address of the new UDFolder
name - - the name of the new UDFolder
Returns:
- true if successful, false otherwise
See Also:
UDFolder

removeGroup

public boolean removeGroup(java.lang.String id)
Permanently removes a UDGroup from ISY

Parameters:
id - - the address of the UDGroup to be removed
Returns:
- true if successful, false otherwise
See Also:
UDGroup

removeeFolder

public boolean removeeFolder(java.lang.String id)
Permanently removes a UDFolder from ISY

Parameters:
id - - the address of the UDFolder to be removed
Returns:
- true if successful, false otherwise
See Also:
UDFolder

renameGroup

public boolean renameGroup(java.lang.String address,
                           java.lang.String newName)
Renames a UDGroup in ISY

Parameters:
address - - the address of the UDGroup to be renamed
newName - - the new name for the UDGroup
Returns:
- true if successful, false otherwise
See Also:
UDGroup

renameFolder

public boolean renameFolder(java.lang.String address,
                            java.lang.String newName)
Renames a UDFloder in ISY

Parameters:
address - - the address of the UDFolder to be renamed
newName - - the new name for the UDFolder
Returns:
- true if successful, false otherwise
See Also:
UDFolder

setParent

public boolean setParent(java.lang.String node,
                         int nodeType,
                         java.lang.String parent,
                         int parentType)
Sets a parent for a node

Parameters:
node - - The address of the node to have parent set
nodeType - - The type of the node
parent - - The address of the parent
parentType - - The type of the parent
Returns:
- true if successful, false otherwise

moveNode

public boolean moveNode(java.lang.String id,
                        java.lang.String gid,
                        char flag)
Moves a UDNode to a UDGroup

Parameters:
id - - the address of the UDNode to be moved
gid - - the address of the UDGroup being moved to
flag - - the relationship flag between the node and the group. Possible values: Constants.NODE_IS_MASTER: the node plays the master relationship in the group ~Constants.NODE_IS_MASTER: the node plays a slave relationship in the group
Returns:
- true if successful, false otherwise
See Also:
UDNode, UDGroup

removeFromGroup

public boolean removeFromGroup(java.lang.String id,
                               java.lang.String gid)
Removes a UDNode from a UDGroup

Parameters:
id - - the address of the UDNode being removed
gid - - the address of the UDGroup the node being removed from
Returns:
- true if successful, false otherwise
See Also:
UDNode, UDGroup

renameNetwork

public boolean renameNetwork(java.lang.String name)
Renames the network

Parameters:
name - - the new name for the network
Returns:
- true if successful, false otherwise

queryNode

public boolean queryNode(java.lang.String address)
Queries a UDNode within ISY

Parameters:
address - - the address of the UDNode
Returns:
true if successful, false otherwise
See Also:
UDNode

queryGroup

public boolean queryGroup(java.lang.String address)
Queries a UDGroup within ISY

Parameters:
address - - the address of the UDGroup
Returns:
true if successful, false otherwise
See Also:
UDGroup

discoverNodes

public boolean discoverNodes(java.lang.String type)
Starts UDNode discovery. In case of Insteon, this means starting a Linking session

Parameters:
type - - the type of device being added (optional)
Returns:
- true if successful, false otherwise

cancelNodesDiscovery

public boolean cancelNodesDiscovery()
Cancels UDNode discovery. In case of Insteon, this means stopping the Linking session

Returns:
- true if successful, false otherwise

enableInternetAccess

public boolean enableInternetAccess()
Enables internet access

Returns:
- true if successful, false otherwise

disableInternetAccess

public boolean disableInternetAccess()
Disables internet access

Returns:
- true if successful, false otherwise

getSystemStatus

public SystemStatus getSystemStatus()
Returns ISY's system status

Returns:
- SystemStatus retrieved from ISY, null if failed
See Also:
SystemStatus

saveSystemDateTime

public boolean saveSystemDateTime(com.universaldevices.common.datetime.DateTime dt)
Sets ISY's system date/time/latitude/longitude

Parameters:
dt - - the DateTime object according to which the ISY's system date/time is set
Returns:
- true if successful, false otherwise

getSystemDateTime

public com.universaldevices.common.datetime.DateTime getSystemDateTime()
Returns ISY's system date/time related attributes

Returns:
- the DateTime object holding ISY's data/time attributes; null if failed
See Also:
DateTime

getSystemOptions

public SystemOptions getSystemOptions()
Retrieves the currently set SystemOptions in ISY (such things as email addresses, number pending, etc.).

Returns:
- the current ISY SystemOptions; null if failed
See Also:
SystemOptions

saveSystemOptions

public boolean saveSystemOptions(SystemOptions conf)
Sets the SystemOptions in ISY (such things as email addresses, number pending, etc.).

Returns:
- true if successful, false otherwise
See Also:
SystemOptions

resetAllNotifications

public boolean resetAllNotifications()
Resets any pending notifications which are queued to be sent based on the configured interval

Returns:
- true if successful, false otherwise
See Also:
SystemOptions

getNumPendingNotifications

public boolean getNumPendingNotifications()
Gets the number of pending notifications (which are queued to be sent out) and stores it in this object. To get the value, invoke UDProxyDevice.getNumNotifications() method.

Returns:
- true if successful, false otherwise
See Also:
SystemOptions, UDProxyDevice

getLog

public java.lang.String getLog()
Returns:
ISY's current log file in an ascii delimited tab separated format

resetLog

public boolean resetLog()
Completely resets and removes all the ISY's log entries

Returns:
- true if successful, false otherwise

reboot

public boolean reboot()
Reboots ISY; this method is fully encrypted on the wire for security purposes

Returns:
- true if successful, false otherwise

updateUserCredentials

public boolean updateUserCredentials(java.lang.String userid,
                                     java.lang.String pwd)
Updates the main userid/pwd pair for ISY

Parameters:
userid - - the userid
pwd - - the password
Returns:
- true if successful, false otherwise

onDiscoveringNodes

public abstract void onDiscoveringNodes()
This method is invoked when ISY goes into Linking/Discovery mode


onDiscoveringNodes

public final void onDiscoveringNodes(UDProxyDevice device)
This method is invoked when ISY goes into Linking/Discovery mode

Parameters:
device - - the UDProxyDevice originating this event

onNodeDiscoveryStopped

public abstract void onNodeDiscoveryStopped()
This method is invoked when ISY is no longer in Linking/ Discovery mode


onNodeDiscoveryStopped

public final void onNodeDiscoveryStopped(UDProxyDevice device)
This method is invoked when ISY is no longer in Linking/ Discovery mode

Parameters:
device - - the UDProxyDevice originating this event

onGroupRemoved

public abstract void onGroupRemoved(java.lang.String groupAddress)
This method is invoked when a group/scene is permanently removed from ISY

Parameters:
groupAddress - - the group's address

onGroupRemoved

public final void onGroupRemoved(UDProxyDevice device,
                                 java.lang.String groupAddress)
This method is invoked when a group/scene is permanently removed from ISY

Parameters:
groupAddress - - the group's address
device - - the UDProxyDevice
See Also:
UDProxyDevice

onGroupRenamed

public abstract void onGroupRenamed(UDGroup group)
This method is invoked when a group/scene is renamed

Parameters:
group - - the UDGroup
See Also:
UDGroup

onGroupRenamed

public final void onGroupRenamed(UDProxyDevice device,
                                 UDGroup group)
This method is invoked when a group/scene is renamed

Parameters:
group - - the UDGroup
device - - the UDProxyDevice
See Also:
UDGroup, UDProxyDevice

onModelChanged

public abstract void onModelChanged(UDControl control,
                                    java.lang.Object value,
                                    UDNode node)
This method is invoked when ISY senses a change in the value of any UDControl for any UDNode

Parameters:
control - - the UDControl's name
value - - the UDAction value for the UDControl
node - - the UDNode to which the change applies
See Also:
UDNode, UDControl, UDAction

onModelChanged

public final void onModelChanged(UDProxyDevice device,
                                 UDControl control,
                                 java.lang.Object value,
                                 UDNode node)
This method is invoked when ISY senses a change in the value of any UDControl for any UDNode

Parameters:
device - - the UDProxyDevice initiating the change
control - - the UDControl's name
value - - the UDAction value for the UDControl
node - - the UDNode to which the change applies
See Also:
UDProxyDevice, UDNode, UDControl, UDAction

onNetworkRenamed

public abstract void onNetworkRenamed(java.lang.String newName)
This method is invoked when the network has been renamed

Parameters:
newName - - the new name for the network

onNetworkRenamed

public final void onNetworkRenamed(UDProxyDevice device,
                                   java.lang.String newName)
This method is invoked when the network has been renamed

Parameters:
newName - - the new name for the network
device - - the UDProxyDevice originating this event

onNewGroup

public abstract void onNewGroup(UDGroup new_group)
This method is invoked when a new group/scene has been created in ISY

Parameters:
new_group - - the new UDGroup
See Also:
UDGroup

onNewGroup

public final void onNewGroup(UDProxyDevice device,
                             UDGroup new_group)
This method is invoked when a new group/scene has been created in ISY

Parameters:
device - - the UDProxyDevice initiating this event
new_group - - the new UDGroup
See Also:
UDGroup, UDProxyDevice

onNewNode

public abstract void onNewNode(UDNode node)
This method is invoked when a new node (representation of a physical device) is added to ISY

Parameters:
node - - the new UDNode
See Also:
UDNode

onNewNode

public final void onNewNode(UDProxyDevice device,
                            UDNode newNode)
This method is invoked when a new node (representation of a physical device) is added to ISY

Parameters:
device - - the initiating this event
newNode - - the new UDNode
See Also:
UDProxyDevice, UDNode

onNodeError

public abstract void onNodeError(UDNode node)
This method is invoked when there's an error communicating with the node (or, better said, the physical device which is represented by this node>

Parameters:
node - - the UDNode in error
See Also:
UDNode

onNodeError

public final void onNodeError(UDProxyDevice device,
                              UDNode node)
This method is invoked when there's an error communicating with the node (or, better said, the physical device which is represented by this node>

Parameters:
device - - the UDProxyDevice initiating this event
node - - the UDNode in error
See Also:
UDProxyDevice, UDNode

onNodeEnabled

public abstract void onNodeEnabled(UDNode node,
                                   boolean b)
This method is invoked when a node is enabled or disabled

Parameters:
node - - the UDNode in error
b - - whether or not enabled
See Also:
UDProxyDevice, UDNode

onNodeEnabled

public void onNodeEnabled(UDProxyDevice device,
                          UDNode node,
                          boolean b)
This method is invoked when a node is enabled or disabled

Parameters:
device - - the UDProxyDevice initiating this event
node - - the UDNode in error
b - - whether or not enabled
See Also:
UDProxyDevice, UDNode

onNodeMovedAsMaster

public abstract void onNodeMovedAsMaster(UDNode node,
                                         UDGroup group)
This method is invoked when a node has been moved to a scene/group as a controller/master

Parameters:
node - - the UDNode which has just moved
group - - the UDGroup to which the node moved to
See Also:
UDNode, UDGroup

onNodeMovedAsSlave

public abstract void onNodeMovedAsSlave(UDNode node,
                                        UDGroup group)
This method is invoked when a node has been moved to a scene/group as a responder/slave

Parameters:
node - - the UDNode which has just moved
group - - the UDGroup to which the node moved to
See Also:
UDNode, UDGroup

onNodeMoved

public final void onNodeMoved(UDProxyDevice device,
                              UDNode node,
                              UDGroup group,
                              char role)
This method is invoked when a node has been moved to a scene/group

Parameters:
device - - the UDProxyDevice initiating this event
node - - the UDNode which has just moved
group - - the UDGroup to which the node moved to
role - - whether or not the node has moved as a controller or a responder. Possible values are UDConstants.NODE_IS_MASTER and ~UDConstants.NODE_IS_MASTER
See Also:
UDProxyDevice, UDNode, UDGroup

onNodeRemoved

public abstract void onNodeRemoved(java.lang.String nodeAddress)
This method is invoked when a UDNode (and any associated physical device thereof) has been permanently removed from ISY

Parameters:
nodeAddress - - the address of the UDNode removed
See Also:
UDNode

onNodeRemoved

public final void onNodeRemoved(UDProxyDevice device,
                                java.lang.String nodeAddress)
This method is invoked when a UDNode (and any associated physical device thereof) has been permanently removed from ISY

Parameters:
device - - the UDDevice initiating this event
nodeAddress - - the address of the UDNode removed
See Also:
UDNode

onNodeRemovedFromGroup

public abstract void onNodeRemovedFromGroup(UDNode node,
                                            UDGroup group)
This method is invoked when UDNode has been removed from a group/scene (UDGroup

Parameters:
node - - the UDNode removed
group - - the UDGroup from which the node was removed
See Also:
UDNode, UDGroup

onNodeRemovedFromGroup

public final void onNodeRemovedFromGroup(UDProxyDevice device,
                                         UDNode node,
                                         UDGroup group)
This method is invoked when UDNode has been removed from a group/scene (UDGroup

Parameters:
device - - the UDProxyDevice initiating this event
node - - the UDNode removed
group - - the UDGroup from which the node was removed
See Also:
UDProxyDevice, UDNode, UDGroup

onNodeToGroupRoleChanged

public abstract void onNodeToGroupRoleChanged(UDNode node,
                                              UDGroup group,
                                              char new_role)
Notifies the client that the node's role for a group changed

Parameters:
node - - the UDNode whose role changed
group - - the UDGroup whose role to the node changed
new_role - - the new role which the node plays in the group; currently this value is restricted to Constants.NODE_IS_MASTER i.e. this node is either a master/controller of this group or a slave/responder

onNodeToGroupRoleChanged

public void onNodeToGroupRoleChanged(UDProxyDevice device,
                                     UDNode node,
                                     UDGroup group,
                                     char new_role)
Notifies the client that the node's role for a group changed

Parameters:
device - - the UDProxyDevice originating this event
node - - the UDNode whose role changed
group - - the UDGroup whose role to the node changed
new_role - - the new role which the node plays in the group; currently this value is restricted to Constants.NODE_IS_MASTER i.e. this node is either a master/controller of this group or a slave/responder

onNodeRenamed

public abstract void onNodeRenamed(UDNode node)
This method is invoked when a UDNode has been renamed

Parameters:
node - - the UDNode which was renamed
See Also:
UDNode

onNodeRenamed

public final void onNodeRenamed(UDProxyDevice device,
                                UDNode node)
This method is invoked when a UDNode has been renamed

Parameters:
node - - the UDNode which was renamed
device - - the UDProxyDevice originating this event
See Also:
UDProxyDevice, UDNode

onDeviceOffLine

public abstract void onDeviceOffLine()
This method is invoked when an ISY is no longer reachable (for any reason)

See Also:
UDProxyDevice

onDeviceOffLine

public final void onDeviceOffLine(UDProxyDevice device)
This method is invoked when an ISY is no longer reachable (for any reason)

Parameters:
device - - the UDProxyDevice which is no longer on line
See Also:
UDProxyDevice

onDeviceOnLine

public abstract void onDeviceOnLine()
This method is invoked when an ISY is on line (possibly again)

See Also:
UDProxyDevice

onDeviceOnLine

public final void onDeviceOnLine(UDProxyDevice device)
This method is invoked when an ISY is on line (possibly again)

Parameters:
device - - the UDProxyDevice which is now on line
See Also:
UDProxyDevice

onInternetAccessEnabled

public abstract void onInternetAccessEnabled(java.lang.String url)
This method is invoked when Internet access has been enabled

Parameters:
url - - the external URL for ISY

onInternetAccessDisabled

public abstract void onInternetAccessDisabled()
This method is invoked when Internet access is disabled


onInternetAccessUpdated

public final void onInternetAccessUpdated(UDProxyDevice device,
                                          java.lang.String url,
                                          java.lang.String action)
This method is called when the state of internet access has changed

Parameters:
device - - the UDProxyDevice initiating this event
url - - the external URL for ISY
action - - whether or not Internet access is enabled or disabled: IModelChangeListener.UD_INTERNET_ACCESS_DISABLED_ACTION IModelChangeListener.UD_INTERNET_ACCESS_ENABLED_ACTION

onSystemStatus

public abstract void onSystemStatus(boolean busy)
This method is invoked when the state of ISY changes

Parameters:
busy - - whether or not ISY is busy and that it cannot process other requests (it may try to queue them if possible)

onSystemStatus

public final void onSystemStatus(UDProxyDevice device,
                                 java.lang.String event)
This method is invoked when the state of ISY changes

Parameters:
device - - the UDProxyDevice initiating this event
event - - what type of system status we have
See Also:
IModelChangeListener

onTriggerStatus

public abstract void onTriggerStatus(java.lang.String arg1,
                                     XMLElement arg2)
This method is invoked when the trigger status changes

Parameters:
arg1 -
arg2 -

onTriggerStatus

public void onTriggerStatus(UDProxyDevice device,
                            java.lang.String arg1,
                            XMLElement arg2)
This method is invoked when the trigger status changes

Parameters:
arg1 -
arg2 -
device - The UDProxyDevice originating this event

onProgress

public abstract void onProgress(java.lang.String action,
                                XMLElement ei)
Notifies the client of the progress of actions currently being taken.

Parameters:
action - The action to perform based on this event
ei - Detailed status information

onProgress

public void onProgress(UDProxyDevice device,
                       java.lang.String action,
                       XMLElement ei)
Notifies the client of the progress of actions currently being taken.

Parameters:
device - The UDProxyDevice originating this event
action - The action to perform based on this event
ei - Detailed status information

onDeviceSpecific

public abstract void onDeviceSpecific(java.lang.String action,
                                      java.lang.String node,
                                      XMLElement ei)
Notifies the client of any device specific changes.

Parameters:
action - The action to perform based on this event
ei - Detailed status information

onDeviceSpecific

public void onDeviceSpecific(UDProxyDevice device,
                             java.lang.String action,
                             java.lang.String node,
                             XMLElement ei)
Notifies the client of any device specific changes.

Parameters:
device - The UDProxyDevice originating this event
action - The action to perform based on this event
ei - Detailed status information
node - (if any) to which this action was performed

onSystemConfigChanged

public void onSystemConfigChanged(UDProxyDevice device,
                                  java.lang.String event,
                                  XMLElement eventInfo)
Notifies the client that system configurations have changed

Parameters:
device - - the UDProxyDevice originating this event
event - - can be any of
IModelChangeListener.UD_TIME_CHANGED_ACTION
IModelChangeListener.UD_TIME_CONFIG_CHANGED_ACTION
IModelChangeListener.UD_NTP_SETTINGS_UPDATED_ACTION
IModelChangeListener.UD_NOTIFICATION_SETTINGS_UPDATED_ACTION
IModelChangeListener.UD_NTP_COMM_FAILED_ACTION
eventInfo - - any additional information sent by ISY

onSystemConfigChanged

public abstract void onSystemConfigChanged(java.lang.String event,
                                           XMLElement eventInfo)
Notifies the client that system configurations have change

Parameters:
event - - can be any of
eventInfo - - the extra event information XMLElement IModelChangeListener.UD_TIME_CHANGED_ACTION
IModelChangeListener.UD_TIME_CONFIG_CHANGED_ACTION
IModelChangeListener.UD_NTP_SETTINGS_UPDATED_ACTION
IModelChangeListener.UD_NOTIFICATION_SETTINGS_UPDATED_ACTION
IModelChangeListener.UD_NTP_COMM_FAILED_ACTION

onFolderRemoved

public void onFolderRemoved(UDProxyDevice device,
                            java.lang.String folderAddress)
This method is called when a Folder is removed

Parameters:
device - - the UDProxyDevice originating this event
folderAddress - - the address for the folder
See Also:
UDFolder

onFolderRemoved

public abstract void onFolderRemoved(java.lang.String folderAddress)
This method is called when a Folder is removed

Parameters:
folderAddress - - the address for the folder
See Also:
UDFolder

onFolderRenamed

public void onFolderRenamed(UDProxyDevice device,
                            UDFolder folder)
This method is called when a Folder is renamed

Parameters:
device - - the UDProxyDevice originating this event
folder - - the UDFolder which has been renamed
See Also:
UDFolder, UDProxyDevice

onFolderRenamed

public abstract void onFolderRenamed(UDFolder folder)
This method is called when a Folder is renamed

Parameters:
folder - - the UDFolder which has been renamed
See Also:
UDFolder

onNewFolder

public void onNewFolder(UDProxyDevice device,
                        UDFolder newFolder)
This method is called when a new folder is created

Parameters:
device - - the UDProxyDevice originating this event
newFolder - - the UDFolder which has been renamed
See Also:
UDFolder, UDProxyDevice

onNewFolder

public abstract void onNewFolder(UDFolder folder)
This method is called when a new folder is created

Parameters:
folder - - the UDFolder which has been renamed
See Also:
UDFolder

onNodeParentChanged

public void onNodeParentChanged(UDProxyDevice device,
                                UDNode node,
                                UDNode newParent)
This method is called when the parent of a node has changed

Parameters:
device - - the UDProxyDevice originating this event
node - - the UDNode for which the parent has changed
newParent - - the UDNode which is the parent for the node
See Also:
UDNode, UDProxyDevice

onNodeParentChanged

public abstract void onNodeParentChanged(UDNode node,
                                         UDNode newParent)
This method is called when the parent of a node has changed

Parameters:
node - - the UDNode for which the parent has changed
newParent - - the UDNode which is the parent for the node
See Also:
UDNode

onNodeHasPendingDeviceWrites

public void onNodeHasPendingDeviceWrites(UDProxyDevice device,
                                         UDNode node,
                                         boolean hasPending)
This method is called when the node has pending device writes

Parameters:
device - - the UDProxyDevice originating this event
node - - the UDNode which has pending device writes
hasPending - - whether or not there's pending device writes
See Also:
UDNode, UDProxyDevice

onNodeHasPendingDeviceWrites

public abstract void onNodeHasPendingDeviceWrites(UDNode node,
                                                  boolean hasPending)
This method is called when the node has pending device writes

Parameters:
node - - the UDNode which has pending device writes
hasPending - - whether or not there's pending device writes
See Also:
UDNode

onNodeIsWritingToDevice

public void onNodeIsWritingToDevice(UDProxyDevice device,
                                    UDNode node,
                                    boolean isWriting)
This method is called when the device associated with the node is being programmed (written to)

Parameters:
device - - the UDProxyDevice originating this event
node - - the UDNode which might be programmed
isWriting - - whether or not the node is being programmed
See Also:
UDNode, UDProxyDevice

onNodeIsWritingToDevice

public abstract void onNodeIsWritingToDevice(UDNode node,
                                             boolean isWriting)
This method is called when the device associated with the node is being programmed (written to)

Parameters:
node - - the UDNode which might be programmed
isWriting - - whether or not the node is being programmed
See Also:
UDNode

onNodePowerInfoChanged

public void onNodePowerInfoChanged(UDProxyDevice device,
                                   UDNode node)
This method is called when the power information has changed for a node

Parameters:
device - - the UDProxyDevice originating this event
node - - the UDNode which might be programmed
See Also:
UDNode, UDProxyDevice

onNodePowerInfoChanged

public abstract void onNodePowerInfoChanged(UDNode node)
This method is called when the power information has changed for a node

Parameters:
node - - the UDNode which might be programmed
See Also:
UDNode