← All posts tagged ActivityPub

vt
· Edited

Большинство сообщений, прилетающих жуйку по протоколу ActivityPub — это сообщения о том, что пользователь hui удалился с сервера huemoe.myhomeinstance.vasyanfromschool.org. Не знаю, зачем hui или huemoe.myhomeinstance.vasyanfromschool.org, не знаю кто из них, присылают мне эту важнейшую информацию, учитывая что я никогда не пересекался с этим сервером в целом, ну да хрен с ним, пусть шлет. Но проблема в том, что шлют по-разному каждый раз и тут есть проблема. Одни присылают это, не подписав сообщение, и про проверке подписи я лезу к ним на сервер и они говорят — "такого у нас больше нет, удаляй!". Другие присылали корректно подписав подписью вновь умершего пользователя, при проверке говорили — "да, подпись моя, но я хуй знает кто это" (это починили уже github.com ).
Теперь я вижу что в мастодоне(!) откатились на такое же бестолковое поведение — подписывать сообщения мертвыми душами, по крайней мере сервер, приславший сообщение, подписанное мертвыми душами, утверждает что он — мастодон 2.8. Ох, не знаю, Васян или Женек эту хрень сделал!

vt

Разработчики Мастодон предлагают мне парсить html, который их поделие встроило внутрь структурированных (о том как они "структурированы" я писал ранее, ну не суть) данных.
Блеать, история повторяется по кругу: сначала одни идиоты(XSF) берут модный XML и не разбираясь в том, зачем нужны неймспейсы и схемы — шлепают на нем уебищный XMPP, в котором надо руками писать эвристику, находящую нужные данные.
Теперь новое поколение идиотов берет модный JSON, прикручивает к нему через жопу схему, которая мало того, что не разбирается никаким готовым парсером, так еще и пихают внутрь HTML! А потом они говорят, что злой Цукерберг отнимает у них пользователей. #zaplakala

vt

В общем, ActivityStreams — это такой "типизированный" JSON, в котором типы добавлены в рандомных местах по желанию наркоманов из IBM и W3C — w3.org — как это говно десериализовать? Зачем они прикручивали типы к жсону, если они берут и рандомно их опускают?

vt

В общем, в спеке я полностью разобрался, реализовал на жуйке и могу уже консультировать других 8) Вот только с существующими реализациями по-прежнему до конца не федерируется:
1) mastodon — публичные сервера показывают профили с жуйка, число подписчиков и сообщений, самих сообщений не показывает. Как диагностировать — неясно. На мои репорты — не отвечают.
Запустить локально — не удается: из гигабайта рубискриптов 500мб рубискриптов с нативными расширениями не собираются на маке (это надо сильно постараться, чтоб использовать такие расширения, чтоб не работали на любимой платформе рубидебилов). На линуксе — оно падает видимо по недостаточности гигабайта памяти на виртуалке.
2) plerome — отлично запускается, но показывает с жуйка только аватарки, остальное не показывает, да и вообще срет в лог ошибками констрейнтов в бд (типа один раз поискал пользователя, он его сразу пишет себе в базу, второй поиск уже не работает, ибо в базе такой пользователь уже есть, гениально!)
3) misskey — то ли японское, то ли китайское поделие, выглядит как самтыбаба.ру, поиска сторонних пользователей в ней не нашел.
Что еще можно попробовать? Или ну его в жопу и красноглазики обойдутся почтой? :)

vt

сейчас профили пользователей доступны через WebFinger, а бложики доступны как ActivityStreams 2.0-коллекции. Даю последний шанс красноглазикам жуйка — нужно как минимум потестить, сообщить ошибки, в идеале помогать дальше с добавлением постинга и всего остального что нужно для ActivityPub — иначе после выключения жаббера у красноглазых друзей останется только емайл :)

vt

Т.к. я не понимаю инопланетянский езыг, которым написаны эти спецификации, и не хочу читать гигабайт руби-скриптов мастодона, хотел пойти влоб — натравить их testsuite на жуйк и делать что оно просит: test.activitypub.rocks
А оно просит от меня какие-то инопланетянские галки! Где взять переводчика с этой херни на человеческий?