# Pushover RS
## Description
It's a Rust client library you can use to interact with the [Pushover](https://www.pushover.net/) messaging API.
This client is unofficial and I'm in no way linked to Pushover.
## State: Working & Maintained
## Where to get it
Get it directly from [crates.io](https://crates.io/crates/pushover-rs)
Cargo.toml:
```Cargo.toml
[dependencies]
pushover-rs = "*"
...
```
## How to use
### You need
* A Pushover account ([Create one](https://pushover.net/signup))
* An application you have created through the [dashboard](https://www.pushover.net/) ([Create one now](https://pushover.net/apps/build))
* Your user key
* Your app's token
### Usage example
See the [examples folder](/examples)
## Documentation
[It's here](https://docs.rs/pushover-rs/latest/)
## Run the tests
To run the tests, you'll need:
- Create a /testdata folder, in there:
- Put a picture called `attachment_test.jpg`
- Create a credentials.json with this inside:
```json
{
"token": "your token",
"user": "your user key"
}
```
- To recap:
```
/testdata
/testdata/attachment_test.jpg
/testdata/credentials.json
```
## Something missing, have a request or something is broken?
Please create an issue [here](https://github.com/Emka877/pushover-rs/issues/new) I'll treat it as soon as possible!
## Note
The API might change or break in the future, but i'll try my best not to break anything.
## Changelog
### 0.3.23
- Fixed a bug that prevented sending out emergency priority messages (missing retry and expire options).
- Now setting priority to value 2 (emergency) requires setting the newly available set_retry and set_expire options.
- If not provided, default values will be used (retry: 30, expire: 10800).
- Added support for sending messages with attachments asynchronously. (new exposed method `send_with_attachment_async`)
- Upgraded dependencies.
### 0.3.19 -> 0.3.22
Maintenance updates; upgrade of dependencies.
### 0.3.18
- Support the TTL option