A Haskell Pushover API library https://github.com/DanMeakin/pushover
|Latest on Hackage:||0.1.0.1|
This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.
This is a small library for interacting with the Pushover API from within Haskell.
Pushover exposes a straightforward API for sending notifications to users of the Android and iOS Pushover app. Details of the API can be found at https://pushover.net/api.
This library exposes a number of types which represent a
Request and a
Response, and fields contained within these values. It provides functions
which can be used to create and make requests.
A basic request can be made as follows:-
>>> apiKey = makeTokenOrError "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" >>> userKey = makeTokenOrError "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyy" >>> sendMessage apiK usrK $ text "This is a test"
Assuming the keys are correct, this should immediately send the notification
to the user with
makeTokenOrError function shown here should not generally be used.
makeToken function checks the validity of the token and wraps
the output in Either.
A more useful approach is to integrate Pushover into your existing Monad stack.
This can be accomplished using the
>>> keys = createKeys "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyy" >>> keys >>= runReaderT (sendMessageM $ text "This is a test")
The Monad-based functions (all with a trailing
M in their name) require that
a request is executed within a stack including an instance of MonadError and
sendMessageM additionally requires a MonadReader and an instance of
the Reader module
for more details.