SIFIS-Home developer API.
The SIFIS-Home developer API present a simplified abstraction that provides the developer with the minimum surface to control devices while being aware of the hazards that every API involve.
The applications written using this crate are intended to run by interacting with a runtime
that mediates the access to the remote
devices (e.g. via a Web of Things consumer).
NOTE: This repo history will be rewritten to be fully descriptive.
- Lamp
- Sink
- Door
- Fridge
The library crate by default opens a unix socket on /var/run/sifis.sock
or to the path set in the env var SIFIS_SERVER
.
The crate provides two developer tools:
sifis-runtime-mock
: aruntime
example implementation that simulates devices, useful to implement mock testing of client applications.sifis-client
: an interactive client to help developing independent runtimes and explore the overall API.
# Change the default unix socket path
export SIFIS_SERVER=/tmp/sifis.sock
# Start the runtime with the default configuration
cargo run --bin sifis-runtime-mock &
# Start the interactive client
cargo run --bin sifis-client
This software has been developed in the scope of the H2020 project SIFIS-Home with GA n. 952652.