From c82d96394ff59436c61bf94227414bef3a8a4a39 Mon Sep 17 00:00:00 2001 From: poka Date: Thu, 2 Jan 2020 23:53:25 +0100 Subject: [PATCH 1/4] Fix spam bot --- bb_scripts/g1-info.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bb_scripts/g1-info.js b/bb_scripts/g1-info.js index 48dfd95..e4783e4 100644 --- a/bb_scripts/g1-info.js +++ b/bb_scripts/g1-info.js @@ -2,7 +2,7 @@ const bot = require('bbot'); const exec = require('child_process').exec; bot.global.text({ - contains: ['pubkey','publique','rib','public','cle', 'brocket rib'] + starts: ['pubkey','rib','brocket rib', 'brocket pubkey'] }, (b) => { username = b.message.user.name cmd = b.message.text From bf94b41551f8e1722fc0d52d828fe0f790a13df8 Mon Sep 17 00:00:00 2001 From: qo-op Date: Sat, 4 Jan 2020 01:04:10 +0100 Subject: [PATCH 2/4] SWARM & NODE_G1PUBKEY --- shell/init_keys.sh | 48 +++++++++++++++++++--------------------------- 1 file changed, 20 insertions(+), 28 deletions(-) diff --git a/shell/init_keys.sh b/shell/init_keys.sh index 1925eda..bc8fced 100755 --- a/shell/init_keys.sh +++ b/shell/init_keys.sh @@ -1,7 +1,7 @@ #!/bin/bash ################################################################## # Author: Fred (support@qo-op.com) -# Version: 0.1 +# Version: 0.2 # License: GPL (http://www.google.com/search?q=GPL) ################################################################## # CHECK & WARN | CREATE Keys (gpg encrypt, G1wallet, IPNS publish) @@ -9,37 +9,17 @@ MY_PATH="`dirname \"$0\"`" # relative MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized -if [[ -f $MY_PATH/.profile ]]; then - source $MY_PATH/.profile -elif [[ -f $MY_PATH/../.profile ]]; then - source $MY_PATH/../.profile -else - echo -e "${c_red}Le .profile n'existe pas$c_" - exit 1 -fi +if [[ -f $MY_PATH/.install/.GPATH ]]; then source $MY_PATH/.install/.GPATH; fi +if [[ -f $MY_PATH/../.install/.GPATH ]]; then source $MY_PATH/../.install/.GPATH; fi YOU=$(ps aux --sort=+utime | grep ipfs | tail -n 1 | cut -d " " -f 1) IPFSNODEID=$(su $YOU -c "ipfs id -f='\n'") NANODATE=$(date -u +%s%N) #1569692075385428020 -########################################################## -# CHECK LAST TIME NODE HAD ACTION : Calibrate NANODATE -if [[ -f ./wallets/.$IPFSNODEID/_nanodate ]]; then - last=$(cat ./wallets/.$IPFSNODEID/_nanodate) - timediff=$( echo "${NANODATE} - ${last}" | bc -l ) - # Get median nanodate before - # NODE TIME SYNC 600 milliards de nanosecondes = 600 s = 10 mn - if [[ $timediff -gt 600000000000 ]]; then - # RUN & LOG ntpdate - log "__SUB:ntpdate pool.ntp.org: $timediff $(ntpdate pool.ntp.org)" - export NANODATE=$(date -u +%s%N) - fi -fi - ################################################################## # G1sms+ Node KEYS (G1wallet, gpg, IPNS) ################################################################## -export GPGPASS=$(cat "/home/$YOU/.ipfs/config" | jq '.Identity.PrivKey' | sed s/\"//g) +export GPGPASS=$(cat "/home/$YOU/.ipfs/config" | jq '.Identity.PrivKey' | sed s/\"//g) #" if [ ! $GPGPASS ]; then echo "FATAL ERROR:: IPFS Node.Identity.PrivKey GPGPASS EMPTY"; exit; fi # GET SWARM KEY G1sms+ .ipfs/swarm.key @@ -53,8 +33,9 @@ if [ ! $SWARMKEY ]; then echo "FATAL ERROR:: .ipfs/swarm.key EMPTY"; exit; fi # # CLEF G1 DU SWARM SWARM_G1PUBKEY=$(cat "${GPATH}/g1sms.pub.key") +SWARM_G1AUTHFILE="${GPATH}/g1sms.priv.key" -# CLEF G1 NODE = CLEF G1 SWARM +# CLEF G1 NODE = CLEF G1 SWARM !! if [[ ! -e "./g1sms.preoni.pub.key" && -f "./g1sms.priv.key" ]]; then log "__SUB:initkeys.sh: Linking preoni Keys to SWARM G1 Keys" ln -s ./g1sms.priv.key ./g1sms.preoni.priv.key @@ -116,16 +97,27 @@ else # CREATE preoni FILES mv ./authfile ./g1sms.preoni.priv.key - echo NODE_G1PUBKEY > ./g1sms.preoni.pub.key + echo $NODE_G1PUBKEY > ./g1sms.preoni.pub.key fi +## INIT NODE G1 PUB & PRIV KEY NODE_G1PUBKEY=$(cat "${GPATH}/g1sms.preoni.pub.key") NODE_G1AUTHFILE="${GPATH}/g1sms.preoni.priv.key" - +########################################################## # MEMORIZE NODE NANODATE EXECUTION TIME (for ntpdate regular sync) -echo $NANODATE > ./wallets/.$IPFSNODEID/_nanodate +if [[ -f ./wallets/.$IPFSNODEID/_nanodate ]]; then + last=$(cat ./wallets/.$IPFSNODEID/_nanodate) + timediff=$( echo "${NANODATE} - ${last}" | bc -l ) + # NODE TIME SYNC 600 milliards de nanosecondes = 600 s = 10 mn + if [[ $timediff -gt 600000000000 ]]; then + # RUN & LOG ntpdate + log "__SUB:ntpdate pool.ntp.org: $timediff $(ntpdate pool.ntp.org)" + export NANODATE=$(date -u +%s%N) + fi + echo $NANODATE > ./wallets/.$IPFSNODEID/_nanodate +fi ################################################################ #INFORM ABOUT NODE CAPACITIES From ef332a91a35edac7c468dcbf0d9f74c7c8f4e80f Mon Sep 17 00:00:00 2001 From: poka Date: Sat, 18 Jan 2020 17:11:48 +0100 Subject: [PATCH 3/4] Maj multicanal --- bb_scripts/axiom.js | 5 +++-- bb_scripts/g1-info.js | 2 +- bb_scripts/g1sms.js | 6 +++--- debug/GSM_powerkey.sh | 4 ++-- shell/good.nodes.txt | 3 --- 5 files changed, 9 insertions(+), 11 deletions(-) diff --git a/bb_scripts/axiom.js b/bb_scripts/axiom.js index 9d05f4d..0b9e0ea 100644 --- a/bb_scripts/axiom.js +++ b/bb_scripts/axiom.js @@ -2,8 +2,7 @@ const bot = require('bbot'); const exec = require('child_process').exec; //ADMINS -var adminRooms = ["pokabizbot", "_recrutement", "compta-axiom", "_admin-at", "test-bot-chat", "poka"]; -//var adminRooms = exec("cat admins-chan.txt"); +var adminRooms = exec("pwd"); //cat admins-chan.txt"); bot.global.text({ contains: ['axiom adhérent','axiom adhérents','axiom adherent','axiom adherents'] @@ -17,6 +16,8 @@ bot.global.text({ roomName = b.message.user.name } + b.respond("JE SUIS LA" + adminRooms.) //kopa + if (adminRooms.indexOf(roomName) == -1) { cmd = "adherentsSoft" } else { diff --git a/bb_scripts/g1-info.js b/bb_scripts/g1-info.js index e4783e4..2c4d776 100644 --- a/bb_scripts/g1-info.js +++ b/bb_scripts/g1-info.js @@ -20,7 +20,7 @@ bot.global.text({ }); bot.global.text({ - contains: ['membre','membres'] + contains: ['membres g1','g1 membre','g1 membres'] }, (b) => { membres = exec("src/shell/g1-infos.sh membres", function(err, stdout, stderr) { if (err) { diff --git a/bb_scripts/g1sms.js b/bb_scripts/g1sms.js index f789481..218e0e8 100644 --- a/bb_scripts/g1sms.js +++ b/bb_scripts/g1sms.js @@ -5,8 +5,9 @@ const util = require('util') bot.global.text({ contains: ['TEST BSMS'] -}, (b) => { - b.respond("Test de G1SMS ...") +}, async (b) => { + await b.respond("Test de G1SMS ...") + const username = b.message.user.id membres = exec("g1sms/test.sh chat", function(err, stdout, stderr) { if (err) { b.respond("Une erreur est survenu ...") @@ -17,4 +18,3 @@ bot.global.text({ }, { id: 'sms-test' }); - diff --git a/debug/GSM_powerkey.sh b/debug/GSM_powerkey.sh index 91f4e71..9a4e357 100755 --- a/debug/GSM_powerkey.sh +++ b/debug/GSM_powerkey.sh @@ -9,8 +9,8 @@ if [ ! -e /sys/class/gpio/gpio4 ]; then fi echo "out" > /sys/class/gpio/gpio4/direction -#echo "0" > /sys/class/gpio/gpio4/value -#sleep 3 +echo "0" > /sys/class/gpio/gpio4/value +sleep 3 echo "1" > /sys/class/gpio/gpio4/value sleep 3 && $MY_PATH/gammu-restart.sh diff --git a/shell/good.nodes.txt b/shell/good.nodes.txt index 5409f60..800050c 100755 --- a/shell/good.nodes.txt +++ b/shell/good.nodes.txt @@ -1,7 +1,4 @@ -duniter.dethegeek.eu.org:443 duniter.moul.re:443 g1.duniter.fr:443 g1.duniter.org:443 g1.le-sou.org:443 -g1.monnaielibreoccitanie.org:443 -g1.presles.fr:443 From 1da87b7002c31bc264342839f1da8ed0e75c137c Mon Sep 17 00:00:00 2001 From: poka Date: Sun, 23 Feb 2020 19:26:19 +0100 Subject: [PATCH 4/4] =?UTF-8?q?Fix=20axiom=20adh=C3=A9rent=20in=20bbot=20s?= =?UTF-8?q?cripts=20and=20improve=20shell?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bb_scripts/admins-chan.txt | 1 + bb_scripts/aide.js | 2 +- bb_scripts/axiom.js | 17 +++++++++-------- bb_scripts/disabled/tpl.js | 2 +- bb_scripts/g1-info.js | 4 ++-- bb_scripts/g1sms.js | 2 +- bb_scripts/liens.js | 2 +- bb_scripts/reactions.js | 2 +- bb_scripts/reload.js | 2 +- bb_scripts/shell/helloasso.sh | 21 +++++++++++++++++++-- 10 files changed, 37 insertions(+), 18 deletions(-) create mode 100644 bb_scripts/admins-chan.txt diff --git a/bb_scripts/admins-chan.txt b/bb_scripts/admins-chan.txt new file mode 100644 index 0000000..710b2a3 --- /dev/null +++ b/bb_scripts/admins-chan.txt @@ -0,0 +1 @@ +biz-bot-admin diff --git a/bb_scripts/aide.js b/bb_scripts/aide.js index 7955247..d7bcd1c 100644 --- a/bb_scripts/aide.js +++ b/bb_scripts/aide.js @@ -8,7 +8,7 @@ bot.global.text({ }, (b) => { membres = exec("src/shell/aide.sh text", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/axiom.js b/bb_scripts/axiom.js index 0b9e0ea..143466f 100644 --- a/bb_scripts/axiom.js +++ b/bb_scripts/axiom.js @@ -2,7 +2,7 @@ const bot = require('bbot'); const exec = require('child_process').exec; //ADMINS -var adminRooms = exec("pwd"); //cat admins-chan.txt"); +//var adminRooms = exec("cat admins-chan.txt"); //cat admins-chan.txt"); bot.global.text({ contains: ['axiom adhérent','axiom adhérents','axiom adherent','axiom adherents'] @@ -16,18 +16,19 @@ bot.global.text({ roomName = b.message.user.name } - b.respond("JE SUIS LA" + adminRooms.) //kopa +// b.respond("JE SUIS LA" + adminRooms.) //kopa - if (adminRooms.indexOf(roomName) == -1) { - cmd = "adherentsSoft" - } else { +// if (adminRooms.indexOf(roomName) == -1) { + if (['biz-bot-admin', 'poka', 'brad.pi', '_pole_financements', '_axiom_business_plan', 'compta-axiom', 'communication', '_recrutement'].includes(roomName)) { cmd = "adherents" + process.env.hb_cmd = cmd + } else { + b.respond("Réservé aux administrateurs de l'association.") } - process.env.hb_cmd = cmd pubkey = exec("src/shell/helloasso.sh $hb_cmd", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } @@ -41,7 +42,7 @@ bot.global.text({ }, (b) => { membres = exec("src/shell/helloasso.sh cagnotte", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/disabled/tpl.js b/bb_scripts/disabled/tpl.js index 5253e78..5334b17 100644 --- a/bb_scripts/disabled/tpl.js +++ b/bb_scripts/disabled/tpl.js @@ -22,7 +22,7 @@ bot.global.text({ }, (b) => { membres = exec("src/shell/.sh", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/g1-info.js b/bb_scripts/g1-info.js index 2c4d776..c9048a1 100644 --- a/bb_scripts/g1-info.js +++ b/bb_scripts/g1-info.js @@ -10,7 +10,7 @@ bot.global.text({ process.env.hb_cmd = cmd pubkey = exec("src/shell/g1-infos.sh pubkey $hb_username \"$hb_cmd\"", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } @@ -24,7 +24,7 @@ bot.global.text({ }, (b) => { membres = exec("src/shell/g1-infos.sh membres", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/g1sms.js b/bb_scripts/g1sms.js index 218e0e8..e28bf24 100644 --- a/bb_scripts/g1sms.js +++ b/bb_scripts/g1sms.js @@ -10,7 +10,7 @@ bot.global.text({ const username = b.message.user.id membres = exec("g1sms/test.sh chat", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/liens.js b/bb_scripts/liens.js index 2f5e0f9..d05c269 100644 --- a/bb_scripts/liens.js +++ b/bb_scripts/liens.js @@ -10,7 +10,7 @@ bot.global.text({ process.env.hb_cmd = cmd membres = exec("src/shell/liens.sh $hb_cmd", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu ...") + b.respond("Une erreur est survenue ...") } else { b.respond(stdout) } diff --git a/bb_scripts/reactions.js b/bb_scripts/reactions.js index 43fe740..ee7b58e 100644 --- a/bb_scripts/reactions.js +++ b/bb_scripts/reactions.js @@ -4,7 +4,7 @@ const globe_delay = 60000; // 1 minute var globe_said = {}; bot.global.text({ - contains: ['facebook', 'google', 'amazon', 'apple', 'microsoft'] + contains: ['facebook', 'google', 'amazon', 'apple', 'microsoft', 'youtube'] }, (b) => { b.respondVia('react', ':hear_no_evil:'); }, { diff --git a/bb_scripts/reload.js b/bb_scripts/reload.js index 5f6ced0..a80b34b 100644 --- a/bb_scripts/reload.js +++ b/bb_scripts/reload.js @@ -7,7 +7,7 @@ bot.global.text({ function reload() { pubkey = exec("pm2 reload bbot --force", function(err, stdout, stderr) { if (err) { - b.respond("Une erreur est survenu: " + " - " + stderr) + b.respond("Une erreur est survenue: " + " - " + stderr) } else { b.respond("Biz a été rechargé") } diff --git a/bb_scripts/shell/helloasso.sh b/bb_scripts/shell/helloasso.sh index f94c7dd..19a7941 100755 --- a/bb_scripts/shell/helloasso.sh +++ b/bb_scripts/shell/helloasso.sh @@ -5,7 +5,15 @@ ha="https://api.helloasso.com/v3" adherents() { url="$ha/campaigns/000001053192/actions.json?type" - curl -m 5 --user $ids -s $url | jq -r '.resources[] | .date + " , " + .first_name + " " + .last_name + " - " + .email' | sed 's/T.*,//' + list=$(curl -m 5 --user $ids -s $url | jq -r '.resources[] | .date + " , " + .first_name + " " + .last_name + " - " + .email' | sed 's/T.*,//') + + echo "$list" | awk '!seen[$3]++' + + nbrAdherents=$(echo "$list" | awk '!seen[$3]++' | wc -l) + + echo "---" + echo -e "\n Il y a actuellement **$nbrAdherents adhérents** de l'association Axiom-Team." + } adherentsSoft() { @@ -16,7 +24,16 @@ adherentsSoft() { cagnotte() { url="$ha/campaigns/000001053192.json" - curl -m 5 --user $ids -s $url | jq -r '.name, {"Donnateurs": .supporters},{"Fonds":.funding},.url' | grep -v '{|}' + list=$(curl -m 5 --user $ids -s $url | jq -r '.name, {"Donnateurs": .supporters},{"Fonds":.funding},.url' | tr -d '{|}') +# list=$(curl -m 5 --user $ids -s $url | jq -r '{"Donnateurs": .supporters},{"Fonds":.funding},.url' | tr -d '{|}') + + name=$(echo "$list" | head -n1) + url=$(echo "$list" | tail -n1) + donnateurs=$(echo "$list" | grep "Donnateurs" | awk '{ print $2 }') + fonds=$(echo "$list" | grep "Fonds" | awk '{ print $2 }') + + echo "Il y a **${fonds}€** pour **$donnateurs donnateurs** sur la cagnotte **\"$name\"**" + }