Аналогичный клиент для Kufar.by только на bash.
Bash:
#!/bin/bash
TOKEN=""
URL="https://api.kufar.by/messaging-api/v3/conversations?limit=10&offset=0"
HEADERS=(
-H "User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:142.0) Gecko/20100101 Firefox/142.0"
-H "Authorization: Bearer $TOKEN"
-H "X-App-Name: Web Kufar"
-H "Content-Type: application/json"
-H "Origin: https://www.kufar.by"
)
format_date() {
date -d "${1/Z/+00:00}" "+%d.%m.%Y %H:%M" 2>/dev/null || echo "$1"
}
while true; do
clear
echo "[$(date '+%H:%M:%S')] Проверка непрочитанных сообщений..."
response=$(curl -s "${HEADERS[@]}" "$URL")
if [ -z "$response" ]; then
echo "Ошибка: пустой ответ от сервера"
sleep 60
continue
fi
conversations=$(echo "$response" | jq -c '.conversations[] | select(.unseen > 0)')
count=$(echo "$conversations" | jq -s length 2>/dev/null)
if [ "$count" -gt 0 ]; then
echo
echo "НОВЫЕ НЕПРОЧИТАННЫЕ СООБЩЕНИЯ:"
echo "================================"
while IFS= read -r conv; do
ad_subject=$(echo "$conv" | jq -r '.ad_info.subject')
participant_name=$(echo "$conv" | jq -r '.participant_info.name')
last_msg_preview=$(echo "$conv" | jq -r '.last_message.preview')
last_msg_time_iso=$(echo "$conv" | jq -r '.last_message.timestamp')
last_msg_time=$(format_date "$last_msg_time_iso")
unseen_count=$(echo "$conv" | jq -r '.unseen')
ad_link=$(echo "$conv" | jq -r '.ad_info.link')
echo
echo "Объявление: $ad_subject"
echo "От: $participant_name"
echo "Сообщение: $last_msg_preview"
echo "Дата: $last_msg_time"
echo "Непрочитанных: $unseen_count"
echo "Ссылка: $ad_link"
echo "--------------------------------"
done <<< "$conversations"
else
echo
echo "Нет новых непрочитанных сообщений."
fi
sleep 60
done