-
Notifications
You must be signed in to change notification settings - Fork 130
Design details
mstovenour edited this page Mar 26, 2013
·
5 revisions
Created using UML::Class::Simple
and Graphviz and the following command lines:
perl -I lib/site `which umlclass.pl` -o insteon.gif -p "Insteon.*" lib/Serial_Item.pm lib/Generic_Item.pm lib/Insteon.pm lib/Insteon_PLM.pm lib/Insteon*/*.pm
umlclass.pl -o insteon_message.gif -p "Insteon::.*Message" -s 4.5x5.5 lib/Generic_Item.pm lib/Insteon.pm lib/Insteon_PLM.pm lib/Insteon*/*.pm
umlclass.pl -o insteon_aldb.gif -p "Insteon::AllLinkDatabase|Insteon::ALDB.*" -s 5x6 lib/Generic_Item.pm lib/Insteon.pm lib/Insteon_PLM.pm lib/Insteon*/*.pm
perl -I lib/site `which umlclass.pl` -o insteon_interface.gif -p "Insteon_PLM|Insteon::BaseInterface" -s 2x7 lib/Serial_Item.pm lib/Generic_Item.pm lib/Insteon_PLM.pm lib/Insteon*/*.pm
perl -I lib/site `which umlclass.pl` -o insteon_devices.gif -p "Insteon::.*Object|Insteon::.*Controller|Insteon::.*Device|Insteon::.*Linc.*|Insteon::MotionSensor|Insteon::.*Light" lib/Serial_Item.pm lib/Generic_Item.pm lib/Insteon.pm lib/Insteon_PLM.pm lib/Insteon*/*.pm
Note: This is rough guide only. See code for conditional logic which updates the UI based on device specific values.
UI Action Notes
complete linking as responder $obj->complete_linking_as_responder
initiate unlinking $obj->initiate_unlinking_as_controller
cancel linking $obj->cancel_linking
show link table to log $obj->log_alllink_table
scan link table $obj->scan_link_table($self->log_alllink_table)
delete orphan links $obj->delete_orphan_links
AUDIT - delete orphan links $obj->delete_orphan_links(1)
scan all device link tables &Insteon::scan_all_linktables
sync all links &Insteon::sync_all_links(0)
AUDIT - sync all links &Insteon::sync_all_links(1)
UI Action Notes
initiate linking as controller $obj->initiate_linking_as_controller("$group")
cancel linking $obj->interface()->cancel_linking
status $obj->request_status
get engine version $obje->get_engine_version
scan link table $obje->scan_link_table($self->log_alllink_table)
log links $obj->log_alllink_table()
sync links $obj->sync_links(0)
on ($obj, 'on')
off ($obj, 'off')
UI Action Notes
<list of states> <take action with the state>
log links $obj->log_alllink_table()
status $obj->request_status
get engine version $obj->get_engine_version
update onlevel/ramprate $obj->update_local_properties
scan link table $obj->scan_link_table($self->log_alllink_table)
link to interface $obj->link_to_interface
unlink with interface $obj->unlink_to_interface