struct
PlaceOS::Driver::Proxy::System
- PlaceOS::Driver::Proxy::System
- Struct
- Value
- Object
Defined in:
placeos-driver/proxy/system.crConstructors
-
.new(model : DriverModel::ControlSystem, reply_id : String, logger : ::Log = ::Log.for(PlaceOS::Driver::Proxy::System), subscriptions : Proxy::Subscriptions = Proxy::Subscriptions.new)
Local system available to logic driver
-
.new(system_id : String, reply_id : String, logger : ::Log = ::Log.for(PlaceOS::Driver::Proxy::System), subscriptions : Proxy::Subscriptions = Proxy::Subscriptions.new)
Remote system (lazily loaded config)
Class Method Summary
-
.driver_metadata?(system_id, module_name, index) : PlaceOS::Driver::DriverModel::Metadata | Nil
Retrieve module metadata from redis
-
.driver_metadata?(module_id) : PlaceOS::Driver::DriverModel::Metadata | Nil
Retrieve module metadata from redis, bypassing module_id lookup
-
.module_id?(system_id, module_name, index) : String | Nil
Retrieve module metadata from redis
Instance Method Summary
- #[](module_name)
- #all(module_name) : PlaceOS::Driver::Proxy::Drivers
- #all(module_name, *, implementing) : PlaceOS::Driver::Proxy::Drivers
- #bookable(*args, **options)
- #bookable(*args, **options, &)
- #capacity(*args, **options)
- #capacity(*args, **options, &)
- #code(*args, **options)
- #code(*args, **options, &)
- #config : DriverModel::ControlSystem
-
#count(module_name)
Grabs the number of a particular device type
- #description(*args, **options)
- #description(*args, **options, &)
- #display_name(*args, **options)
- #display_name(*args, **options, &)
- #email(*args, **options)
- #email(*args, **options, &)
-
#exists?(module_name, index = nil) : Bool
Checks for the existence of a particular module
- #features(*args, **options)
- #features(*args, **options, &)
- #get(module_name, index)
- #get(module_name)
- #id : String
-
#implementing(interface) : PlaceOS::Driver::Proxy::Drivers
grabs all modules implementing(Powerable) for example
-
#load_complete(&callback : PlaceOS::Driver::Subscriptions::ChannelSubscription, String -> Nil)
coordination to occur on placeos core
- #logger : ::Log
- #map_id(*args, **options)
- #map_id(*args, **options, &)
-
#modules
Returns a list of all the module names in the system
- #name(*args, **options)
- #name(*args, **options, &)
-
#subscribe(module_name, index, status, &callback : PlaceOS::Driver::Subscriptions::IndirectSubscription, String -> Nil) : PlaceOS::Driver::Subscriptions::IndirectSubscription
Manages subscribing to all the non-local subscriptions
- #subscribe(module_name, status, &callback : PlaceOS::Driver::Subscriptions::IndirectSubscription, String -> Nil) : PlaceOS::Driver::Subscriptions::IndirectSubscription
- #support_url(*args, **options)
- #support_url(*args, **options, &)
- #timezone(*args, **options)
- #timezone(*args, **options, &)
- #type(*args, **options)
- #type(*args, **options, &)
- #zones(*args, **options)
- #zones(*args, **options, &)
Constructor Detail
Local system available to logic driver
Remote system (lazily loaded config)
Class Method Detail
Retrieve module metadata from redis
Retrieve module metadata from redis, bypassing module_id lookup
Retrieve module metadata from redis
Instance Method Detail
grabs all modules implementing(Powerable) for example
Modules are returned in the order they are listed on the system, so the first result is the module an administrator placed first
coordination to occur on placeos core
Manages subscribing to all the non-local subscriptions