pleroma-cli/README.md

60 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# pleroma-cli
Эта ветка содержит прототип клиента, где взаимодействие с статусами\постами будет происходить через файлы
## Схема дерева файлов-постов сгруппированных по аккаунтам
```
[statuses]
|
|-[instance]
| |---[acct]
| | |
| | |--- [status_id]
| | | |
| | | |---content
| | | |---status-id.json
| | | |---reblog.id
| | | |---media_attachments.m3u8
| |... |--- ...
|...
```
На данный момент статусы теперь линкуются из папки all_statuses/$instance, где содержатся не сгруппированные посты
Время файлов внутри папки с постом ([status_id]) соответствует времени поста
## Что доступно:
### Режим мониторинга файлов и автообновление ленты (пока только home)
```
daemon_mode=yes ./pleroma-cli.sh
```
### Частичное взаимодействие с постами:
Чтобы добавить в избранное или бустануть пост нужно в папке с постом создать файл favourite и\или share
```
touch favourite
touch share
```
### Ответ на пост
Чтобы ответить на пост нужно в папке с постом создать файл message и написать туда свой ответ, затем создать файл reply
### Чтение
Учитывая то, что каждый пост-статус это файл, то вы можете вывести все посты за раз например так:
```
# Сортированный вывод текcтов всех постов в хронологическом порядке
cat $(/bin/ls all_statuses/instance.example/*/content --sort=time) | less
# все тексты постов
cat all_statuses/instance.example/*/content
# все тексты постов пользователя
cat statuses/instance.example/nick@abc/*/content
# Посмотреть все мультимедия вложения
cat all_statuses/instance.example/*/media_attachments.m3u8 | mpv --playlist=-
# Прочие "игры" с постами, например узнать кто более активен в вашем инстансе среди загруженных постов
cat all_statuses/instance.example/*/*.json | jj -l '..#.account.acct' | sort | uniq -c | sort -r
```