Regel 45: | Regel 45: | ||
Plak deze code in je webpagina voor de hack42 spacestate-bar | Plak deze code in je webpagina voor de hack42 spacestate-bar | ||
<pre><iframe width="390" height="50" scrolling="no" style="border: none;" src="https://hack42.nl/spacestate/"></iframe></pre> | <pre><iframe width="390" height="50" scrolling="no" style="border: none;" src="https://hack42.nl/spacestate/"></iframe></pre> | ||
+ | |||
+ | == Growlnotifier door [[Gebruiker:jvhaarst]] == | ||
+ | Knippen en plakken naar hack42notify.sh | ||
+ | |||
+ | <pre> | ||
+ | #!/bin/bash | ||
+ | # Scriptje om een Growl notify te krijgen bij openen (en sluiten) van de space | ||
+ | # jvhaarst, 13/2/2011 8h47 | ||
+ | # Nodig: | ||
+ | # bash | ||
+ | # curl | ||
+ | # Growl (http://growl.info/) | ||
+ | # growlnotify (in extras directory van de Growl dmg) | ||
+ | # plaatje van https://hack42.nl/wiki/index.php/Huisstijl | ||
+ | |||
+ | # variabelen | ||
+ | DEBUG=false | ||
+ | OLDSTATE="closed" | ||
+ | IMAGE="~jvhaarst/bin/code/42/Hack42.png" | ||
+ | |||
+ | # Oneindige loop | ||
+ | while true; | ||
+ | do | ||
+ | # check op state | ||
+ | CURRENTSTATE=`curl -s http://hack42.nl/spacestate/state` | ||
+ | # debug | ||
+ | if $DEBUG;then echo $CURRENTSTATE;fi | ||
+ | # check op verandering | ||
+ | if [ "$CURRENTSTATE" != "$OLDSTATE" ] | ||
+ | then | ||
+ | if [ "$CURRENTSTATE" == "open" ] | ||
+ | then | ||
+ | growlnotify -s -m '#42 is open! ('`date "+%R"`')' --image $IMAGE | ||
+ | else | ||
+ | growlnotify -s -m '#42 is closed! ('`date "+%R"`')' --image $IMAGE | ||
+ | fi | ||
+ | OLDSTATE=$CURRENTSTATE | ||
+ | fi | ||
+ | sleep 60; | ||
+ | done | ||
+ | </pre> |
Versie van 7 mrt 2011 13:41
Project: SpaceStateSwitch | |
---|---|
Naam | SpaceStateSwitch |
Door | RickDeckardt |
Status | Afgerond |
Madskillz | madhacks |
Doel / Omschrijving | |
Een coole schakelaar die de spacestate twittert/irc/etc met rudimentaire api | |
Alle Projecten - Project Toevoegen |
Hardware
De SpaceStateSwitch is een tweepolige maakschakelaar die tx+/rx+ en tx-/rx- van de tweede poort (eth1) van het access point doorverbindt. Hierdoor 'ziet' eth1 de link up.
Software
Het Access Point draait linux, hierop draait cron en die draait iedere minuut een script genaamd statecheck.sh Die kijkt met ethtool of eth1 link heeft.
Pseudocode van het statecheck.sh script:
IF connection_state_eth1 eq connected AND laststate eq closed; curl http://user@pass:host/spacestate/setstate.php?state=open IF curl_success; set laststate open IF connection_state_eth1 eq disconnected AND laststate eq open; curl http://user@pass:host/spacestate/setstate.php?state=closed IF curl_success; set laststate closed
'API'-mogelijkheid voor externe apps
- http://hack42.nl/spacestate/state (kan de text open of closed bevatten, handig voor apps)
- http://hack42.nl/spacestate/state.time (bevat de time van de laatste state-change, handig voor apps)
- http://hack42.nl/spacestate/state.csv (bevat date,time,state per regel, handig voor bouwen van graphs)
Tweets
De koppeling naar twitter wordt vanuit het setstate.php script gedaan: Het phpscript twittert de spacestate op @hack42 en past de volgende lokale files aan: - http://hack42.nl/spacestate/index.html
Koppeling naar IRC
Op irc://irc.hack42.nl/#hack42 draait een gozerbot met rss-feed plugin Een van de rss-feeds die hij volgt is die van http;//twitter.com/hack42, elke minuut kijkt hij naar nieuwe tweets van hack42 en bij een nieuwe tweet blaft hij deze het irckanaal in.
XSS in je eigen webpagina!
Plak deze code in je webpagina voor de hack42 spacestate-bar
<iframe width="390" height="50" scrolling="no" style="border: none;" src="https://hack42.nl/spacestate/"></iframe>
Growlnotifier door Gebruiker:jvhaarst
Knippen en plakken naar hack42notify.sh
#!/bin/bash # Scriptje om een Growl notify te krijgen bij openen (en sluiten) van de space # jvhaarst, 13/2/2011 8h47 # Nodig: # bash # curl # Growl (http://growl.info/) # growlnotify (in extras directory van de Growl dmg) # plaatje van https://hack42.nl/wiki/index.php/Huisstijl # variabelen DEBUG=false OLDSTATE="closed" IMAGE="~jvhaarst/bin/code/42/Hack42.png" # Oneindige loop while true; do # check op state CURRENTSTATE=`curl -s http://hack42.nl/spacestate/state` # debug if $DEBUG;then echo $CURRENTSTATE;fi # check op verandering if [ "$CURRENTSTATE" != "$OLDSTATE" ] then if [ "$CURRENTSTATE" == "open" ] then growlnotify -s -m '#42 is open! ('`date "+%R"`')' --image $IMAGE else growlnotify -s -m '#42 is closed! ('`date "+%R"`')' --image $IMAGE fi OLDSTATE=$CURRENTSTATE fi sleep 60; done