История прослушивания без пропусков и скипов #2 #230
Replies: 9 comments 34 replies
-
Долгожданная вещь! |
Beta Was this translation helpful? Give feedback.
-
Имеется ввиду путь в устройстве, типа ...Android/data/com.spotify.music... ? |
Beta Was this translation helpful? Give feedback.
-
В таскере всё перепроверил, Обновил таскер. Не помогло |
Beta Was this translation helpful? Give feedback.
-
Сделал небольшой рефакторинг кода функции, это исправило пару незначительных ошибок, логика кода осталась прежний, так же подправил текст для инструкции на андроиде, касаемо версий приложений. |
Beta Was this translation helpful? Give feedback.
-
Автору безусловно респект за проделанную работу. Но не пойму в чем смысл использовать промежуточное звено в виде Гугл формы, если можно сразу отдавать данные непосредственно Гугл скрипту. Для этого можно либо немного изменить присутствующую в библиотеке функцию doGet (для get-запросов, что легче), или создать новую doPost (соответственно для post-запросов, что несколько сложнее, но как-то правильнее имхо). Добавляем в Google Apps Script:
Только в отличие от get, для post запросов нужно развернуть приложение, дав к нему доступ для всех пользователей (и в дальнейшем не забывать обновлять публикацию после изменения кода). При post запросах использовать сформированную здесь ссылку (с /exec в конце). Может у вас получится использовать и пробное развертывание (ссылка с /dev в конце) для post запросов, но я не осилил, там довольно сложная система предоставления прав и авторизации, легче развернуть как основное. Скрипт для Tasker:
Файл для импорта проекта в таскер: Spotify.prj.zip В переменную %SpotifyUrl помещаем url, полученный при развертывании. Я отправляю на сервер ид трека, его название и исполнителя. Можете это список подстроить под свои нужды. Если будете подтягивать информацию по треку со спотифая, то достаточно одного ид. Если будете таким образом сами формировать историю прослушивания, то можно отключить задачу runTasks_, которая каждые 15 минут обращается за данными к Spotify (чтобы немного сэкономить ресурсы гугла и спотифая 😊). Для этого удалить из триггеров соответствующую запись и закомментировать в библиотеке одну строку в классе Clerk (у меня это 3523 строка):
|
Beta Was this translation helpful? Give feedback.
-
Спасибо, всё получилось.
Ну и fromFormToFile запускать через триггер. Например, раз в 15 минут. |
Beta Was this translation helpful? Give feedback.
-
моя тупость только в оправдание ) |
Beta Was this translation helpful? Give feedback.
-
Исправил обработку ошибок в коде, теперь при возникновении любых ошибок ( например Access not granted or expired ) форма с треками не будет очищаться. |
Beta Was this translation helpful? Give feedback.
-
Описание.
Ведение истории прослушивание треков для Android и Windows, дает один и тот же результат, что и эта история, но из-за изменения логики ведения истории в новых версиях приложений стало невозможно использовать.
Плюсы:
Минусы:
Суть схемы работы.
Как только мы включаем музыку на своем устройстве мы отправляем uri нашего текущего трека в гугл форму, форма будет временным хранилищем для нашей истории, далее скрипт гуфи подтягивает треки накопившиеся в форме, как часто он должен тянуть треки зависит от вас, я беру раз в час. После того как треки попали в скрипт они очищаются от дубликатов, добавляется текущая дата как дата прослушивания(played_at) и выдаются вам для ваших целей, форма автоматически очищается и ждет новых поступлений треков.
Note
Не забывайте: после вызова основной функции, google форма сразу очищается, и повторно эти треки вы уже не получите. Если вам по какой-то причине не нужно очищать форму, то закомментируйте в функции readTracks эту строку:
form.deleteAllResponses();
Инструкция первого запуска.
1. Копируем код ниже в отдельный файл, например
my-module.gs
, что бы жил независимо от обновлений основной библиотеки.2. Создаем и настраиваем гугл форму.
Форма
Настройка формы
Вставляем id формы в скрипт Goofy
Получаем id бокса для ответа и публичный url формы
3. Настраиваем таскер в андроиде
Android
Для отправки треков в форму с андроида выполняем следующие действия:
Настраиваем таскер
В таскере проделываем следующие:
video_2022-12-07_15-17-25.mp4
Не забываем прожимать в конце галочки, что бы таскер все сохранил, если все сделали правильно то теперь при прослушивании трека в Spotify у вас должен отправиться его uri в форму, настройка таскера завершена.
4. Настраиваем приложение Windows
Windows
Для настройки клиента в Windows будет использоваться модификация SpotX
Поддерживается только десктопное приложение, версия 1.1.90 и выше
iex "& { $(iwr -useb 'https://raw.githubusercontent.com/SpotX-Official/spotx-official.github.io/main/run.ps1') } -new_theme -urlform_goofy 'https://docs.google.com/forms/u/0/d/e/1FAIpQLSeLoPVRCHw1brIywcVjwI3Wfn8roSZALOgaWcAEkytI4BZIjA/formResponse' -idbox_goofy '2092622422'"
Win + R
ввести словоpowershell
5. Вызываем функцию из Goofy
Ребят извиняюсь за гифки, не было времени записать полноценные видосы. Всем добра 🖐
Beta Was this translation helpful? Give feedback.
All reactions