Есть ли способ получить все дорожки станции?

#swift #graphql #pandora

#swift #graphql #pandora

Вопрос:

Прямо сейчас я использую Playback.current запрос для извлечения трека внутри TrackItem. Каждый раз, когда я нажимаю на запрос, я получаю другой трек следующего индекса. Вместо того, чтобы запускать запрос каждый раз, если бы был какой-то способ получить все треки станций? Спасибо.

Ответ №1:

Станции Pandora динамичны по своей природе. Для станции не существует фиксированного набора дорожек. API позволяет вам видеть текущую дорожку и следующую дорожку (через вызовы peek), но следующая дорожка может измениться даже после того, как вы заглянули. Например, если кто-то предоставляет обратную связь по текущей дорожке (пальцы вверх или пальцы вниз), следующая дорожка может быть изменена.

Возможно, вы имеете в виду плейлисты, которые на самом деле представляют собой фиксированный набор дорожек. Все слушатели Pandora могут наслаждаться станциями, но списки воспроизведения, как правило, ограничены подписчиками Pandora Premium (хотя слушатели, у которых нет Premium, все равно могут получить доступ к списку воспроизведения через премиум-сеансы).

Если вы знаете идентификатор списка воспроизведения и хотите получить все дорожки для этого списка воспроизведения, вы можете использовать запрос «сущность» для поиска списка дорожек:

 query {
  entity(id: "PL:88551012:1742630896") {
    ... on Playlist {
      name
      items {
        playlistItems {
          entity {
            ... on Track {
              name
              artist {
                name
              }
            }
          }
        }
      }
    }
  }
}
  

В приведенном выше примере я использовал поиск по шоссе, но, очевидно, вы можете подключить другие идентификаторы списка воспроизведения (т. Е. Идентификаторы, начинающиеся с «PL:»).

Это отвечает на ваш вопрос?