[−][src]Crate plm
A crate for interacting with INSTEON™ home automation devices via an attached PowerLinc Modem.
Example
// Use the modem attached to /dev/ttyUSB0 to turn on the switch // with address 11.22.33. let mut modem = Modem::from_path("/dev/ttyUSB0")?; modem.send_message((Address::from_str("11.22.33")?, Command::On).into()).await?;
Structs
Address | An Address Represents an INSTEON device address. These are 3 bytes and are commonly represented as hex numbers separated by '.', e.g. '2b.a1.11'. |
AllLinkComplete | This represents the result of a completed link. |
AllLinkFlags | Represents the flags in a link record. Used in Frame::AllLinkRecord. |
Message | |
MessageFlags | Represents details about a Message. |
Modem | A Modem is a connection to an INSTEON Modem. It can be used to send Messages and manage device links (e.g. Modem::link_device). |
ModemInfo | Information about the attached modem. |
Enums
AllLinkMode | Represents the various link modes available. |
Command | A Command (two, actually) is sent in a Message. This type has some commonly used ones, but you can send arbitrary values via Command::Other. |
Error | Errors returned from various operations. |
Constants
DEFAULT_TIMEOUT_DURATION | The default duration to wait for Message replies. 10 seconds. |