Merge branch 'dev-multicanal' of https://git.p2p.legal/axiom-team/g1sms into dev-multicanal

This commit is contained in:
poka 2020-02-23 19:27:29 +01:00
commit 6225b2e5cd
13 changed files with 65 additions and 56 deletions

View File

@ -0,0 +1 @@
biz-bot-admin

View File

@ -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)
}

View File

@ -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("cat admins-chan.txt"); //cat admins-chan.txt");
bot.global.text({
contains: ['axiom adhérent','axiom adhérents','axiom adherent','axiom adherents']
@ -17,16 +16,19 @@ bot.global.text({
roomName = b.message.user.name
}
if (adminRooms.indexOf(roomName) == -1) {
cmd = "adherentsSoft"
} else {
// b.respond("JE SUIS LA" + adminRooms.) //kopa
// 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)
}
@ -40,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)
}

View File

@ -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)
}

View File

@ -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
@ -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)
}
@ -20,11 +20,11 @@ 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) {
b.respond("Une erreur est survenu ...")
b.respond("Une erreur est survenue ...")
} else {
b.respond(stdout)
}

View File

@ -5,11 +5,12 @@ 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 ...")
b.respond("Une erreur est survenue ...")
} else {
b.respond(stdout)
}
@ -17,4 +18,3 @@ bot.global.text({
}, {
id: 'sms-test'
});

View File

@ -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)
}

View File

@ -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:');
}, {

View File

@ -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é")
}

View File

@ -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\"**"
}

View File

@ -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

View File

@ -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

View File

@ -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='<id>\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