caspia.pan.reactive package

Submodules

caspia.pan.reactive.display module

caspia.pan.reactive.display.display_update(display, render, inputs=())[source]

caspia.pan.reactive.presence module

caspia.pan.reactive.presence.arrival_of(user)[source]
caspia.pan.reactive.presence.away(user)[source]
caspia.pan.reactive.presence.everyone_away(users=None)[source]
caspia.pan.reactive.presence.get_presence()[source]
caspia.pan.reactive.presence.leaving_of(user)[source]
caspia.pan.reactive.presence.present(user)[source]
caspia.pan.reactive.presence.register_presence(presence_service)[source]
caspia.pan.reactive.presence.someone_present(users=None)[source]
caspia.pan.reactive.presence.user_state(user)[source]
caspia.pan.reactive.presence.user_transition(user)[source]

caspia.pan.reactive.sun module

caspia.pan.reactive.sun.at_sunrise()[source]
caspia.pan.reactive.sun.at_sunset()[source]
caspia.pan.reactive.sun.get_sun()[source]
caspia.pan.reactive.sun.register_sun(sun_service)[source]
caspia.pan.reactive.sun.sunrise()[source]
caspia.pan.reactive.sun.sunset()[source]

caspia.pan.reactive.time module

class caspia.pan.reactive.time.SecondsObservable(interval)[source]

Bases: caspia.pan.reactive.time.TimeObservable

become_subscribed()
become_unsubscribed()
dispose_subscription(observer)

Remove subscription of given observer.

do(*args, **kwargs)
exception_handler(exception, stack, **kwargs)
map_time(tm: arrow.arrow.Arrow)[source]
async observe()

Return current value of the observable.

start_updates()
stop_updates()
subscribe(*args, **kwargs)

Create observer using given *args and **kwargs and subscribe to its changes.

Returns disposable representing the subscription => call .dispose() to unsubscribe.

async trigger(value: T, **kwargs)

Manually trigger value change.

async update(value, notify=True)
update_current_time()
update_delay(now)[source]
async update_periodically()
class caspia.pan.reactive.time.TimeObservable[source]

Bases: caspia.reactive.observable.Observable

become_subscribed()[source]
become_unsubscribed()[source]
dispose_subscription(observer)

Remove subscription of given observer.

do(*args, **kwargs)
exception_handler(exception, stack, **kwargs)
map_time(tm: arrow.arrow.Arrow)[source]
async observe()[source]

Return current value of the observable.

start_updates()[source]
stop_updates()[source]
subscribe(*args, **kwargs)

Create observer using given *args and **kwargs and subscribe to its changes.

Returns disposable representing the subscription => call .dispose() to unsubscribe.

async trigger(value: T, **kwargs)

Manually trigger value change.

async update(value, notify=True)[source]
update_current_time()[source]
update_delay(now)[source]
async update_periodically()[source]
caspia.pan.reactive.time.every(*, sec=1, default=None)[source]

Create observable which is true every sec seconds.

caspia.pan.reactive.time.get_time_observable(tm)[source]
caspia.pan.reactive.time.parse_time(tm)[source]
caspia.pan.reactive.time.time_between(start, end)[source]

Create observable, which is true for the given period in day.

Example: time_between(‘13:00’, ‘14:00’)

caspia.pan.reactive.time.time_is(tm)[source]

Create observable which is true for the given time in a day.

Example: time_is(‘14:40’) is True from 14:40:00 to 14:40:59. False otherwise.

caspia.pan.reactive.weather module

caspia.pan.reactive.weather.get_weather()[source]
caspia.pan.reactive.weather.register_weather(weather_service)[source]
caspia.pan.reactive.weather.weather_current(datapoint)[source]
caspia.pan.reactive.weather.weather_today(datapoint)[source]
caspia.pan.reactive.weather.weather_tomorrow(datapoint)[source]
caspia.pan.reactive.weather.weather_upcoming(datapoint)[source]

Module contents