Как стать автором
Обновить

ActivityPub в Awakari

Уровень сложности Средний
Время на прочтение 2 мин
Количество просмотров 484
Автор оригинала: Andrei Kurilov

Сегодня всё больше и больше сервисов объявляют о своей поддержке ActivityPub, в том числе даже такие, как Tumblr или Threads. И это ожидаемо, так как ActivityPub позволяет сохранять контроль над собственными данными, в отличие от закрытых сервисов Meta. Кроме того, это позволяет обмениваться данными более независимо (Fediverse). Применение ActivityPub не ограничивается социальными сетями и блогами. Есть сервисы для хостинга изображений, видео, музыки и многое другое.

Если рассматривать все эти активности как события, то это позволит сервису Awakari открыть целое новое измерение в Fediverse. Используя Awakari можно отслеживать интересные события из неограниченного множества источников.

Термины

Awakari - бесплатный сервис, который фильтрует события из общего потока по критериям пользователя (ключевые слова, числовые условия, группы условий). События собираются из множества различнх источников (RSS/Atom, WebSub, Telegram, Fediverse).

В терминах ActivityPub источник событий называется "актор". Поэтому в дальнейшем я буду называть все возможнные "профили" и "аккаунты" Fediverse акторами.

При конвертации исходной активности (JSON) в формат CloudEvents (используется внутри Awakari) все атрибуты по возоможности сохраняются такими, какие они есть. Есть исключения и они задокументированы.

Использование на практике

Можно просто зайти в какой-нибудь сервис, поддерживающий протокол ActivityPub и скопировать адрес необходимого "актора". Например, в Mastodon, в профиле актора всегда есть кнопка "Copy link to profile".

В разных сервисах это выглядит немного по-разному, но обычно адрес актора легко найти. Есть различные форматы адреса актора:

  1. Прямая ссылка на актора, например: https://mastodon.social/users/Mastodon

  2. Ссылка-ярлык (алиас): https://mastodon.social/@Mastodon

  3. WebFinger адрес: [email protected]

Awakari понимает все три варианта и автоматически определяет прямую ссылку на актора из ярлыка или WebFinger адреса. Внутри системы источник всегда регистрируется только по прямой ссылке. После получения адреса актора нужно открыть интерфейс Awakari и на вкладке "Pub" нажать кнопку "+ Source".

Если удалось определить актора и подписаться на него, система сообщает прямую ссылку на зарегистрированного актора. Теперь все активности данного актора будут поступать в Awakari. Можно создать какую-нибдуь подписку, чтобы фильтровать нужные события и ждать, пока что-нибудь интересное не произойдет. Тестировать тоже просто - добавьте собственный профиль в качестве источника и опубликуйте в Mastodon пост, содержащий ключевые слова, чтобы срабатывала ваша подписка:

Интеграция с ActivityPub сейчас лучше всего протестирована и работает с серверами на основе Mastodon, Friendica и Hubzilla. Теоретически, должны работать и остальные варианты, но некоторые сервисы пока сопротивляются отказываются.

Отдельное спасибо автору @grishkaaза статью Пишем минимальный ActivityPub-сервер с нуля, которая значительно облегчила всю работу в этом направлении.

Теги:
Хабы:
0
Комментарии 9
Комментарии Комментарии 9

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн