blockbot/bot.v1
Your Name 52a0a80cc3 fix
2022-11-30 16:29:37 -07:00

76 lines
1.7 KiB
Bash

#!/bin/bash
#############################
ENDPOINT='detroitriotcity.com'
SQL_USER='root'
SQL_PASS='sql'
SQL_HOST='127.0.0.1'
SQL_DATABASE='detroitriotcity'
users=( drunkenpriapus ThatWouldBeTelling chilliestbro Rasterman ArdainianRight rlier23 Leyonhjelm ChristiJunior verita84 admin cyberanathema blockbot )
STATS_MESSAGE="Daily Block Stats for: $ENDPOINT"
############################
cd /opt
TIME_STAMP="`date +%y-%m-%d` `date +%H:%M`"
TIME=`echo $TIME_STAMP | sed 's/.$//'`
blocks(){
data=''
echo $TIME_STAMP $TIME
echo "select * from activities where data->>'type' = 'Block';" | PGPASSWORD=$SQL_PASS psql -h $SQL_HOST -U $SQL_USER $SQL_DATABASE | grep "$TIME" > /tmp/list.txt
readarray list -d '|' < /tmp/list.txt
for i in "${list[@]}"
do
:
json=`echo $i | cut -d '{' -f2-3 | cut -d '}' -f1 | sed '1 i\{' | sed '$a } '`
blocker="@`echo $json | jq -r .actor | cut -d '/' -f5`@`echo $json | jq -r .actor | cut -d '/' -f3`"
blocked="@`echo $json | jq -r .object | cut -d '/' -f5`@`echo $json | jq -r .object | cut -d '/' -f3`"
message="$blocker blocked $blocked"
if [ -n "$1" ]; then
echo "$message"
else
toot post "$message" -m ./bot.png
fi
done
}
scalps(){
data=$STATS_MESSAGE
for i in "${users[@]}"
do
:
data=$data" @$i: ` echo "select * from activities where data->>'type' = 'Block';" | PGPASSWORD=$SQL_PASS psql -h $SQL_HOST -U $SQL_USER $SQL_DATABASE | grep -i $i | cut -d '"' -f18 | grep -iv $ENDPOINT | wc -l`! "
done
if [ -n "$1" ]; then
echo "$data"
else
toot post "$data"
fi
}
help(){
echo;echo "bot.sh blocks"
echo;echo "bot.sh blocks print"
echo "bot.sh scalps"
echo "bot.sh scalps print"
echo "bot.sh help";echo;echo
}
if [ "$1" = "blocks" ]; then
blocks "$2"
elif [ "$1" = "scalps" ]; then
scalps "$2"
else
help
fi