Email or username:

Password:

Forgot your password?
Top-level
top.ofthe.top

> > может быть, наконец-то в Феди будут группы уже

 Так они вроде и так есть, Lemmy, Kbin (этот мне даже больше lemmy нравится), да и у @grishka есть своя реализация.

24 comments
Dr. Quadragon ❌

@top

> есть своя реализация

Я пытаюсь туда что-то написать, и не работает нифига.

top.ofthe.top

Да, что-то в группе пост создать не получается, мне выдало ошибку Invalid local URL https://friends.grishka.me/groups/4, но на посты в группе ответить получилось.

Григорий Клюшников

top.ofthe.top, а ты как пытался это сделать?

top.ofthe.top

Сперва подписался на группу, в подписчиках появился. После пробовал и просто помянуть группу wow_look_a_group@friends.grishka.me, так сообщение отправляется без ошибок, но в группе не появляется. Попробовал URI группы https://friends.grishka.me/groups/4 в inReplyTo, в таком случае получал ошибку Invalid local URL https://friends.grishka.me/groups/4.

В первом случае JSON такой:

{
    "id": "https://top.ofthe.top/social/activity/2024/03/28/614bdc7cf4f6f/",
    "type": "Create",
    "actor": "https://top.ofthe.top/social/",
    "published": "2024-03-28T19:46:33.890683Z",
    "to": [
        "https://www.w3.org/ns/activitystreams#Public",
        "https://top.ofthe.top/social/followers/"
    ],
    "cc": [
        "https://friends.grishka.me/groups/4"
    ],
    "directMessage": false,
    "object": {
        "type": "Note",
        "attributedTo": "https://top.ofthe.top/social/",
        "inReplyTo": null,
        "content": "<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0442\u0430\u043a...</p>",
        "source": "<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0442\u0430\u043a...</p>",
        "sensitive": false,
        "summary": "",
        "tag": [
            {
                "href": "https://friends.grishka.me/groups/4",
                "name": "@wow_look_a_group@friends.grishka.me",
                "type": "Mention"
            }
        ],
        "attachment": [],
        "url": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/",
        "id": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/",
        "published": "2024-03-28T19:46:33.887900Z",
        "context": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/",
        "conversation": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/",
        "contentMap": {
            "ru": "<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0442\u0430\u043a...</p>"
        },
        "to": [
            "https://www.w3.org/ns/activitystreams#Public",
            "https://top.ofthe.top/social/followers/"
        ],
        "cc": [
            "https://friends.grishka.me/groups/4"
        ],
        "actor": "https://top.ofthe.top/social/"
    },
    "context": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/",
    "conversation": "https://top.ofthe.top/social/status/2024/03/28/614bdc7cf44c5/"
}

Во втором случае JSON такой:

{
    "id": "https://top.ofthe.top/social/activity/2024/03/28/9bac8c3f5b44/",
    "type": "Create",
    "actor": "https://top.ofthe.top/social/",
    "published": "2024-03-28T19:24:56.425651Z",
    "to": [
        "https://www.w3.org/ns/activitystreams#Public",
        "https://friends.grishka.me/users/1",
        "https://top.ofthe.top/social/followers/"
    ],
    "cc": [
        "https://friends.grishka.me/groups/4"
    ],
    "directMessage": false,
    "object": {
        "type": "Note",
        "attributedTo": "https://top.ofthe.top/social/",
        "inReplyTo": "https://friends.grishka.me/groups/4",
        "content": "<p>\u0410 \u0447\u0442\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0432 \u0433\u0440\u0443\u043f\u043f\u0443 \u043c\u043e\u0436\u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c? \ud83e\udd14</p>",
        "source": "<p>\u0410 \u0447\u0442\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0432 \u0433\u0440\u0443\u043f\u043f\u0443 \u043c\u043e\u0436\u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c? \ud83e\udd14</p>",
        "sensitive": false,
        "summary": "",
        "tag": [
            {
                "href": "https://friends.grishka.me/groups/4",
                "name": "@wow_look_a_group@friends.grishka.me",
                "type": "Mention"
            },
            {
                "href": "https://friends.grishka.me/grishka",
                "name": "@grishka@friends.grishka.me",
                "type": "Mention"
            }
        ],
        "attachment": [],
        "url": "https://top.ofthe.top/social/status/2024/03/28/614bd7a79779d/",
        "id": "https://top.ofthe.top/social/status/2024/03/28/614bd7a79779d/",
        "published": "2024-03-28T19:24:56.419213Z",
        "context": "https://friends.grishka.me/groups/4",
        "conversation": "https://friends.grishka.me/groups/4",
        "contentMap": {
            "ru": "<p>\u0410 \u0447\u0442\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0432 \u0433\u0440\u0443\u043f\u043f\u0443 \u043c\u043e\u0436\u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u043f\u0438\u0441\u0430\u0442\u044c? \ud83e\udd14</p>"
        },
        "to": [
            "https://www.w3.org/ns/activitystreams#Public",
            "https://friends.grishka.me/users/1",
            "https://top.ofthe.top/social/followers/"
        ],
        "directMessage": false,
        "cc": [
            "https://friends.grishka.me/groups/4"
        ],
        "actor": "https://top.ofthe.top/social/"
    "context": "https://friends.grishka.me/groups/4",
    "conversation": "https://friends.grishka.me/groups/4"
}

Сперва подписался на группу, в подписчиках появился. После пробовал и просто помянуть группу wow_look_a_group@friends.grishka.me, так сообщение отправляется без ошибок, но в группе не появляется. Попробовал URI группы https://friends.grishka.me/groups/4 в inReplyTo, в таком случае получал ошибку Invalid local URL https://friends.grishka.me/groups/4.

Григорий Клюшников

top.ofthe.top, у тебя вот тут странное чот, ты не заэскейпил <p> внутри блока кода, у меня из-за этого парсер немного попердолило

top.ofthe.top

Глянул посты в группе, вот эта штука обязательна? ) Если да то неудивительно что из мастодона нельзя туда написать.

    "target": {
        "type": "Collection",
        "id": "https://friends.grishka.me/groups/4/wall",
        "attributedTo": "https://friends.grishka.me/groups/4"
    }
top.ofthe.top

Эх, ну ок, у себя например добавлю, но по мне так лишняя сущность, можно было бы просто смотреть если в to/cc uri группы, то и обрабатывать соответсвующим образом. Тогда бы и от мастодона не приходилось бы ждать реализации, оно само бы заработало.

Григорий Клюшников

top.ofthe.top, не лишняя. У меня есть конкретная цель — чтобы можно было постить не в профиль. Чтобы ты мог постить в группу, и нигде кроме группы, совсем, вообще, это не появлялось. Сделать это так, чтобы оно было совместимо с мастодоном, невозможно. Но где-то был PR для мастодона, который добавлял в него группы по моей спецификации.

Григорий Клюшников

Dr. Quadragon ❌, ¯\_(ツ)_/¯
В плероме тоже собирались, но как-то, похоже, так и не собрались.

В пиксельфеде Даня периодически хвастается ими, что вот-вот, ещё чуть-чуть и зарелижу, но это уже больше двух лет продолжается.

В остальных вроде никто ничего не собирался. Из реддитных, которые lemmy и kbin, у меня сообщества показываются как группы, но в устройство постинга в них я не вдавался. Но по-моему там тоже какая-то очередная дичь с Announce.

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

Dr. Quadragon ❌, ¯\_(ツ)_/¯
В плероме тоже собирались, но как-то, похоже, так и не собрались.

В пиксельфеде Даня периодически хвастается ими, что вот-вот, ещё чуть-чуть и зарелижу, но это уже больше двух лет продолжается.

В остальных вроде никто ничего не собирался. Из реддитных, которые lemmy и kbin, у меня сообщества показываются как группы, но в устройство постинга в них я не вдавался. Но по-моему там тоже какая-то очередная дичь с Announce.

Dr. Quadragon ❌ replied to Григорий

@grishka
> нормальных групп никто ещё не сделал

Г-сп-ди, история с группами в Fediverse - это литералли xkcd://927

> от потребностей пользователя

Вот тебе потребность пользователей: постить в группы из внешнего Федиверса. Я так полагаю, пользователей с этой потребностью гораздо больше, чем пользователей с потребностью "недопустимо, чтобы наружу в UX торчали хвосты от протокола, вроде тех же постов в группы, которые видны в профилях авторов"

Григорий Клюшников replied to Dr. Quadragon ❌

Dr. Quadragon ❌, если что, этот xkcd не особо применим. Реализация мастодона совместима с моей (мы даже тестили), пиксельфед не тестили, но он тоже обещает, что всё будет совместимо. Всё логично: раз я сделал группы первым, я придумал расширение активитипаба для них, а остальные его подхватывают.

Dr. Quadragon ❌ replied to Григорий

@grishka

> Реализация мастодона совместима с моей

Видишь реализацию групп?

И я не вижу.

А она есть.

mittorn replied to Dr. Quadragon ❌

@drq @grishka
>А она есть.
но... где?

Dr. Quadragon ❌ replied to Григорий

@grishka Отлично, я в восторге, в проде она когда будет? Есть шанс увидеть ее при жизни?

@mittorn

Григорий Клюшников replied to Dr. Quadragon ❌

Dr. Quadragon ❌, я не знаю, спроси в самом пулл реквесте

mittorn replied to Dr. Quadragon ❌

@drq @grishka клогда фронтенд вцидимо сотанется только выкидывать. У меня сегодня колонка отправки сообщений ДВАЖДЫ становилась некликабельной. ДОКОЛЕ?

top.ofthe.top replied to Григорий

> > вроде тех же постов в группы, которые видны в профилях авторов.

Ну хз, я это воспринимал как плюс. Если в группе вахтёры мочераторы удалили твой пост, он остаётся доступным у тебя и пользователи его могут прочитать, это наоборот хорошо. Это решение одной из проблем классических форумов.

Ну а режим когда пост доступен только подписчикам группы можно понять для каких-то приватных групп, но я бы предпочёл чтобы это было опциональным и режим выставлялся автором поста. Те же закрытые группы могут иметь как открытые посты, доступные не только подписчикам, так и закрытые, доступные только подписчикам.

> > вроде тех же постов в группы, которые видны в профилях авторов.

Ну хз, я это воспринимал как плюс. Если в группе вахтёры мочераторы удалили твой пост, он остаётся доступным у тебя и пользователи его могут прочитать, это наоборот хорошо. Это решение одной из проблем классических форумов.

Ну а режим когда пост доступен только подписчикам группы можно понять для каких-то приватных групп, но я бы предпочёл чтобы это было опциональным и режим выставлялся автором поста. Те же закрытые группы могут...

Григорий Клюшников

Dr. Quadragon ❌, а ты с мастодона это пытаешься сделать что ли?

Dr. Quadragon ❌

@grishka да, у меня больше нет ничего. Ну, peertube еще есть, и pixelfed где-то

Go Up