(5)
I've implemented a variant of it as part of an assignment which ended up proving that over half the class didn't understand a damn thing. We had to treat it as a serious working base and develop it into something with a server implementation which would effectively do everything but actually brew the coffee, including tracking pot status and available additions. I seem to recall we ended up dropping a fair few things from the protocol and concentrating on a core set. But yes, it is an otherwise ridiculous thing to do. :) - Rob

(3)
HTCPCP, not HTTP - Andrew Dashin

(1)
It could have been status code 420, without the tea. - ssg

[+82]
[2009-12-30 11:37:36]
Daniel Vassallo
[ACCEPTED]

This is a status code for a protocol that was introduced as an April Fools' joke in 1998.

It kindly asks that entries are sent at least 2 weeks prior to April 1st so that the RFC Editor team would have enough time to review all the documents and to prepare those that will be published.

As for the coffee pot protocol, it is officially called the "Hyper Text Coffee Pot Control Protocol". Although the RFC describing it is not to be taken seriously, the protocol is specified accurately enough for it to be considered a non-fictional protocol. It is an extension of HTTP, which comes some additional verbs like BREW and WHEN, and with two error messages, one of which is 418: I am a teapot (...not a coffee pot!).

If this inspired you to start working on a physical implementation, you may want to start by understanding the basics from this Wikipedia article:

The HTCPCP server is a teapot. The
responding entity MAY be short and
stout. This code was defined as one of
the traditional IETF April Fools'
jokes, in RFC 2324, Hyper Text Coffee
Pot Control Protocol, and is not
expected to be implemented by actual
HTTP servers.

418 I'm a teapot
The HTCPCP server is a teapot. The responding entity MAY be short and stout. This code was defined as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers.

[1] http://en.wikipedia.org/wiki/List%5Fof%5FHTTP%5Fstatus%5Fcodes

5

[+4]
[2009-12-30 11:38:30]
steve

According to the RFC ( http://tools.ietf.org/html/rfc2324 ) This is part of a protocol called Hyper Text Coffee Pot Control Protocol. It's to support the automation of coffee machines via the internets.

From what I've seen lighthttp does not support it.

Also while this is a joke, it's actually very useful. As the 'internet of things' kicks off you will find the more lightweight it is to communicate with a low powered device the better.