--- /dev/null
+#!/bin/bash
+
+# FICHIER DE CONFIGURATION
+source ./allo_agent.conf
+
+# CLEAN DES LOGS
+if [ -e "${log_file}" ]
+then
+ rm "${log_file}"
+fi
+
+# TEST DE CONNEXION
+code=$(curl -s -w "%{http_code}" --max-time 5 --output /dev/null "http://${produit_fqdn_interne}/api/rest/allo/version")
+echo ${produit_fqdn_interne}
+echo ${code}
+
+if [ "${code}" == 200 ] || [ "${code}" == 301 ]
+then
+ # REQUETE (en insecure pour le moment)
+ curl --max-time 10 -k -X GET -H "${response_accept}" "http://${produit_fqdn_interne}/api/rest/allo/version/" --output "response.json" 2> /dev/null
+
+ # LOG DE LA REPONSE
+ #echo "$(cat response.json)" 2>&1 | tee -a $log_file
+
+ # VALIDATION DU JSON (nécessite outil de validation json)
+ isJSONCorrupted=$(cat response.json | module/json -nq)
+
+ # SI LA VARIABLE EST INITIALISEE MAIS VIDE => PAS D'ERREUR
+ if [[ -z $isJSONCorrupted && ${isJSONCorrupted+x} ]]
+ then
+ # AJOUT DE LA REFERENCE PRODUIT (nécessite package jq)
+ jq '. + { "reference": "'"${produit_reference}"'" }' response.json > tmp.json
+
+ # AJOUT DU TYPE D'USAGER
+ jq '. + { "usager_type": "'"${usager_type}"'" }' tmp.json > request.json
+
+ # ENVOI DE L'UPDATE AU SERVEUR
+ curl -k -X PUT -H "${request_type}" -d "$(cat request.json)" -i "http://${allo_serveur_url}/?action=upload_info" --output "response_server" 2> /dev/null
+ if [ -e ./response_server ]
+ then
+ echo "$(cat response_server)" 2>&1 | tee -a $log_file
+ else
+ echo "Aucune réponse du serveur !" 2>&1 | tee -a $log_file
+ fi
+ rm response*
+ rm request.json
+ rm tmp.json
+ else
+ echo "Les données récupérées sont illisibles" 2>&1 | tee -a $log_file
+ fi
+else
+ echo "L'application a renvoyé une erreur : " 2>&1 | tee -a $log_file
+ case "${code}" in
+ "500")
+ echo "Erreur interne du serveur" 2>&1 | tee -a $log_file
+ ;;
+ "400" | "404")
+ echo "Mauvaise requete" 2>&1 | tee -a $log_file
+ ;;
+ *)
+ echo "Aucune réponse de l'application" 2>&1 | tee -a $log_file
+ ;;
+ esac
+fi