mellon-web: A REST web service for Mellon controllers
The mellon-web
package wraps a mellon-core
controller in a REST
web service, making it possible to control physical access devices
from an HTTP client. The package includes both a WAI application
server, and native Haskell client bindings for the service.
Like the mellon-core
controller interface, the mellon-web
REST API
is quite simple. There are only 3 methods:
GET /time
returns the system time on the server. This is made available for diagnostic purposes, primarily to ensure the server has an accurate clock.GET /state
returns the controller's current state (eitherLocked
orUnlocked date
wheredate
is the UTC time at which the controller will automatically lock again).PUT /state
sets the controller's current state. Use this method to lock and unlock the controller.
See the included API.md document for detailed documentation on the REST service.
Note that the mellon-web
server does not provide an authentication
mechanism! You should proxy it behind a secure, authenticating HTTPS
server such as Nginx.
[Skip to Readme]
Modules
- Mellon
- Web
- Mellon.Web.Client
- Mellon.Web.Server
- Mellon.Web.Server.API
- Mellon.Web.Server.DocsAPI
- Web
Flags
Manual Flags
Name | Description | Default |
---|---|---|
test-hlint | Enabled | |
mock-example | Enabled | |
gpio-example | Enabled | |
client-unlock-example | Enabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- mellon-web-0.7.0.3.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 0.7.0.1, 0.7.0.3, 0.7.1.0, 0.7.1.1, 0.8.0.2, 0.8.0.3, 0.8.0.4, 0.8.0.5, 0.8.0.6, 0.8.0.7 |
---|---|
Change log | changelog.md |
Dependencies | aeson (>=0.11 && <0.12), base (>=4.8 && <5), bytestring (>=0.10 && <0.11), exceptions (>=0.8.0 && <1), hpio (>=0.8 && <1), http-client (>=0.4 && <0.5), http-client-tls, http-types (>=0.9 && <0.10), lucid (>=2.9 && <2.10), mellon-core (>=0.7 && <0.8), mellon-gpio (>=0.7 && <0.8), mellon-web, mtl, network (>=2.6 && <2.7), optparse-applicative (>=0.11.0 && <0.13), servant (>=0.7.1 && <0.10), servant-client (>=0.7.1 && <0.10), servant-docs (>=0.7.1 && <0.10), servant-lucid (>=0.7.1 && <0.10), servant-server (>=0.7.1 && <0.10), text (>=1.2 && <1.3), time (>=1.5 && <2), transformers (>=0.4.2 && <0.6), wai (>=3.2 && <3.3), warp (>=3.2 && <3.3) [details] |
Tested with | ghc ==7.10.3, ghc ==8.0.1 |
License | BSD-3-Clause |
Copyright | Copyright (c) 2016, Drew Hess |
Author | Drew Hess <src@drewhess.com> |
Maintainer | Drew Hess <src@drewhess.com> |
Category | Web |
Home page | https://github.com/dhess/mellon/ |
Bug tracker | https://github.com/dhess/mellon/issues/ |
Source repo | head: git clone git://github.com/dhess/mellon.git this: git clone git://github.com/dhess/mellon.git(tag v0.7.0.3) |
Uploaded | by dhess at 2016-09-24T00:27:26Z |
Distributions | |
Executables | mellon-schedule-unlock, gpio-mellon-server, mock-mellon-server |
Downloads | 5710 total (18 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2016-11-19 [all 2 reports] |