mirror of
http://gitea.phreedom.club/localhost_frssoft/pleroma-cli
synced 2024-11-26 06:41:28 +00:00
Compare commits
5 commits
60ff687f24
...
49ebf083e1
Author | SHA1 | Date | |
---|---|---|---|
localhost_frssoft | 49ebf083e1 | ||
localhost_frssoft | e91e401a4a | ||
localhost_frssoft | 6e8d823726 | ||
localhost_frssoft | 599e776b4b | ||
localhost_frssoft | 5436687c43 |
|
@ -13,12 +13,13 @@
|
||||||
| | | |
|
| | | |
|
||||||
| | | |---content
|
| | | |---content
|
||||||
| | | |---status-id.json
|
| | | |---status-id.json
|
||||||
|
| | | |---reblog.id
|
||||||
| | | |---media_attachments.m3u8
|
| | | |---media_attachments.m3u8
|
||||||
| |... |--- ...
|
| |... |--- ...
|
||||||
|...
|
|...
|
||||||
```
|
```
|
||||||
На данный момент статусы теперь линкуются из папки all_statuses/$instance, где содержатся не сгруппированные посты
|
На данный момент статусы теперь линкуются из папки all_statuses/$instance, где содержатся не сгруппированные посты
|
||||||
Время папок с постами соотвествует постам
|
Время файлов внутри папки с постом ([status_id]) соответствует времени поста
|
||||||
|
|
||||||
|
|
||||||
## Что доступно:
|
## Что доступно:
|
||||||
|
@ -35,9 +36,15 @@ touch favourite
|
||||||
touch share
|
touch share
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Ответ на пост
|
||||||
|
Чтобы ответить на пост нужно в папке с постом создать файл message и написать туда свой ответ, затем создать файл reply
|
||||||
|
|
||||||
### Чтение
|
### Чтение
|
||||||
Учитывая то, что каждый пост-статус это файл, то вы можете вывести все посты за раз например так:
|
Учитывая то, что каждый пост-статус это файл, то вы можете вывести все посты за раз например так:
|
||||||
```
|
```
|
||||||
|
# Сортированный вывод текcтов всех постов в хронологическом порядке
|
||||||
|
cat $(/bin/ls all_statuses/instance.example/*/content --sort=time) | less
|
||||||
|
|
||||||
# все тексты постов
|
# все тексты постов
|
||||||
cat all_statuses/instance.example/*/content
|
cat all_statuses/instance.example/*/content
|
||||||
|
|
||||||
|
|
|
@ -804,7 +804,7 @@ delete_api_status()
|
||||||
write_api_status()
|
write_api_status()
|
||||||
{
|
{
|
||||||
if [ -n "$mediaattach" ]; then
|
if [ -n "$mediaattach" ]; then
|
||||||
media=$(upload_api_media | jj id)
|
media=$mediaattach
|
||||||
post_request --url "$instance_point"/statuses \
|
post_request --url "$instance_point"/statuses \
|
||||||
--data-urlencode "status@$1" \
|
--data-urlencode "status@$1" \
|
||||||
--data-raw "content_type=$content_type" \
|
--data-raw "content_type=$content_type" \
|
||||||
|
@ -831,7 +831,7 @@ edit_api_status()
|
||||||
upload_api_media()
|
upload_api_media()
|
||||||
{
|
{
|
||||||
post_request --url "$instance_point"/media \
|
post_request --url "$instance_point"/media \
|
||||||
--form "file=$mediaattach"
|
--form "file=$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
write_status_menu()
|
write_status_menu()
|
||||||
|
@ -996,18 +996,39 @@ if [ "$daemon_mode" = 'yes' ]; then
|
||||||
statuses_auto_update &
|
statuses_auto_update &
|
||||||
while true; do
|
while true; do
|
||||||
sleep 5
|
sleep 5
|
||||||
statuses_to_fav=$(/bin/ls $main_basedir/all_statuses/$instance/*/favourite 2>/dev/null)
|
for file_func in favourite share reply; do
|
||||||
statuses_to_share=$(/bin/ls $main_basedir/all_statuses/$instance/*/share 2>/dev/null)
|
statuses_file_action=$(/bin/ls $main_basedir/all_statuses/$instance/*/$file_func 2>/dev/null)
|
||||||
if [ -n "$statuses_to_fav" ]; then
|
if [ -n "$statuses_file_action" ]; then
|
||||||
status_id=$(dirname "$statuses_to_fav" | sed 's/.*\///g')
|
dir_status=$(dirname "$statuses_file_action")
|
||||||
favorite_api_status $status_id
|
if [ -f "$dir_status/reblog.id" ]; then
|
||||||
rm $statuses_to_fav
|
status_id=$(cat $dir_status/reblog.id)
|
||||||
|
else
|
||||||
|
status_id=$(echo $dir_status | sed 's/.*\///g')
|
||||||
fi
|
fi
|
||||||
if [ -n "$statuses_to_share" ]; then
|
|
||||||
status_id=$(dirname "$statuses_to_share" | sed 's/.*\///g')
|
case $file_func in
|
||||||
share_api_status $status_id
|
'favourite') favorite_api_status "$status_id" ; rm "$statuses_file_action" ;;
|
||||||
rm $statuses_to_share
|
'share') share_api_status $status_id ; rm "$statuses_file_action" ;;
|
||||||
|
'reply')
|
||||||
|
replyto=$status_id
|
||||||
|
if [ -d "$dir_status/attachments" ]; then
|
||||||
|
attach_id=''
|
||||||
|
echo "Uploading attachments..."
|
||||||
|
for attach in "$dir_status"/attachments/*; do
|
||||||
|
attach_id=$(upload_api_media "@$attach" | jj id)
|
||||||
|
attach_id="${attach_id},"
|
||||||
|
echo $attach_id
|
||||||
|
done
|
||||||
|
mediaattach=$(echo $attach_id | sed 's/,$//g')
|
||||||
|
echo $mediaattach
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
write_api_status $dir_status/message
|
||||||
|
rm "$statuses_file_action"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
done
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ for i in $ids; do
|
||||||
# Fields
|
# Fields
|
||||||
content=$(echo "$json" | jj "#[id=$i].content" | "$main_basedir"/utils/html_to_txt_render)
|
content=$(echo "$json" | jj "#[id=$i].content" | "$main_basedir"/utils/html_to_txt_render)
|
||||||
status_media_attachments=$(echo "$json" | jj -l "#[id=$i].media_attachments.#.url" | tr -d '"\v')
|
status_media_attachments=$(echo "$json" | jj -l "#[id=$i].media_attachments.#.url" | tr -d '"\v')
|
||||||
|
reblog=$(echo "$json" | jj -l "#[id=$i].reblog.id")
|
||||||
|
|
||||||
chmod 711 "$main_basedir"/all_statuses/$instance/$status_id
|
chmod 711 "$main_basedir"/all_statuses/$instance/$status_id
|
||||||
|
|
||||||
|
@ -21,8 +22,12 @@ for i in $ids; do
|
||||||
if [ -n "$status_media_attachments" ]; then
|
if [ -n "$status_media_attachments" ]; then
|
||||||
echo "$status_media_attachments" > "$main_basedir"/all_statuses/$instance/$status_id/media_attachments.m3u8
|
echo "$status_media_attachments" > "$main_basedir"/all_statuses/$instance/$status_id/media_attachments.m3u8
|
||||||
fi
|
fi
|
||||||
|
if [ -n "$reblog" ]; then
|
||||||
|
echo "$reblog" > "$main_basedir"/all_statuses/$instance/$status_id/reblog.id
|
||||||
|
fi
|
||||||
|
|
||||||
chmod 600 "$main_basedir"/all_statuses/$instance/$status_id/*
|
chmod 600 "$main_basedir"/all_statuses/$instance/$status_id/*
|
||||||
touch -d "$status_date" "$main_basedir"/all_statuses/$instance/$status_id
|
touch -d "$status_date" "$main_basedir"/all_statuses/$instance/$status_id/*
|
||||||
done
|
done
|
||||||
|
|
||||||
export ids
|
export ids
|
||||||
|
|
Loading…
Reference in a new issue