URI
En accord avec la RFC 2324, l'URI de la cafetière est quelque chose comme « café://$serveur/$machine/ » où :
- serveur : « LaboLyon.fr » en IPv6 bien sur !
- machine : « cafetière »
Opérations réalisables
- obtenir l'état global de la cafetière
- obtenir l'âge du café
- obtenir le niveau du café
- obtenir la température du café
- lancer le café
- faire chauffer le café
- arrêter la chauffe du café
Obtenir l'état global de la cafetière
- Méthode : GET
Résultat :
- OK
- code : 200
- Safe : yes
- XML (text/xml) de l'état
- Cafetière indisponible
- code : 404
- Safe : yes
- XML (text/xml) de la dernière présence connue
- Cafetière supprimée
- code : 410
- Safe : yes
- Microcontrôleur pas opérationnel
- code : 503
- Safe : yes
- XML (text/xml) du dernier état opérationnel connu
- Serveur en rade
- code : 500
- Safe : yes
- OK
Méthode : BREW
- Content-Type : "application/coffee-pot-command"
- coffee-message-body : "start" | "stop"
TODO
- étendre la RFC 2324 avec authentification → s'appuyer sur HTTP ?
- étendre la RFC 2324 avec chiffrement → s'appuyer sur SSL ?
Références
Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
Definitions of Managed Objects for Drip-Type Heated Beverage Hardware Devices using SMIv2
XML Media Types
Hypertext Transfer Protocol (HTTP) Status Code Registry
Hypertext Transfer Protocol -- HTTP/1.1
HTTP Header Field Registrations