news

Я давно собирался такое сделать, но все не доходили руки. Идея такая — добавить минимально-достаточный API к нашему сайту для того, чтоб можно было из ваших гениальных приложений с ним (сайтом) работать по людски. И сейчас есть энтузиасты которые парсят страницы, ходят по ссылкам и занимаются прочими непотребными делами, и это не их вина — никакого другого способа просто не было. А теперь такой есть.

API простой, прямой и явный. Базовый URL https://radio-t.com/site-api

  • GET /last/{posts}?categories=podcast,prep — взять последних {posts} в определенных категориях. Категории опциональны — пример: https://radio-t.com/site-api/last/5?categories=podcast вернет 5 самых свежих подкастов

  • GET /search?q=text-to-search&skip=10&limit=5 — поискать по слову в описании подкаста, skip и limit опциональны — пример: https://radio-t.com/site-api/search?q=mongo&limit=10 вернет до 10 самых свежих подкастов в описании которых есть слово “mongo”

Оба вызова возвращают JSON лист, с элементами вида:

type Entry struct {
  URL        string      `json:"url"`                   // url поста
  Title      string      `json:"title"`                 // заголовок поста
  Date       time.Time   `json:"date"`                  // дата-время поста в RFC3339 
  Categories []string    `json:"categories"`            // список категорий, массив строк
  Image      string      `json:"image,omitempty"`       // url картинки
  FileName   string      `json:"file_name,omitempty"`   // имя файла
  Body       string      `json:"body,omitempty"`        // тело поста в HTML
  ShowNotes  string      `json:"show_notes,omitempty"`  // пост в текстовом виде
  AudioURL   string      `json:"audio_url,omitempty"`   // url аудио файла
  TimeLabels []TimeLabel `json:"time_labels,omitempty"` // массив временых меток тем
}

type TimeLabel struct {
  Topic    string    `json:"topic"`               // название темы
  Time     time.Time `json:"time"`                // время начала в RFC3339
  Duration int       `json:"duration,omitempty"`  // длительность в секундах
}

Баг отчеты, предложения по улучшению/рассширению приветствуются в комментариях.

Переход на hugo произошел. Для слушателей это должно мало что изменить, но для авторов подкаста — это большое дело. Вместо мучительного ожидания публикации подкаста, что занимало около 15 минут, hugo строит это все за 4 секунды.

Мы долго жили на octopress перейдя на него 4+ года назад. Все эти годы он, по большей части, работал исправно, но годы берут свое и для наших размеров он перестал подходить.

Вся основная работа по переходу на Hugo была проделана добровольными помощниками, за что им огромное спасибо. Самая горячая благодарность Егору С. и Ивану Б.

О глюках и багах можно и нужно сообщать в комментариях и, желательно, предложить починку.

Подобные тексты принято начинать в стиле «Когда-то давно, в далекой галактике, два человека и не думали…». Но нам не до длинных вступлений. Буквально через полторы недели очередной, 510 выпуск нашего подкаста придется на ту же дату — 27 августа, — с которой 10 лет назад этот подкаст и начался, а у нас еще гости не собраны и подарки не заказаны.

Да, нашему подкасту вот-вот исполнится 10 лет. И мы приглашаем всех желающих поучаствовать в организации праздника. Если вы компания, которая хочет отметиться в юбилейном выпуске Радио-Т подарками для наших слушателей — напишите нам на [email protected], что и на каких условиях вы хотите подарить нашей аудитории. Если вы хотите воспользоваться уникально большой аудиторией в уникальный день — напишите нам на [email protected], мы расскажем, как купить у нас рекламу.

А если вы просто хотите поделиться с нами впечатлениями от 10 лет, прожитых вместе — напишите на [email protected], присылайте туда картинки, аудио и видеоролики — короче, поздравляйте нас и наших слушателей, а мы поделимся вашими поздравлениями в прямом эфире юбилейного выпуска.

27 августа 2016 года, 23:00 МСК, прямой эфир.

К юбилейному 400 выпуску подкаста, добрые люди выдали нам всякого хорошего в фонд подарков слушателям. Спасибо, добрые люди! Авторы подкаста и слушатели вам очень благодарны.

Выбор победителей завершен. Все, кто ответили правильно и были выбраны прекрасной четвертинкой, в ближайшие дни получат промо-коды на соответствующие приложения или сервисы.

Полный список подарков:

Как и предупреждали — ключ раздачи последних выпусков подкаста изменен и это теперь BGDUABD2AAF4H2A324AG4DIACY7CPYAK7. Если смена приведет к ожидаемому увеличению скорости и улучшению стабильности раздачи, то подобную процедуру проведем со всеми остальными ключами.

Причина этого действия в том, что наш ключ был создан в старо-давние времена (больше года назад) и с тех пор btsync поменял много чего, включая и логику генерации read–only ключей. После длительных попыток решить проблемы с низкой скоростью и ненадежностью доставки в свежих версиях, их служба поддержки предложила смену ключей как единственный выход.

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

Сегодня мы попытались с этим безобразием покончить. Новый сайт друзей позволит вести учет и контроль всех друзей подкаста. Для тех кто нам помогал раньше, но не нашел себя в списках, теперь есть возможность добавить себя просто кликнув тут

Да, сайтик там конечно с вполне инженерным дизайном, но у нас тут специалистов по “сделать красиво” среди ведущих не отыскать. Но если кто захочет прикрутить к этому делу красивый CSS или вообще все переиначить — пишите на [email protected]

У нас появился странный, но любопытный и весьма гиковский способ получать подкасты — BitTorrent Sync

Установив программу вы можете “подписаться”:

  • на свежие выпуски RR3RLFHKPURGR66TNG2JLO52PYCLBUOIB
  • и/или на полный архив RDFAY4TUO7EDALT7HQXJXQDGWVL64XCVG

Все это дело похоже на синхронизацию по типу Dropbox но работает через P2P, и чем больше людей участвуют — тем шустрее все это бежит. Можно почитать как оно работает.

Этот новый способ добавлен в нашу автоматизацию и будет обновлятся паралелльно с существующими каналами доставки.

Комментарии