Merge pull request 'add support for registries' (#2) from r1k/twtxt-c:main into main

Reviewed-on: #2
This commit is contained in:
g1n 2021-07-08 15:44:23 +00:00
commit 864f01df9f
1 changed files with 61 additions and 1 deletions

62
twtxt-c
View File

@ -26,7 +26,21 @@ Commands:
tweet Append a new tweet to your twtxt file.
unfollow Remove an existing source from your...
view Show feed of given source.
registry Show registers\n"
reg list Show registers
reg add Add your twtxt to registry
reg users List users on the registry
reg twts Fetch recent tweets from registry
reg mentions search for mentions by url
reg tag Search for tags
"
}
read_config () {
declare -A v=()
while read -r var value; do
v[$var]=$value
done < $config/registry
}
case $1 in
-h | --help)
@ -45,6 +59,7 @@ case $1 in
read -p "URL to twtxt [https://example.com/twtxt.txt]: " url
url=${url:-"https://example.com/twtxt.txt"}
printf "[twtxt]\n nick = %s\n twtfile = %s\n url = %s\n" "$nick" "$path_to_twtxt" "$url" >> $config/config
printf "https://twtxt.envs.net/api/plain/\nhttps://twtxt.tilde.institute/api/plain/\n" > $config/registry
;;
tweet)
export config=/home/$USER/.config/twtxt-c/config
@ -53,6 +68,51 @@ case $1 in
view)
curl $2 2>/dev/null | grep -v "#" | awk 'BEGIN { FS = "\t" } ; {print $2}'
;;
reg)
case $2 in
list)
cat /home/$USER/.config/twtxt-c/registry
;;
add)
config=/home/$USER/.config/twtxt-c/
declare -A v=()
while read -r line; do
var=$(echo $line | awk '{print $1}' )
value=$(echo $line | awk '{print $3}' )
v[$var]=$value
done < $config/config
req="https://twtxt.tilde.institute/api/plain/users?url=${v[url]}&nickname=${v[nick]}"
req2="https://twtxt.envs.net/api/plain/users?url=${v[url]}&nickname=${v[nick]}"
echo "post these requests:"
echo "curl -X POST $req"
echo "curl -X POST $req2"
#curl -X POST $req
#curl -X POST $req2
# I have commented the actual curl request so that I accidentally re-register myself during testing
;;
users)
curl 'https://twtxt.tilde.institute/api/plain/users'
curl 'https://twtxt.envs.net/api/plain/users' ;;
twts)
curl 'https://twtxt.tilde.institute/api/plain/tweets'
curl 'https://twtxt.envs.net/api/plain/tweets'
;;
mentions)
url=$3
req="https://twtxt.tilde.institute/api/plain/mentions?url=$url"
req2="https://twtxt.envs.net/api/plain/mentions?url=$url"
curl $req
curl $req2
;;
tag)
tag=$3
req="https://twtxt.tilde.institute/api/plain/tags/$tag"
req2="https://twtxt.envs.net/api/plain/tags/$tag"
curl $req
curl $req2
;;
esac ;;
*)
printf "Work in progress\n" ;;
esac