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>
33 TEMPLATABLE_VALUE(std::string, media_url)
34 TEMPLATABLE_VALUE(
bool, announcement)
35 void play(Ts...
x)
override {
37 .set_media_url(this->media_url_.value(
x...))
38 .set_announcement(this->announcement_.value(
x...))
44 TEMPLATABLE_VALUE(
float, volume)
45 void play(Ts...
x)
override { this->
parent_->make_call().set_volume(this->volume_.value(
x...)).perform(); }
59 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.