librespot/protocol/proto/show_request.proto
2024-12-16 22:57:12 +01:00

95 lines
2.5 KiB
Protocol Buffer

// Extracted from: Spotify 1.2.52.442 (windows)
syntax = "proto2";
package spotify.show_cosmos.proto;
import "metadata/episode_metadata.proto";
import "metadata/show_metadata.proto";
import "played_state/episode_played_state.proto";
import "played_state/show_played_state.proto";
import "show_episode_state.proto";
import "show_show_state.proto";
import "show_offline_state.proto";
option objc_class_prefix = "SPTShowCosmos";
option optimize_for = CODE_SIZE;
message Item {
reserved 6;
reserved 7;
reserved 8;
reserved 9;
optional string header_field = 1;
optional cosmos_util.proto.EpisodeMetadata episode_metadata = 2;
optional EpisodeCollectionState episode_collection_state = 3;
optional EpisodeOfflineState episode_offline_state = 4;
optional cosmos_util.proto.EpisodePlayState episode_play_state = 5;
}
message Header {
optional cosmos_util.proto.ShowMetadata show_metadata = 1;
optional ShowCollectionState show_collection_state = 2;
optional cosmos_util.proto.ShowPlayState show_play_state = 3;
optional ShowOfflineState show_offline_state = 4;
}
message Response {
reserved "online_data";
reserved 3;
reserved 9;
repeated Item item = 1;
optional Header header = 2;
optional uint32 unfiltered_length = 4;
optional uint32 length = 5;
optional bool loading_contents = 6;
optional uint32 unranged_length = 7;
optional AuxiliarySections auxiliary_sections = 8;
optional uint32 range_offset = 10;
}
message AuxiliarySections {
reserved 2;
reserved 4;
reserved 5;
reserved 6;
reserved 7;
reserved 8;
optional ContinueListeningSection continue_listening = 1;
optional TrailerSection trailer_section = 3;
optional LatestUnplayedEpisodeSection latest_unplayed_episode_section = 9;
optional NextBestEpisodeSection next_best_episode_section = 10;
optional SavedEpisodesSection saved_episodes_section = 11;
}
message ContinueListeningSection {
optional Item item = 1;
}
message TrailerSection {
optional Item item = 1;
}
message LatestUnplayedEpisodeSection {
optional Item item = 1;
}
message NextBestEpisodeSection {
enum Label {
UNKNOWN = 0;
TRAILER = 1;
CONTINUE_LISTENING = 2;
LATEST_PUBLISHED = 3;
UP_NEXT = 4;
FIRST_PUBLISHED = 5;
}
optional Label label = 1;
optional Item item = 2;
}
message SavedEpisodesSection {
optional uint32 saved_episodes_count = 1;
optional uint32 downloaded_episodes_count = 2;
}