8namespace media_player {
15 this->
parent_->make_call().set_command(Command).set_announcement(this->announcement_.value(
x...)).perform();
19template<
typename... Ts>
21template<
typename... Ts>
23template<
typename... Ts>
25template<
typename... Ts>
27template<
typename... Ts>
29template<
typename... Ts>
31template<
typename... Ts>
33template<
typename... Ts>
37 TEMPLATABLE_VALUE(std::string, media_url)
38 TEMPLATABLE_VALUE(
bool, announcement)
39 void play(Ts...
x)
override {
41 .set_media_url(this->media_url_.value(
x...))
42 .set_announcement(this->announcement_.value(
x...))
48 TEMPLATABLE_VALUE(
float, volume)
49 void play(Ts...
x)
override { this->
parent_->make_call().set_volume(this->volume_.value(
x...)).perform(); }
63 if (player->
state == State)
virtual void play(Ts... x)=0
Base class for all automation conditions.
Helper class to easily give an object a parent of type T.
Providing packet encoding functions for exchanging data with a remote host.