Get desktop application:
View/edit binary Protocol Buffers messages
Used in: DeviceInfo
optional string device_name = 2
Used in: AudioOutputDeviceInfo
UNKNOWN_AUDIO_OUTPUT_DEVICE_TYPE = 0
BUILT_IN_SPEAKER = 1
LINE_OUT = 2
BLUETOOTH = 3
AIRPLAY = 4
AUTOMOTIVE = 5
Used in: Capabilities, PlaybackQuality
UNKNOWN_BITRATE_LEVEL = 0
LOW = 1
NORMAL = 2
HIGH = 3
VERY_HIGH = 4
HIFI = 5
HIFI24 = 6
Used in: PlaybackQuality
UNKNOWN_BITRATE_STRATEGY = 0
BEST_MATCHING = 1
BACKEND_ADVISED = 2
OFFLINED_FILE = 3
CACHED_FILE = 4
LOCAL_FILE = 5
Used in: DeviceInfo
bool can_be_player = 2
bool restrict_to_local = 3
bool gaia_eq_connect_id = 5
bool supports_logout = 6
bool is_observable = 7
int32 volume_steps = 8
repeated string supported_types = 9
bool command_acks = 10
bool supports_rename = 11
bool hidden = 12
bool disable_volume = 13
bool connect_disabled = 14
bool supports_playlist_v2 = 15
bool is_controllable = 16
bool supports_external_episodes = 17
bool supports_set_backend_metadata = 18
bool supports_transfer_command = 19
bool supports_command_request = 20
bool is_voice_enabled = 21
bool needs_full_player_state = 22
bool supports_gzip_pushes = 23
bool supports_set_options_command = 25
string connect_capabilities = 27
bool supports_rooms = 28
bool supports_dj = 29
BitrateLevel supported_audio_quality = 30
Used in: Capabilities
bool fully_supported = 1
bool user_eligible = 2
bool device_supported = 3
Used in: ClusterUpdate
int64 changed_timestamp_ms = 1
string active_device_id = 2
optional PlayerState player_state = 3
map<string, DeviceInfo> device = 4
bytes transfer_data = 5
uint64 transfer_data_timestamp = 6
int64 not_playing_since_timestamp = 7
bool need_full_player_state = 8
int64 server_timestamp_ms = 9
optional bool needs_state_updates = 10
optional uint64 started_playing_at_timestamp = 11
optional Cluster cluster = 1
string ack_id = 3
repeated string devices_that_changed = 4
Used in: ClusterUpdate
UNKNOWN_CLUSTER_UPDATE_REASON = 0
DEVICES_DISAPPEARED = 1
DEVICE_STATE_CHANGED = 2
NEW_DEVICE_APPEARED = 3
DEVICE_VOLUME_CHANGED = 4
DEVICE_ALIAS_CHANGED = 5
DEVICE_NEW_CONNECTION = 6
string command = 1
optional DeviceInfo source_device_info = 2
Used in: ConnectPlayerCommand, LogoutCommand, RenameCommand, SetVolumeCommand
int32 message_id = 1
uint32 target_alias_id = 3
string player_command_json = 1
Used in: Session
string uri = 1
string url = 2
map<string, string> metadata = 3
optional Restrictions restrictions = 4
bool loading = 6
Used in: PlayerState
uint32 page = 1
uint32 track = 2
Used in: Context
string page_url = 1
string next_page_url = 2
map<string, string> metadata = 3
Used in: Session
bool shuffling_context = 1
bool repeating_context = 2
bool repeating_track = 3
optional float playback_speed = 4
map<string, string> modes = 5
Used in: PlayerState, TransferState
bool shuffling_context = 1
bool repeating_context = 2
bool repeating_track = 3
optional float playback_speed = 4
map<string, string> modes = 5
Used in: ContextPage, Playback, Queue
string uri = 1
string uid = 2
bytes gid = 3
map<string, string> metadata = 4
Used in: PutStateRequest
Used in: Cluster, CommandAndSourceDevice, Device
bool can_play = 1
uint32 volume = 2
string name = 3
optional Capabilities capabilities = 4
string device_software_version = 6
string spirc_version = 9
string device_id = 10
bool is_private_session = 11
bool is_social_connect = 12
string client_id = 13
string brand = 14
string model = 15
map<string, string> metadata_map = 16
string product_id = 17
string deduplication_id = 18
uint32 selected_alias_id = 19
bool is_offline = 21
string public_ip = 22
string license = 23
bool is_group = 25
bool is_dynamic_device = 26
repeated string disallow_playback_reasons = 27
repeated string disallow_transfer_reasons = 28
Used in: DeviceInfo
string type = 1
string metadata = 2
Used in: PlaybackQuality
Used in: Session
repeated string interaction_ids = 6
repeated string page_instance_ids = 7
Used in: PutStateRequest
SPIRC_V2 = 0
SPIRC_V3 = 1
CONNECT_STATE = 2
CONNECT_STATE_EXTENDED = 5
ACTIVE_DEVICE_TRACKER = 6
PLAY_TOKEN = 7
Used in: Restrictions
Used in: PlayerState, Session
string feature_identifier = 1
string feature_version = 2
string view_uri = 3
string external_referrer = 4
string referrer_identifier = 5
string device_identifier = 6
repeated string feature_classes = 7
optional string restriction_identifier = 8
Used in: TransferState
int64 timestamp = 1
int32 position_as_of_timestamp = 2
double playback_speed = 3
bool is_paused = 4
optional ContextTrack current_track = 5
optional ContextTrack associated_current_track = 6
optional int32 associated_position_as_of_timestamp = 7
Used in: PlayerState
BitrateLevel target_bitrate_level = 3
bool target_bitrate_available = 4
Used in: Cluster, Device
int64 timestamp = 1
string context_uri = 2
string context_url = 3
optional Restrictions context_restrictions = 4
optional PlayOrigin play_origin = 5
string playback_id = 8
double playback_speed = 9
int64 position_as_of_timestamp = 10
int64 duration = 11
bool is_playing = 12
bool is_paused = 13
bool is_buffering = 14
bool is_system_initiated = 15
optional Restrictions restrictions = 17
optional Suppressions suppressions = 18
map<string, string> context_metadata = 21
map<string, string> page_metadata = 22
string session_id = 23
string queue_revision = 24
int64 position = 25
optional PlaybackQuality playback_quality = 32
repeated string signals = 33
string session_command_id = 35
Used in: Device
Used in: PlayerState
string uri = 1
string uid = 2
map<string, string> metadata = 3
repeated string removed = 4
repeated string blocked = 5
string provider = 6
optional Restrictions restrictions = 7
string album_uri = 8
repeated string disallow_reasons = 9
string artist_uri = 10
repeated string disallow_undecided = 11
Used in: PutStateRequest
UNKNOWN_PUT_STATE_REASON = 0
SPIRC_HELLO = 1
SPIRC_NOTIFY = 2
NEW_DEVICE = 3
PLAYER_STATE_CHANGED = 4
VOLUME_CHANGED = 5
PICKER_OPENED = 6
BECAME_INACTIVE = 7
ALIAS_CHANGED = 8
NEW_CONNECTION = 9
PULL_PLAYBACK = 10
AUDIO_DRIVER_INFO_CHANGED = 11
PUT_STATE_RATE_LIMITED = 12
BACKEND_METADATA_APPLIED = 13
string callback_url = 1
optional Device device = 2
bool is_active = 4
uint32 message_id = 6
string last_command_sent_by_device_id = 7
uint32 last_command_message_id = 8
uint64 started_playing_at = 9
uint64 has_been_playing_for_ms = 11
uint64 client_side_timestamp = 12
bool only_write_player_state = 13
Used in: TransferState
bool is_playing_queue = 2
Used in: ModeRestrictions, Restrictions
repeated string reasons = 1
Used in: Context, PlayerState, ProvidedTrack
repeated string disallow_pausing_reasons = 1
repeated string disallow_resuming_reasons = 2
repeated string disallow_seeking_reasons = 3
repeated string disallow_peeking_prev_reasons = 4
repeated string disallow_peeking_next_reasons = 5
repeated string disallow_skipping_prev_reasons = 6
repeated string disallow_skipping_next_reasons = 7
repeated string disallow_toggling_repeat_context_reasons = 8
repeated string disallow_toggling_repeat_track_reasons = 9
repeated string disallow_toggling_shuffle_reasons = 10
repeated string disallow_set_queue_reasons = 11
repeated string disallow_interrupting_playback_reasons = 12
repeated string disallow_transferring_playback_reasons = 13
repeated string disallow_remote_control_reasons = 14
repeated string disallow_inserting_into_next_tracks_reasons = 15
repeated string disallow_inserting_into_context_tracks_reasons = 16
repeated string disallow_reordering_in_next_tracks_reasons = 17
repeated string disallow_reordering_in_context_tracks_reasons = 18
repeated string disallow_removing_from_next_tracks_reasons = 19
repeated string disallow_removing_from_context_tracks_reasons = 20
repeated string disallow_updating_context_reasons = 21
repeated string disallow_playing_reasons = 22
repeated string disallow_stopping_reasons = 23
repeated string disallow_add_to_queue_reasons = 24
repeated string disallow_setting_playback_speed_reasons = 25
map<string, ModeRestrictions> disallow_setting_modes = 28
UNKNOWN_SEND_COMMAND_RESULT = 0
SUCCESS = 1
DEVICE_NOT_FOUND = 2
CONTEXT_PLAYER_ERROR = 3
DEVICE_DISAPPEARED = 4
UPSTREAM_ERROR = 5
DEVICE_DOES_NOT_SUPPORT_COMMAND = 6
RATE_LIMITED = 7
Used in: TransferState
optional PlayOrigin play_origin = 1
optional Context context = 2
string current_uid = 3
optional Suppressions suppressions = 5
optional string shuffle_seed = 7
optional Context main_context = 8
optional string original_session_id = 9
map<string, string> metadata = 1
bytes user_info_header = 1
string device_id = 2
Used in: PlayerState, Session
repeated string providers = 1