Difference between revisions of "SpaceAPI"
m (set to completed. Updates still might occur) |
(fixed list of spaceapi projects) |
||
(One intermediate revision by the same user not shown) | |||
Line 8: | Line 8: | ||
== synopsis == | == synopsis == | ||
Expose hackerspace information via a <abbr title="JavaScript Object Notation">JSON</abbr> structure. | Expose hackerspace information via a <abbr title="JavaScript Object Notation">JSON</abbr> structure. | ||
− | See [https://spaceapi. | + | See [https://spaceapi.io/docs/ spaceapi.io] for documentation (or its [http://spaceapi.net/ old site (unsecure)]). |
== current version == | == current version == | ||
The current backend has been made modular for easy maintenance and feature expansion. | The current backend has been made modular for easy maintenance and feature expansion. | ||
− | + | Several expansions are already in place: | |
+ | * temperature | ||
+ | * [https://ackspace.nl/spaceAPI/geo.php geo location] for [[Hackers on a Bike]] | ||
+ | * [https://ackspace.nl/spaceAPI/statechanges.html heatmap] (also [https://mapall.space/heatmap//show.php?id=ACKspace externally here]) | ||
+ | * [https://ackspace.nl/spaceAPI/conference.html teleconference status] | ||
+ | * [https://ackspace.nl/spaceAPI/services.html services status] | ||
+ | * [https://ackspace.nl/spaceAPI/audit.html stock supply] | ||
− | Most of the | + | Most of the first implementation has been done by [[user:Da_Syntax|Da Syntax]] and [[User:Xopr|xopr]] (ask them for details). |
Currently, both the new and old system are running in parallel, but some things need to be done before deprecating the old system. | Currently, both the new and old system are running in parallel, but some things need to be done before deprecating the old system. | ||
− | + | ||
− | * | + | The active maintained SpaceAPI project is at [https://spaceapi.io spaceapi.io]. |
+ | * Directory is at https://directory.spaceapi.io/ | ||
+ | * A feature full API is at https://api.spaceapi.io/ (described at https://api.spaceapi.io/openapi.json ) | ||
+ | * The latest directory is at [https://raw.githubusercontent.com/SpaceApi/directory/master/directory.json github] but may contain automated problems at times | ||
+ | * There is a cached directory at https://api.spaceapi.community/ | ||
+ | * There is a cached API at https://api.spaceapi.community/cache | ||
+ | * The old maintained directory is at https://spaceapi.fixme.ch/directory.json with the [[GitHub::https://github.com/fixme-lausanne/OpenSpaceDirectory|fixme-lausanne's GitHub repo here]] | ||
+ | * [http://hackerspaces.nl/ hackerspaces.nl] uses the SpaceAPI | ||
Several systems are tied to the backend: | Several systems are tied to the backend: | ||
Line 29: | Line 42: | ||
! category | ! category | ||
|- | |- | ||
− | | [[ | + | | [[MQTT]] (bridge) |
− | | | + | | software |
| | | | ||
| [[Telephone_system:Space_state|Space state (telephone system)]] | | [[Telephone_system:Space_state|Space state (telephone system)]] | ||
| software | | software | ||
|- | |- | ||
− | | [[ | + | | [[Spacestate sensors]] <abbr title="incomplete and replaced by MQTT">/!\</abbr> |
| hardware, firmware | | hardware, firmware | ||
| | | | ||
− | | [[ | + | | [[User:Vicarious|Vicarious']] [[Mobile Spacestate Indicator]] |
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | |||
| hardware, firmware, software | | hardware, firmware, software | ||
|- | |- | ||
− | | | + | | [[Space state]] (switch)<abbr title="replaced by MQTT">/!\</abbr> |
− | | | + | | hardware |
| | | | ||
| [[IRC ACKspace-statusbot]] | | [[IRC ACKspace-statusbot]] | ||
Line 56: | Line 63: | ||
| | | | ||
| | | | ||
− | | [[SpaceAPIBot]] ([https://telegram.org Telegram]) | + | | [[User:Stuiterveer|Stuiterveer's]] [[SpaceAPIBot]] ([https://telegram.org Telegram]) |
| software | | software | ||
|- | |- | ||
Line 70: | Line 77: | ||
| [[Widget:SpaceAPI]] | | [[Widget:SpaceAPI]] | ||
| software | | software | ||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | [[User:Danny Witberg|Danny W's]] [[Spacestate indicator]] <abbr title="incomplete">/!\</abbr> | ||
+ | | hardware, firmware | ||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | [[User:Coolepascal|CoolePascal's]] [[SpaceStateIndicator]] | ||
+ | | hardware, firmware | ||
|} | |} | ||
+ | For a possibly more complete list, look at the [[:Category:SpaceAPI|SpaceAPI category]] | ||
Affiliated github repositories: | Affiliated github repositories: | ||
Line 82: | Line 102: | ||
=== todo === | === todo === | ||
* upload database model | * upload database model | ||
− | |||
=== done === | === done === |
Latest revision as of 17:38, 19 May 2022
Project: SpaceAPI | |
---|---|
Featured: | No |
State | Completed |
Members | Vicarious, Coolepascal, Prodigity, Da Syntax, xopr, stuiterveer |
GitHub | spaceAPI |
Description | HackerSpace Status API |
Picture | |
No project picture! Fill in form Picture or Upload a jpeg here |
synopsis
Expose hackerspace information via a JSON structure. See spaceapi.io for documentation (or its old site (unsecure)).
current version
The current backend has been made modular for easy maintenance and feature expansion. Several expansions are already in place:
- temperature
- geo location for Hackers on a Bike
- heatmap (also externally here)
- teleconference status
- services status
- stock supply
Most of the first implementation has been done by Da Syntax and xopr (ask them for details).
Currently, both the new and old system are running in parallel, but some things need to be done before deprecating the old system.
The active maintained SpaceAPI project is at spaceapi.io.
- Directory is at https://directory.spaceapi.io/
- A feature full API is at https://api.spaceapi.io/ (described at https://api.spaceapi.io/openapi.json )
- The latest directory is at github but may contain automated problems at times
- There is a cached directory at https://api.spaceapi.community/
- There is a cached API at https://api.spaceapi.community/cache
- The old maintained directory is at https://spaceapi.fixme.ch/directory.json with the fixme-lausanne's GitHub repo here
- hackerspaces.nl uses the SpaceAPI
Several systems are tied to the backend:
inputs | category | outputs | category | |
---|---|---|---|---|
MQTT (bridge) | software | Space state (telephone system) | software | |
Spacestate sensors /!\ | hardware, firmware | Vicarious' Mobile Spacestate Indicator | hardware, firmware, software | |
Space state (switch)/!\ | hardware | IRC ACKspace-statusbot | software | |
Stuiterveer's SpaceAPIBot (Telegram) | software | |||
Pebble watch app | software | |||
Widget:SpaceAPI | software | |||
Danny W's Spacestate indicator /!\ | hardware, firmware | |||
CoolePascal's SpaceStateIndicator | hardware, firmware |
For a possibly more complete list, look at the SpaceAPI category
Affiliated github repositories:
- spaceAPI: backend
- SpaceAPIBot: Telegram bot output
- esp8266-SpaceAPI: modular implementation on ESP8266 (input/output)
Deprecated implementations:
- ESP8266-DS18S20: old sensor implementation (pull mechanism)
todo
- upload database model
done
- created database for space state (log) and sensor values
- new php code online (currently running parallel with the old version)
- created new space state hardware interface using the ESP8266 which connects to the same old switch
First draft after recovery esp8266-SpaceAPI-full.tarNote that the used JSON parser library will cause heap corruption.- front page widget is now a real widget
- php backend source online
old version
- Updated JSON object to become SpaceAPI 0.13 compliant (see status.php)
- Content type and Cache-Control headers are now sent
- Now uses location object
- Now uses state object
- Space state now has a third state; null. (In case of uncertain state)
- Uploaded it to
ackspace.nl/status.phpbut the URL can be changed if necessary.. - From the SpaceAPI website: "In order to be able to retrieve the object from within a javascript sandbox, the server of the JSON object should set the ‘Access-Control-Allow-Origin’ header with a value of ‘*’ ".
- Added the JSON object to the existing Space state PHP script. Thanks CoolePascal for the help with the PHP stuff!