В конце предыдущей своей статьи я начал рассказывать о том как у меня организован просмотр сериалов, но решил что это — тема для отдельной заметки.


Для тех кто не знает что такое Alfred

Alfred — это Spotlight на стероидах. Умеет чуть более чем всё что умеет Spotlight, плюс, начиная со второй версии, поддерживает написание, а так же использование написанных другими людьми, так называемых, workflows. То бишь, расширений функциональности самописными скриптами. Для их написания поддерживается несколько скриптовых языков:


  • bash
  • zsh
  • php
  • ruby
  • python
  • perl
  • osascript
  • javascript

Речь в этой статье пойдет об одном из таких расширений.


Немного забегая вперед, хочу показать, что же у нас есть в итоге…
Когда обнаруживается время расслабиться и включить сериальчик, я запускаю Alfred, ввожу "сериалы" и получаю в ответ список загруженных.


Красота, не правда ли?


На деле, заголовок и подзаголовок берутся из имен директорий. Например, последняя строчка из списка выше — папка "Уэйуорд Пайнс[lostfilm]".


Когда выбираем интересующий пункт, запускается плеер (в моем случае — VLC) и начинает воспризводить первую непросмотренную серию из выбранного раздела. По окончании воспроизведения, он самостоятельно закрывается (у VLC есть параметр --play-and-exit). После чего скрипт предлагает удалить просмотренный эпизод, спрашивает насколько по пятибальной шкале он Вам понравился и отмечает оный просмотренным с соответствующим рейтингом на myshows.me. Уведомляет об успехе/неудаче. И, если уведомление гласит что все хорошо, кликом по нему можно попасть прямиком на страницу только что просмотренного эпизода.


Для уведомлений используется terminal-notifier, который включен в workflow.
Так же зависимостями являются пакеты requests и alfred-workflow для python. Оба тоже включены в workflow.


Перед использованием, workflow предложит указать:


  • Папку в которой лежат сериалы
  • Плеер который будет их воспроизводить
  • Логин и пароль с myshows.me

Бонусы


Помимио просмотра сериалов, сделал возможность посмотреть список уже вышедших, но еще не просмотренных по данным с аккуанта на myshows.me.


Unwatched


А так же, список тех что относительно скоро выйдут. Снова же используя api myshows.me и список подписок.


Mr. Robot


TBBT


Вводя название сериала после ключевого слова, можно фильтровать вывод, а по выбору пункта в любом из них, откроется страница соответствующего эпизода.


Ссылка на workflow.
Реализовано автообновление, используя GitHub Releases.

Поделиться с друзьями
-->

Комментарии (13)


  1. shuler
    10.07.2016 21:39
    +2

    Привет! Круто, что вы используете наш API, нам приятно)

    Мы, кстати, сделали новую версию API с OAuth и JSON-RPC и даже прикрутили к нему Swagger.
    https://api.myshows.me/shared/doc/

    Будут вопросы/предложения — пишите, с радостью ответим)


    1. FantomNotaBene
      11.07.2016 00:35

      Приветствую!
      Вам за API спасибо.
      Обращусь если будут мысли что добавить или нарисуются проблемы :)


  1. padla2k
    11.07.2016 11:21
    +2

    Выглядит не плохо, но есть проблемка — я не хочу КАЧАТЬ сериалы =) Я хочу их смотреть прямо с телека как поток.

    И я использую для этого soap4.me + Plex Server + Soap4.me plugin для Plex + Plex на телевизоре. Клиент плекса тащит через сервер с soap4.me метаданные, а потом напрямую тащит поток с сериалом на телек. Еще и отмечает просмотренные серии. Это ли не чудо? =)


    1. FantomNotaBene
      11.07.2016 11:32

      Очень неплохой подход, однако каждому — свое. Просто не мой случай :)
      Частенько бываю в дороге, либо на даче. В общем, где мобильный интернет оставляет желать лучшего, проводного нет, а время убить хочется.


      1. Shlom
        11.07.2016 13:42
        +1

        У soap4me есть очень удобная система подкастов — все будет качаться само на любое устройство, которое захотите.


        1. FantomNotaBene
          11.07.2016 15:43

          Не знал. Вы открыли мне глаза, благодарствую :)
          Вряд ли я буду этим пользоваться, однако возможность крайне интересная.


      1. Shtucer
        11.07.2016 15:10

        Это очень хороший подход! Я могу скачать, если поеду куда-то, а могу смотреть потоком, если дома сижу. У soap4.me полно косяков, которые неизвестно когда будут лечить, но есть обе возможности. А у myshows сразу нету такого функционала, но зато крутой айпи? Хочу, чтобы было очень круто и там и здесь. А я бы только сидел и выбирал кому кричать: shut up and take my money. И да, очень странно игнорировать Plex-пользователей, и уж совсем странно игнорировать XBMC/Kodi — пользователей.


        1. Shtucer
          11.07.2016 15:12

          Справедливости ради. У myshows всё же есть плагин. «Неофициальный». Найти его можно через FAQ.


        1. FantomNotaBene
          11.07.2016 15:40

          Вы, видимо, перепутали IP и API. А так же функционал и функциональность.
          Ну а вообще, лично я не имею отношения к myshows (просто использую их сервис), а так же не являюсь пользователем ни Плекса, ни Коди. Игнорировать пользователей странно, согласен, но обратитесь к товарищу в комментариях выше тогда уж (желательно, в PM). Донесите до него Вашу заинтересованность. Возможно, это будет полезнее.


          1. Shtucer
            11.07.2016 15:49

            Нет, не перепутал, откуда такая идея?
            Мой комментарий не имеет непосредственного отношения к статье, а, скорее, к вашему комментарию про «неплохой» подход у soap4.me. Почему вы меня отправляете в какой-то PM? Скажем так, я хотел бы чтобы soap и myshows стали отличными сервисами, чтобы и ваш подход к просмотру сериалов, и миллион других, было бы удобно реализовать и там и там. Почему я должен это обсуждать в личной переписке с разработчиками одного из сервисов?


            1. FantomNotaBene
              11.07.2016 15:59

              Вы написали "крутой айпи". Не думаю что Вы имели ввиду айпи адрес, скорее всего, это было об API.
              А функционал — математическое понятие. Не представляю как его можно использовать в контексте "у $название_сервиса нет такого функционала". Да, я любитель цепляться к словам.
              Теперь по сути.
              Я лишь пытаюсь донести до Вас что общение с разработчиками сервисов (не важно, личные сообщения или сообщение на почту техподдержки) и донесение до них Ваших идей может подтолкнуть первых к реализации последних. И это определенно будет полезнее описания своих желаний здесь, в комментариях.
              P.S. Прошу прощения если мои слова как-то Вас задели.


              1. Shtucer
                11.07.2016 16:48

                Мы можем соревноваться в умении цепляться к словам до самых морковкиных заговений, это ничего не изменит. Но если уж так получается, что вы такой дотошный, аки вошь портошная, то да, моё «айпи» следует читать, как "'эйпиай". «Функционал» читай, как п.2 — «комп. жарг., собир. то же, что функциональность; набор функций, возможностей, предоставляемых компьютерной программой, библиотекой функций и т. п.».
                А теперь, когда мы слова привели к общим понятиям, перейдём к улучшению мира?


                1. FantomNotaBene
                  11.07.2016 23:57

                  «айпи» следует читать, как «эпиай»

                  Хм, возможно, я один не знаю случаев когда IP [ ?a??pi? ], произносилось/читалось бы как API [ ?e?.pi?a? ], в том числе и при написании этих англицизмов на великом и могучем.
                  Насчет второго… почему-то всегда считал что неправильно использовать слово "функционал" в значении "функциональность". Википедия, Вы мне доказали, гласит иное. Однако и она — не истина в последней инстанции.
                  А насчет улучшения мира… всегда в деле :)