2020-12-12 01:26:39 +01:00
|
|
|
#!/bin/bash
|
|
|
|
########################################################################
|
|
|
|
# Author: Fred (support@qo-op.com)
|
|
|
|
# Version: 2020.12.03
|
|
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
|
|
########################################################################
|
|
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
|
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
|
|
|
ME="${0##*/}"
|
|
|
|
|
2020-12-25 18:27:47 +01:00
|
|
|
# create swarm_map and my_swam files
|
2020-12-25 19:52:08 +01:00
|
|
|
echo "" > ~/.zen/A_my_swarm.txt
|
2020-12-25 20:15:44 +01:00
|
|
|
echo "" > ~/.zen/A_swarm_map.txt
|
2020-12-12 01:26:39 +01:00
|
|
|
|
|
|
|
########################################################################
|
|
|
|
# ENVIRONEMENT DETECTION + IPFS ~/.zen/ipfs/.$IPFSNODEID/G1SSB/_info
|
|
|
|
########################################################################
|
|
|
|
IPFSNODEID=$(ipfs id -f='<id>\n')
|
|
|
|
[[ $IPFSNODEID == "" ]] && echo "ERROR missing IPFS Node id !! IPFS is not installed !?" && exit 1
|
|
|
|
isIPFSRunning=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d ' ' -f 1)
|
|
|
|
[[ ! $isIPFSRunning ]] && echo "ERROR! ipfs daemon is not running. EXIT" && exit 1
|
|
|
|
########################################################################
|
|
|
|
|
|
|
|
# Force Strict #swarm0 !!?
|
|
|
|
# ipfs bootstrap rm --all
|
|
|
|
liking_me_count=0
|
|
|
|
friend_of_mine_count=0
|
2020-12-25 17:27:17 +01:00
|
|
|
|
2020-12-12 01:26:39 +01:00
|
|
|
########################################################################
|
|
|
|
# Let's look for Friends and "IPFS swarm connect" with them
|
|
|
|
########################################################################
|
|
|
|
# 1. Get Gchange "liking_me" people list
|
2020-12-25 17:27:17 +01:00
|
|
|
for liking_me in $(~/.zen/astrXbian/zen/jaklis/jaklis.py like | jq -r '.likes[].issuer');
|
2020-12-12 01:26:39 +01:00
|
|
|
do
|
2020-12-25 19:39:25 +01:00
|
|
|
[[ "$liking_me" == "" ]] && continue
|
2020-12-25 20:15:44 +01:00
|
|
|
# DE TOUS CEUX QUI M'AIMENT JE VAIS LIRE LES MESSAGES pour collecter les ipfstryme vers ~/.zen/A_swarm_map.txt
|
2020-12-25 18:10:39 +01:00
|
|
|
# SI JE SUIS LEUR AMI EN RETOUR, je conserve leur ID dans ~/.zen/A_my_swarm.txt
|
2020-12-12 01:26:39 +01:00
|
|
|
# Check if my like is reverse
|
2020-12-25 18:10:39 +01:00
|
|
|
liking_me_count=$((liking_me_count+1))
|
|
|
|
echo ">>>>>> CHECKING my friend n° $liking_me_count"
|
|
|
|
echo "READING 'ipfstryme' message from $liking_me"
|
|
|
|
for peerline in $(~/.zen/astrXbian/zen/jaklis/jaklis.py read -n50 -j | jq -r --arg friendKEY "$liking_me" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.content');
|
2020-12-12 01:26:39 +01:00
|
|
|
do
|
2020-12-25 19:52:08 +01:00
|
|
|
echo "PEERLINE: $peerline"
|
2020-12-25 19:39:25 +01:00
|
|
|
# KEEP A_swarm_map.txt uniq "$peerline" line
|
2020-12-25 18:10:39 +01:00
|
|
|
echo $peerline >> ~/.zen/A_swarm_map.txt
|
2020-12-25 19:52:08 +01:00
|
|
|
cat ~/.zen/A_swarm_map.txt | uniq > /tmp/A_swarm_map.txt
|
|
|
|
cp -f /tmp/A_swarm_map.txt ~/.zen/A_swarm_map.txt
|
|
|
|
|
|
|
|
# Get ipfsnodeid
|
2020-12-25 18:43:39 +01:00
|
|
|
ipfsnodeid=$(echo "$peerline" | awk -F '/' '{print $8}')
|
2020-12-25 19:39:25 +01:00
|
|
|
[[ "$ipfsnodeid" == "" ]] && continue
|
2020-12-25 18:10:39 +01:00
|
|
|
whoisg1=$(~/.zen/astrXbian/zen/tools/ipfs_to_g1.py $ipfsnodeid)
|
|
|
|
echo "Am I friend whith $whoisg1 ?"
|
|
|
|
friend_of_mine=$(~/.zen/astrXbian/zen/jaklis/jaklis.py like -p $whoisg1 | jq -r '.yours.pseudo'); # must contains my XZUID
|
|
|
|
if [[ "$friend_of_mine" != "" ]]; then
|
|
|
|
friend_of_mine_count=$((friend_of_mine_count+1))
|
2020-12-25 18:40:20 +01:00
|
|
|
echo "YEAH FRIEND ° $friend_of_mine_count !!!"
|
2020-12-25 18:10:39 +01:00
|
|
|
echo $peerline >> ~/.zen/A_my_swarm.txt
|
2020-12-25 18:40:20 +01:00
|
|
|
# REMOVING OLD ipfstryme MESSAGES
|
2020-12-25 18:10:39 +01:00
|
|
|
nbmessage=0
|
2020-12-25 18:40:20 +01:00
|
|
|
for messageid in $(~/.zen/astrXbian/zen/jaklis/jaklis.py read -n50 -j | jq -r --arg friendKEY "$whoisg1" '.[] | select(.pubkey == $friendKEY)' | jq 'select(.title == "ipfstryme")' | jq -r '.id')
|
2020-12-25 18:10:39 +01:00
|
|
|
do
|
|
|
|
nbmessage=$((nbmessage+1))
|
2020-12-29 23:05:53 +01:00
|
|
|
[ $nbmessage -gt 1 ] && echo "Delete $nbmessage OLD 'ipfstryme' messages from $whoisg1" && ~/.zen/astrXbian/zen/jaklis/jaklis.py delete -i $messageid
|
2020-12-25 18:10:39 +01:00
|
|
|
sleep 0.5
|
|
|
|
done
|
|
|
|
fi
|
2020-12-12 01:26:39 +01:00
|
|
|
done;
|
2020-12-25 18:10:39 +01:00
|
|
|
|
2020-12-12 01:26:39 +01:00
|
|
|
echo "__________________________________________"
|
2020-12-25 18:10:39 +01:00
|
|
|
|
2020-12-12 01:26:39 +01:00
|
|
|
done
|
|
|
|
|
2020-12-25 20:27:04 +01:00
|
|
|
# UNIQ file
|
|
|
|
cat ~/.zen/A_my_swarm.txt | uniq > /tmp/A_my_swarm.txt
|
|
|
|
cp -f /tmp/A_my_swarm.txt ~/.zen/A_my_swarm.txt
|
2020-12-12 01:26:39 +01:00
|
|
|
|
|
|
|
echo "####################################################
|
|
|
|
I have $friend_of_mine_count friends amoung $liking_me_count liking me people
|
|
|
|
__________________________________________
|
|
|
|
My actual #SWARM0"
|
|
|
|
ipfs swarm peers
|
2020-12-25 18:10:39 +01:00
|
|
|
|
|
|
|
# HONTO SEND MESSAGE ~/.zen/astrXbian/zen/jaklis/jaklis.py send -d $line -t 'Astroport' -m 'Rejoins mon #Swarm0 https://copylaradio.com'"
|
|
|
|
|
2020-12-12 01:26:39 +01:00
|
|
|
|