2022-08-28 19:09:06 +02:00
|
|
|
#!/bin/bash
|
|
|
|
################################################################################
|
|
|
|
# Author: Fred (support@qo-op.com)
|
|
|
|
# Version: 0.1
|
|
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
|
|
################################################################################
|
|
|
|
# Extract last ads
|
|
|
|
# Thank you @kimamila for cesium & gchange
|
|
|
|
# ES backend http://www.elasticsearchtutorial.com/spatial-search-tutorial.html
|
2022-09-08 18:34:53 +02:00
|
|
|
## THIS INTERNET NEEDS A BACKUP !!! OR YOU BECOME INTERNET .
|
|
|
|
# https://web.archive.org/web/20210621185958/http://www.elasticsearchtutorial.com/spatial-search-tutorial.html
|
|
|
|
# Create tiddler informing ... TODO Add keyword ... Use tag="annonce" for tiddlers propagation
|
2022-08-28 19:09:06 +02:00
|
|
|
|
2022-10-06 21:18:54 +02:00
|
|
|
# DOC : http://doc.e-is.pro/cesium-plus-pod/REST_API.html#overview
|
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
echo "TODO DEBUG. CONTINUE?"
|
|
|
|
read
|
2022-08-28 19:09:06 +02:00
|
|
|
|
|
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
|
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
2022-12-29 14:51:05 +01:00
|
|
|
. "$MY_PATH/../tools/my.sh"
|
2022-08-28 19:09:06 +02:00
|
|
|
|
|
|
|
# Get Player Name
|
2022-09-07 01:01:01 +02:00
|
|
|
PLAYER=$(cat ~/.zen/game/players/.current/.player 2>/dev/null)
|
|
|
|
[[ $PLAYER == "" ]] && echo "NO PLAYER - EXIT" && exit 1
|
2022-08-28 19:09:06 +02:00
|
|
|
|
|
|
|
mkdir -p ~/.zen/tmp/gchange
|
|
|
|
|
|
|
|
[[ ! -f ~/.zen/game/players/$PLAYER/secret.dunikey ]] && echo "Astronaute inconnu. Connectez-vous"
|
|
|
|
g1pub=$(cat ~/.zen/game/players/$PLAYER/secret.dunikey | grep 'pub:' | cut -d ' ' -f 2)
|
|
|
|
|
2022-12-29 14:51:05 +01:00
|
|
|
# /user/profile/2L8vaYixCf97DMT8SistvQFeBj7vb6RQL7tvwyiv1XVH?&_source_exclude=avatar._content
|
2022-08-28 19:09:06 +02:00
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
tiddlywiki --load ~/.zen/game/players/$PLAYER/ipfs/moa/index.html --output ~/.zen/tmp/gchange --render '.' 'carte.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'Carte'
|
2022-09-07 01:01:01 +02:00
|
|
|
tiddlywiki --load ~/.zen/game/players/$PLAYER/ipfs/moa/index.html --output ~/.zen/tmp/gchange --render '.' 'gchange.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'Gchange'
|
2022-09-08 18:34:53 +02:00
|
|
|
tiddlywiki --load ~/.zen/game/players/$PLAYER/ipfs/moa/index.html --output ~/.zen/tmp/gchange --render '.' 'g1visa.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' 'G1Visa'
|
|
|
|
tiddlywiki --load ~/.zen/game/players/$PLAYER/ipfs/moa/index.html --output ~/.zen/tmp/gchange --render '.' 'MOA.json' 'text/plain' '$:/core/templates/exporters/JsonFile' 'exportFilter' '[tag[moa]]'
|
2022-08-28 19:09:06 +02:00
|
|
|
|
2022-09-07 01:01:01 +02:00
|
|
|
GPS=$(cat ~/.zen/tmp/gchange/carte.json | jq -r .[].gps)
|
2022-09-08 18:34:53 +02:00
|
|
|
echo $GPS
|
2022-09-07 01:01:01 +02:00
|
|
|
DIST=$(cat ~/.zen/tmp/gchange/gchange.json | jq -r .[].distance)
|
2022-09-08 18:34:53 +02:00
|
|
|
echo $DIST
|
2022-09-07 01:01:01 +02:00
|
|
|
RECH=($(cat ~/.zen/tmp/gchange/gchange.json | jq -r .[].recherche))
|
2022-09-08 18:34:53 +02:00
|
|
|
echo "${RECH[@]}"
|
2022-09-07 01:01:01 +02:00
|
|
|
MOANFT=$(cat /home/fred/.zen/tmp/gchange/MOA.json | jq .[].text)
|
2022-09-08 18:34:53 +02:00
|
|
|
echo $MOANFT < xdg-open
|
|
|
|
|
|
|
|
LAT=$(echo $GPS | cut -d ',' -f 1)
|
|
|
|
echo $LAT
|
|
|
|
LON=$(echo $GPS | cut -d ',' -f 2)
|
|
|
|
echo $LON
|
2022-09-07 01:01:01 +02:00
|
|
|
|
|
|
|
# AJOUTER CHAMPS à "Dessin de Moa"
|
2022-09-08 18:34:53 +02:00
|
|
|
# IPFSNODEADDRESS for IPFS layer optimization
|
2022-09-07 01:01:01 +02:00
|
|
|
|
|
|
|
RAD="$DIST"
|
2022-08-28 19:09:06 +02:00
|
|
|
[[ ! $RAD ]] && RAD="50km"
|
|
|
|
|
2022-12-29 14:51:05 +01:00
|
|
|
echo curl -sk -XPOST "$myDATA/market/record/_search?pretty&_source=title" -d '
|
2022-09-08 18:34:53 +02:00
|
|
|
{
|
|
|
|
"size": 200,
|
|
|
|
"query": {
|
|
|
|
"bool": {
|
|
|
|
"filter": [{
|
|
|
|
"geo_distance": {
|
|
|
|
"distance": "'$RAD'",
|
|
|
|
"geoPoint": {
|
|
|
|
"lat": '$LAT',
|
|
|
|
"lon": '$LON'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}'
|
|
|
|
|
|
|
|
|
2022-08-28 19:09:06 +02:00
|
|
|
if [[ "$LON" != "null" ]]; then
|
2022-12-29 14:51:05 +01:00
|
|
|
curl -sk -XPOST "$myDATA/market/record/_search?pretty&_source=title" -d '
|
2022-08-28 19:09:06 +02:00
|
|
|
{
|
|
|
|
"size": 200,
|
|
|
|
"query": {
|
|
|
|
"bool": {
|
|
|
|
"filter": [{
|
|
|
|
"geo_distance": {
|
|
|
|
"distance": "'$RAD'",
|
|
|
|
"geoPoint": {
|
|
|
|
"lat": '$LAT',
|
|
|
|
"lon": '$LON'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}' > /tmp/gchange.json || exit 1
|
|
|
|
else
|
|
|
|
echo "Aucune coordonnées geoPoint pour $g1pub"
|
2022-09-07 01:01:01 +02:00
|
|
|
# Message tiddlywiki TODO
|
2022-08-28 19:09:06 +02:00
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
TIMEBEFORE=$(date -u --date="-$DELAY" +"%s")
|
|
|
|
TIMESTAMP=$(date -u +"%s")
|
|
|
|
TOTAL=$(cat /tmp/gchange.json | jq .hits.total)
|
2022-09-08 18:34:53 +02:00
|
|
|
echo 'tail -f ~/.zen/tmp/gchange.txt'
|
|
|
|
echo 'Annonces_Gchange' > ~/.zen/tmp/gchange.txt
|
|
|
|
echo "Portefeuille_[June_:heart:](https://demo.cesium.app/#/app/wot/$g1pub/)" >> ~/.zen/tmp/gchange.txt
|
|
|
|
echo "Carte_[$RAD](https://www.openstreetmap.org/#map=10/$LAT/$LON) " >> ~/.zen/tmp/gchange.txt
|
2022-08-28 19:09:06 +02:00
|
|
|
chunk=0
|
|
|
|
fullcount=0
|
|
|
|
|
|
|
|
|
|
|
|
for gID in $(cat /tmp/gchange.json | jq -r .hits.hits[]._id); do
|
2022-09-07 01:01:01 +02:00
|
|
|
|
2022-08-28 19:09:06 +02:00
|
|
|
NEW=""
|
2022-09-07 01:01:01 +02:00
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
[[ ! -f ~/.zen/tmp/gchange/$gID.json ]] &&
|
2022-08-28 19:09:06 +02:00
|
|
|
NEW="true" \
|
2022-12-29 14:51:05 +01:00
|
|
|
&& curl -s --create-dirs -o ~/.zen/tmp/gchange/$gID.json -s "$myDATA/market/record/$gID?_source=category,title,description,issuer,time,creationTime,location,address,city,price,unit,currency,thumbnail._content_type,thumbnail._content,picturesCount,type,stock,fees,feesCurrency,geoPoint" \
|
2022-08-28 19:09:06 +02:00
|
|
|
&& sleep $((1 + RANDOM % 3))
|
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
type=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.type)
|
|
|
|
stock=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.stock)
|
2022-08-28 19:09:06 +02:00
|
|
|
[[ $stock == 0 ]] && continue
|
|
|
|
|
|
|
|
# [[ $type == "need" ]] && continue
|
2022-09-08 18:34:53 +02:00
|
|
|
creationTime=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.creationTime)
|
|
|
|
title=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.title)
|
2022-09-07 01:01:01 +02:00
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
currency=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.currency)
|
|
|
|
price=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.price)
|
2022-09-07 01:01:01 +02:00
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
categoryname=$(cat ~/.zen/tmp/gchange/$gID.json | jq -r ._source.category.name)
|
2022-08-28 19:09:06 +02:00
|
|
|
|
|
|
|
[[ $price == null ]] && price="0"
|
2022-09-08 18:34:53 +02:00
|
|
|
love="$price $currency"
|
2022-09-07 01:01:01 +02:00
|
|
|
|
2022-12-29 14:51:05 +01:00
|
|
|
[[ $type == "offer" ]] && LINE="___OFFRE___[$title]($myDATA/market/record/$gID/_share)_$love"
|
|
|
|
[[ $type == "need" ]] && LINE="__DEMANDE__[$title]($myDATA/market/record/$gID/_share)_$love"
|
2022-08-28 19:09:06 +02:00
|
|
|
|
2022-09-08 18:34:53 +02:00
|
|
|
[[ $NEW == "true" ]] && echo "$LINE" >> ~/.zen/tmp/gchange.txt && chunk=$((chunk+1)) && echo $chunk
|
2022-08-28 19:09:06 +02:00
|
|
|
|
|
|
|
done
|
2022-09-08 18:34:53 +02:00
|
|
|
echo "$chunk_nouvelles_annonces_($TOTAL)" >> ~/.zen/tmp/gchange.txt
|
2022-08-28 19:09:06 +02:00
|
|
|
|