esphome-api-client 0.5.0
Modern C++17 client for the ESPHome native API (plaintext + Noise)
Loading...
Searching...
No Matches
media_player.hpp
Go to the documentation of this file.
1#pragma once
2
5
9
10#include <cstdint>
11#include <memory>
12#include <optional>
13#include <string>
14#include <vector>
15
16namespace esphome::api {
17
18namespace proto {
19class ListEntitiesMediaPlayerResponse;
20class MediaPlayerStateResponse;
21class MediaPlayerCommandRequest;
22} // namespace proto
23
32
35 bool supports_pause = false;
36 std::vector<MediaPlayerSupportedFormat> supported_formats;
37};
38
44 std::uint32_t key = 0;
46 float volume = 0.0F;
47 bool muted = false;
48};
49
55 std::uint32_t key = 0;
56 std::optional<MediaPlayerCommand> command;
57 std::optional<float> volume;
58 std::optional<std::string> media_url;
59 std::optional<bool> announcement;
60};
61
62MediaPlayerInfo parse_media_player_info(const proto::ListEntitiesMediaPlayerResponse& msg);
63MediaPlayerStatus parse_media_player_state(const proto::MediaPlayerStateResponse& msg);
64std::unique_ptr<ProtoMessage> to_message(const MediaPlayerControl& cmd);
65
66} // namespace esphome::api
Common entity metadata shared by every entity domain.
Typed mirrors of the ESPHome protobuf enums.
Definition bytes.hpp:10
std::unique_ptr< ProtoMessage > to_message(const AlarmControlPanelCommand &cmd)
MediaPlayerStatus parse_media_player_state(const proto::MediaPlayerStateResponse &msg)
MediaPlayerState
Mirror of proto enum MediaPlayerState.
Definition enums.hpp:236
MediaPlayerFormatPurpose
Mirror of proto enum MediaPlayerFormatPurpose.
Definition enums.hpp:265
MediaPlayerInfo parse_media_player_info(const proto::ListEntitiesMediaPlayerResponse &msg)
Lightweight base class for every generated ESPHome API message.
Fields present on every ListEntities*Response.
Definition entity.hpp:16
A command to mutate a media player.
Definition media_player.hpp:54
std::optional< MediaPlayerCommand > command
Definition media_player.hpp:56
std::uint32_t key
Definition media_player.hpp:55
std::optional< float > volume
Definition media_player.hpp:57
std::optional< std::string > media_url
Definition media_player.hpp:58
std::optional< bool > announcement
Definition media_player.hpp:59
Static description of a media player entity.
Definition media_player.hpp:34
std::vector< MediaPlayerSupportedFormat > supported_formats
Definition media_player.hpp:36
bool supports_pause
Definition media_player.hpp:35
A media player's reported state.
Definition media_player.hpp:43
float volume
Definition media_player.hpp:46
std::uint32_t key
Definition media_player.hpp:44
bool muted
Definition media_player.hpp:47
MediaPlayerState state
Definition media_player.hpp:45
A single audio format advertised as supported by a media player.
Definition media_player.hpp:25
MediaPlayerFormatPurpose purpose
Definition media_player.hpp:29
std::uint32_t sample_rate
Definition media_player.hpp:27
std::uint32_t num_channels
Definition media_player.hpp:28
std::uint32_t sample_bytes
Definition media_player.hpp:30
std::string format
Definition media_player.hpp:26