Difference between revisions of "SpaceAPI"

From Fixme.ch
Jump to: navigation, search
(Description)
Line 1: Line 1:
 
[[Category:Ongoing_Projects]]
 
[[Category:Ongoing_Projects]]
 
== Description ==
 
== Description ==
* Accessible here: https://fixme.ch/cgi-bin/spaceapi.py
+
* Accessible here
 +
**https://fixme.ch/cgi-bin/spaceapi.py
 +
**https://fixme.ch/status.json
 
* Provide a simple API to know whether the hackerspace is open or closed
 
* Provide a simple API to know whether the hackerspace is open or closed
 
* Implements the [https://hackerspaces.nl/spaceapi/ Space API]
 
* Implements the [https://hackerspaces.nl/spaceapi/ Space API]

Revision as of 13:31, 15 May 2013

Description

Components

Dummy script to lookup the status

#!/usr/bin/env python3
import urllib.request
import json
 
URL = "https://fixme.ch/cgi-bin/spaceapi.py"
 
def get_json():
	try:
		con = urllib.request.urlopen(URL)
		content = con.read()
		hs_json = json.loads(content.decode('utf8'))
		return hs_json
	except IOError:
		print("A network error occured sorry")
		exit(1)
	except ValueError:
		print("Malformatted json")
 
def print_info(hs_json):
	if hs_json['open']:
		print("OPENENENENEN")
		print("status is : {status}".format(**hs_json))
		print("the changes happens at {lastchange}".format(**hs_json))
		print("The duration is {duration} hours".format(**hs_json))
	else:
		print("The hackerspace is closed")
json = get_json()
try:
        print_info(json)
except:
        pass

Participant