Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ma caisse enregistreuse en NodeJS

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

Ma caisse enregistreuse en NodeJS

Avatar for paul souche

paul souche

May 19, 2014

More Decks by paul souche

Other Decks in Programming

Transcript

  1. Présentation interactive Essayez le hashTag : #maCaisseNodejs Seulement 20 x

    2 caractères → Soyez créatifs vous aurez alors 5 secondes minimum pour prendre une photo...
  2. Le contexte But : Gérer des périphériques monétiques et éditiques

    depuis un client léger. Problème : Ces équipements communiquent via le port série.
  3. Le contexte Comment atteindre les ports Série depuis un navigateur

    ? - ActiveX ? - ChromeApp ? - Applet Java ? - Serveur local Il faudra de toute façon installer quelque chose sur le poste client.
  4. Le contexte Le back est développé sur Wakanda (4D javaScript)

    → permet de ne pas changer de langage Comment gérer le protocole COM sur le front ?
  5. L’architecture Node.js à la rescousse : - API permettant de

    communiquer sur les ports séries existante : voodootikigod / node-serialport - Serveur express minimal pour une API bas niveau
  6. La stack Les modules en + : - node-serialPort :

    voodootikigod / node-serialport - angular-ui bootstrap : angular-ui / bootstrap - paperwork : lperrin / paperwork - ngTailor : lauterry / ngTailor - nodemon : remy / nodemon
  7. La stack : le port série Exemple d’échange : EMETTEUR

    ENQ (5) STX + données + ETX + LRC EOT (4) RECEPTEUR ACK (6) ACK
  8. Conclusion Lib serialPort node vraiment complète : - liste des

    ports série disponibles sur la machine - accès aux callbacks de déconnexion Les difficultés : - CORS et son application par les browsers - L’encodage ascii avec node : NUL.toAscii = ‘ ‘ (V8)
  9. Questions ? Merci à : - AREGIE - Hamdi, Douglas

    & Grég - nodejsParis - Vous - Le fer à souder - La caisse de l’hippopotamus à Neuilly - La caisse du franprix en bas de chez moi