| CARVIEW |
Select Language
HTTP/1.1 200 OK
Connection: keep-alive
Server: nginx/1.24.0 (Ubuntu)
Content-Type: text/html; charset=utf-8
Cache-Control: public, max-age=300
Content-Encoding: gzip
Via: 1.1 varnish, 1.1 varnish
Accept-Ranges: bytes
Age: 0
Date: Sun, 18 Jan 2026 07:02:51 GMT
X-Served-By: cache-dfw-kdal2120094-DFW, cache-bom-vanm7210091-BOM
X-Cache: MISS, MISS
X-Cache-Hits: 0, 0
X-Timer: S1768719772.568733,VS0,VE382
Vary: Accept, Accept-Encoding
transfer-encoding: chunked
hcoap: CoAP implementation for Haskell.
[Skip to Readme]
hcoap: CoAP implementation for Haskell.
CoAP library for writing CoAP clients, servers or just for decoding and encoding CoAP messages. The Network.CoAP.Server and Network.CoAP.Client modules allows building CoAP servers and clients on top of a messaging layer which provides reliable transport of CoAP requests/responses.
[Skip to Readme]
Modules
[Index]
Downloads
- hcoap-0.1.2.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.1.0, 0.1.2.0, 0.1.2.1 |
|---|---|
| Dependencies | async (>=2.0 && <3), base (>=4 && <5), binary (>=0.7 && <0.8), bytestring (>=0.10 && <0.11), dns (>=2 && <3), hcoap, iproute (>=1.3 && <2), mtl (>=2.1 && <2.3), network (>=2.6 && <2.7), network-uri (>=2.6 && <3), random (>=1.1 && <2), stm (>=2.4 && <2.5), time (>=1.4 && <1.6) [details] |
| License | BSD-3-Clause |
| Copyright | Copyright (c) 2016, Ulf Lilleengen |
| Author | Ulf Lilleengen |
| Maintainer | ulf.lilleengen@gmail.com |
| Uploaded | by lulf at 2016-02-18T21:36:00Z |
| Category | Network |
| Home page | https://github.com/lulf/hcoap |
| Source repo | head: git clone git://github.com/lulf/hcoap.git |
| Distributions | |
| Executables | hcoap-example-client, hcoap-example-server |
| Downloads | 3633 total (18 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating |
|
| Status | Docs uploaded by user Build status unknown [no reports yet] |
Readme for hcoap-0.1.2.1
[back to package description]Hcoap is a haskell CoAP library. See https://coap.technology/ for more information about the CoAP protocol. The library aims to support RFC 7252 specification, and currently only support non-secure CoAP transport.
The library is split into a high-level API in Network.CoAP.Server and Network.CoAP.Client, and a lower layer API in Network.CoAP.Message for working directly with CoAP messages.
Example server
main =
withSocketsDo $ do
sock <- socket AF_INET6 Datagram defaultProtocol
bindSocket sock (SockAddrInet6 5683 0 iN6ADDR_ANY 0)
server <- createServer (createUDPTransport sock) (\(request, _) -> do
let payload = Just (B.pack "{\"value\":\"foo\"}")
return (Response Content [ContentFormat ApplicationJson] payload))
runServer server
Example client
main = do
let request = Request { requestMethod = GET
, requestOptions = []
, requestPayload = Nothing
, requestReliable = True }
withSocketsDo $ do
sock <- socket AF_INET6 Datagram defaultProtocol
bindSocket sock (SockAddrInet6 0 0 iN6ADDR_ANY 0)
let transport = createUDPTransport sock
client <- createClient transport
uri <- parseURI "coap://[::1]:5683/hello"
response <- doRequest client uri request
putStrLn ("Got response: " ++ show response)
return ()