Incomplete RESTful API for IRC
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Chris Smith 96b533e9dc Add Guice dependency 12 年之前
etc/ivy Add Guice dependency 12 年之前
nbproject Flesh out project, add version resource 12 年之前
src/name/smith/chris/restirc Flesh out project, add version resource 12 年之前
.gitignore Initial project structure 12 年之前
LICENSE.txt License 12 年之前
README.textile Planned resources 12 年之前
build-ivy.xml Initial project structure 12 年之前
build.xml Flesh out project, add version resource 12 年之前
ivy.xml Add Guice dependency 12 年之前

README.textile

h1. RestIRC

h2. What is it?

_RestIRC_ aims to provide a REST-ful interface to IRC. The primary use-case is
to allow websites, scripts and applications to quickly and easily interact with
IRC to, for example, notify certain channels about events. After that, the goal
is to enable remote scripts and applications to listen to and respond to events
by registering WebHooks.

Ideally, it will eventually be possible to write a full IRC client on top of
the API without having to interact with IRC itself directly.

h2. Resources

These are the planned resources that RestIRC will expose. Methods that aren't
yet implemented are -struck out-.

* /version (GET)
* /servers (-GET-, -POST-)
* /servers/*server* (-GET-)
* /servers/*server*/channels (-GET-, -POST-)
* /servers/*server*/channels/*channel* (-GET-, -PUT-, -DELETE-)
* /servers/*server*/channels/*channel*/topic (-GET-, -PUT-)
* /servers/*server*/channels/*channel*/topic/author (-GET-)
* /servers/*server*/channels/*channel*/messages (-GET-, -POST-)
* /servers/*server*/channels/*channel*/users (-GET-)
* /servers/*server*/users (-nothing?-)
* /servers/*server*/users/*user* (-GET-)
* /servers/*server*/users/*user*/messages (-GET-, -POST-)

In addition, most resources will expose a hooks subresource to allow
configuring WebHooks to be called:

* /hooks (-GET-)
* /hooks/*event-type* (-GET-, -PUT-, -POST-)
* /hooks/*event-type*/*hook-id* (-GET-, -PUT-, -DELETE-)