Giter Club home page Giter Club logo

autosign's Introduction

✏️ Author : Alex Broussard

Remplissage automatique du formulaire d'appel

⚠️ Prérequis :

  • node
  • npm
  • git

🚧 Installation :

Placer vous dans le répertoire de votre choix

git clone https://gitlab.com/alexbsd/autosign.git

Allez dans le répertoire du projet

cd autosign

Installez les dépendances

npm install

🔧 Configuration :

Lancer le script d'installation automatique et renseignez votre prénom, votre nom et votre mot de passe campus.

sh setup.sh

Renseignez le lien vers votre page de présence de la semaine à l'aide du script change_week.sh

sh change_week.sh

✔️ Utilisation :

Pour l'utiliser, placez vous simplement à la racine du projet et lancez la commande

node appel.js

Vous verrez dans la console si le script a fonctionné où si vous avez rencontré des erreurs. Vous pouvez également voir le dernier état du navigateur si ça a fonctionné en ouvrant le png généré <votreprenom>.png. Le script va automatiquement envoyer un mail sur votre adresse prenom?[email protected] pour vous dire si l'appel a fonctionné ou non.

💔 Erreurs que j'ai rencontré

En installant le bot sur mon raspberry, le navigateur n'arrivait pas à se lancer. J'ai donc du installer moi-même chromium-browser sur ma machine en exécutant la commande sudo apt-get install chromium-browser et en décommentant la ligne 52 du fichier appel.js que j'ai écrite pour ce cas précis :

50 const browser = await puppeteer.launch({
51         //Uncomment optional line if you use custom path (for example on Raspberry with your own chromium-browser)
52        // executablePath: '/usr/bin/chromium-browser',
53        headless: true,
54        //height à 2500 pour voir toutes la semaine sur la page de présence
55        defaultViewport: { height: 2500, width: 1920 },
56        args: ['--no-sandbox','--disable-extensions']
57    });
En installant moi même chromium et en lancant le script j'ai vu qu'il me manquait des librairies, si vous rencontrez ce problème les libraires seront écrites dans le message d'erreur. Si vous n'arrivez pas à les installer n'hésitez pas à utiliser Google ou à me demander directement de vous aider.

🌟 Pour aller plus loin (Linux)

Vous pouvez paramétrer une tâche automatique sur votre machine qui lancera la commande node appel.js automatiquement à l'heure voulue. Personnellement pour ça j'ai utilisé l'utilitaire crontab présent sur linux. Lancez la commande suivante et choisissez un éditeur de texte parmi ceux qui vous sont proposés

crontab -e

Et ajoutez par exemple la ligne suivante à la fin du fichier

30 08 20 11 * node ~/autosign/appel.js

L'utilitaire crontab utilise la syntaxe minutes heure jour mois jourdelasemaine <commande>, la ligne ci-dessus va donc lancer (chaque année mais on s'en fout) la commande node ~/autosign/appel.js le 20 Novembre à 8h30.

❔ Questions

Si vous avez des questions je suis joignable sur Facebook ou par mail en cliquant sur l'enveloppe 📧

autosign's People

Contributors

alexbsrd avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.