Slide 1

Slide 1 text

Gardien Philippe Creux - @pcreux pour La Cordée!

Slide 2

Slide 2 text

Gardien? À la Cordée, un badge doit donner accès à tous les espaces (Charpennes, Perrache, Villefranche, Hawai...) Gardien, c’est une appli web pour gérer les cartes et lister les entrées / sorties pour tous les espaces

Slide 3

Slide 3 text

Itération -1 INSA de Lyon aux commandes!

Slide 4

Slide 4 text

Itération -1 Badgeuse Client Serveur oueb Badgeuse Client Charpennes Perrache

Slide 5

Slide 5 text

Itération -1 Badgeuse Client Serveur oueb Badgeuse Client Charpennes Perrache

Slide 6

Slide 6 text

Itération -1 • HTTP : problème du Cross Domain, impossible de récupérer les données via un autre domaine // solutions envisagées : utiliser du JsonP pour le faire passer en tant que script (mais impossible à exploiter) ou autoriser le Cross Domain sur le contrôleur en touchant le httpd.config du Apache (mais encore un problème). • Java : communiquer avec le contrôleur grâce à un serveur tournant en Java, le problème c'est que le protocole de communication est inconnu.

Slide 7

Slide 7 text

Itération 0 Jouable?

Slide 8

Slide 8 text

Itération 0 Récupérer les Entrées / Sorties

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

No. User id User name Card No Date Time IN/OUT Door 1 14 Olivier Montillet 3949361 Oct 18, 2012 3:25 PM IN 1 2 3 Clémence Pornon 3949350 Oct 18, 2012 3:24 PM IN 1 3 12 Agnès Barril 3949359 Oct 18, 2012 2:56 PM IN 1 4 25 3949372 Oct 18, 2012 2:50 PM IN 1 5 7 Aurélie Charvet 3949354 Oct 18, 2012 2:27 PM IN 1 6 12 Agnès Barril 3949359 Oct 18, 2012 2:17 PM OUT 1 7 17 Gilles (temporaire) 3949364 Oct 18, 2012 1:54 PM IN 1 8 8 Etienne Depaulis 3949355 Oct 18, 2012 1:45 PM IN 1 9 17 Gilles (temporaire) 3949364 Oct 18, 2012 1:27 PM OUT 1 10 12 Agnès Barril 3949359 Oct 18, 2012 1:10 PM IN 1 11 12 Agnès Barril 3949359 Oct 18, 2012 1:06 PM OUT 1 12 1 Julie Pouliquen 3949348 Oct 18, 2012 12:35 PM IN 1 13 17 Gilles (temporaire) 3949364 Oct 18, 2012 12:27 PM IN 1 14 25 3949372 Oct 18, 2012 12:17 PM OUT 1 15 1 Julie Pouliquen 3949348 Oct 18, 2012 12:14 PM OUT 1 Export TXT

Slide 11

Slide 11 text

Export CSV GET http://10.20.2.201/if.cgi ?redirect=UserLog.htm &failure=fail.htm &type=search_user_log &type=0&sel=0&u_id=&even=0&even=0&even= 0&even=0&even=0 &year=12&mon=10&day=18 &year=12&mon=10&day=18 &card=0&card=0&card=0&card=0&card=0&car d=0&card=0&card=0&fun_t=1&e_t=0

Slide 12

Slide 12 text

Itération 0 Afficher les cartes

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

Display user form GET http://10.20.2.201/if.cgi &redirect=EmpRcd.htm &failure=fail.htm &type=want_emp &id=123 REDIRECT TO /database.htm

Slide 15

Slide 15 text

STATEFULL WEB SERVER!

Slide 16

Slide 16 text

Itération 0 Mettre à jour les cartes

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

GET http://10.20.2.201/if.cgi? redirect=EmpRcd.htm&failure=fail.htm &type=user_data&creg=0&num= &EmployeeID=2&CardID=3949349 &username=Michael+Schwartz&Card_Valid=0 &SY=2012&SM=9&SD=25&sy_h=23&sy_m=8&EY=20 12&EM=9&ED=25&sy_h=23&sy_m=8&Activate=1& Usertype=0&group_list1=1&group_list2=0&g roup_list3=0&group_list4=0&Verify=1&Pass word=&Retype=&card=0&card=0&card=0&card= 0&card=0&card=60&card=67&card=37

Slide 19

Slide 19 text

Itération 1

Slide 20

Slide 20 text

Iteration 1 Badgeuse Gardien Gardien Chef Perrache Rails ActiveAdmin Heroku! Rails (et ouai) Symac

Slide 21

Slide 21 text

Iteration 1

Slide 22

Slide 22 text

Iteration 2 Sessions!

Slide 23

Slide 23 text

Session 1 - Scénario 1 Time In Time Out Status

Slide 24

Slide 24 text

Session 1 - Scénario 1 IN Time In Time Out Status 1pm Open

Slide 25

Slide 25 text

IN Time In Time Out Status 1pm 2pm Closed OUT Session 1 - Scénario 1

Slide 26

Slide 26 text

IN Time In Time Out Status 1pm Open Session 1 - Scénario 2

Slide 27

Slide 27 text

IN Time In Time Out Status 1pm Invalid 2pm Open IN Session 1 - Scénario 2

Slide 28

Slide 28 text

Time In Time Out Status 1pm 2pm Closed IN OUT Session 1 - Scénario 3

Slide 29

Slide 29 text

IN Time In Time Out Status 1pm 2pm Closed 3pm Invalid OUT OUT Session 1 - Scénario 3

Slide 30

Slide 30 text

open open invalid invalid invalid invalid 245:01:02 Session 1 - En vrai... 120 250

Slide 31

Slide 31 text

IN Time In Time Out Status 1pm Open Session 2 - Scénario 1

Slide 32

Slide 32 text

IN Time In Time Out Status 1pm Open IN Session 2 - Scénario 2

Slide 33

Slide 33 text

Time In Time Out Status 1pm 2pm Closed IN OUT Session 2 - Scénario 2

Slide 34

Slide 34 text

Time In Time Out Status 1pm 3pm Closed IN OUT Session 2 - Scénario 2 OUT

Slide 35

Slide 35 text

Session 2 - En vrai...

Slide 36

Slide 36 text

Session 2 - En mieux

Slide 37

Slide 37 text

Iteration 3 Des cartes!

Slide 38

Slide 38 text

Iteration 3 Badgeuse Gardien Gardien Chef Perrache

Slide 39

Slide 39 text

Iteration 3 - En vrai...

Slide 40

Slide 40 text

Iteration 3 - En vrai...

Slide 41

Slide 41 text

Iteration 3 - En vrai...

Slide 42

Slide 42 text

Iteration 4 - La suite... Installation de gardien à Charpennes! Sessions facturables vs non facturables Stats et Rapports pour Julie et Michaël API pour le Refuge!

Slide 43

Slide 43 text

Et voilà! http://parlonsruby.com C’est cool! Code Retreat le 8 décembre icite! La cotisation à Lyon.rb c’est 16€!