Support initial de space-api
Ce commit ajoute un support rudimentaire de space-api: (voir https://spaceapi.io/docs/) Il consiste en deux parties: * un fichier spaceapi/space.json contenant les infos du lol * une mise à jour de status/set-status.sh qui utilise jq pour répercuter les changements de l'état d'ouverture du lolcal TODO: Ajouter nos capteurs (ce n'est pas trivial, amha, il faudra revoir l'architecture du système pour le faire correctement)
This commit is contained in:
30
spaceapi/space.json
Normal file
30
spaceapi/space.json
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"api_compatibility": ["15"],
|
||||||
|
"space": "Laboratoire Ouvert Lyonnais",
|
||||||
|
"logo": "https://labolyon.fr/images/logo_picto.svg",
|
||||||
|
"url": "https://labolyon.fr/",
|
||||||
|
"location": {
|
||||||
|
"address": "7 Place Louis Chazette 69001 Lyon, France",
|
||||||
|
"lon": 4.8372366,
|
||||||
|
"lat": 45.7732494,
|
||||||
|
"country_code": "FR",
|
||||||
|
"timezone": "Europe/Paris"
|
||||||
|
},
|
||||||
|
"contact": {
|
||||||
|
"irc": "ircs://irc.geeknode.org:6697/labolyon",
|
||||||
|
"ml": "discussions@listes.labolyon.fr",
|
||||||
|
"mastodon": "@labolyon@nerdculture.de",
|
||||||
|
"matrix": "#general:chat.labolyon.fr"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"icon": {
|
||||||
|
"closed": "https://labolyon.fr/status/status.ferm%C3%A9.png",
|
||||||
|
"open": "https://labolyon.fr/status/status.ouvert.png"
|
||||||
|
},
|
||||||
|
"open": false
|
||||||
|
},
|
||||||
|
"projects": [
|
||||||
|
"https://git.labolyon.fr/",
|
||||||
|
"https://wiki.labolyon.fr/"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -8,10 +8,16 @@ if [ "$#" = "0" ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
SPACE_JSON=/var/www/html/spaceapi/space.json
|
||||||
|
|
||||||
if [ "$1" = "opened" ]; then
|
if [ "$1" = "opened" ]; then
|
||||||
ln -sf "index.ouvert.html" "/var/www/html/status/index.html"
|
ln -sf "index.ouvert.html" "/var/www/html/status/index.html"
|
||||||
|
jq "setpath([\"state\", \"open\"]; true) | setpath([\"state\", \"lastchange\"]; $(date +%s))" < $SPACE_JSON > $SPACE_JSON.new &&
|
||||||
|
mv -f $SPACE_JSON.new $SPACE_JSON
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$1" = "closed" ]; then
|
if [ "$1" = "closed" ]; then
|
||||||
ln -sf "index.fermé.html" "/var/www/html/status/index.html"
|
ln -sf "index.fermé.html" "/var/www/html/status/index.html"
|
||||||
fi
|
jq "setpath([\"state\", \"open\"]; false) | setpath([\"state\", \"lastchange\"]; $(date +%s))" < $SPACE_JSON > $SPACE_JSON.new &&
|
||||||
|
mv -f $SPACE_JSON.new $SPACE_JSON
|
||||||
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user