#logging #logger #log

pb-async

Asynchronous client for the PushBullet API

1 unstable release

Uses old Rust 2015

0.1.0 Jun 19, 2018

#257 in #logger

MIT license

25KB
337 lines

pb-async

Linux Build Status Windows Build Status

Asynchronous Rust PushBullet client.

Not official nor associated with PushBullet in any way.


pb-async provides a Futures interface to the PushBullet v2 API.

Uses hyper and native-tls to make connections.

let token = std::env::var("PUSHBULLET_TOKEN")?;

let client = pb_async::Client::new(&token).unwrap();

tokio::run(
    client.push(
        pb_async::PushTarget::SelfUser {},
        pb_async::PushData::Note {
            title: "",
            body: "Hello, user!",
        },
    ).or_else(|error| {
        eprintln!("{}", error);
        Ok(())
    })
);

API Completion

Implemented:

  • authentication via user auth token
  • list-devices: listing user devices
  • create-push: creating a new push
  • upload-request: uploading and pushing files
  • get-user: retrieving user information

Not Implemented:

  • retrieving tokens for other users via OAuth
  • detailed device information in list-devices
  • push management APIs
  • device management APIs
  • chat APIs
  • subscription APIs

Maintenance Status

pb-async is a hobby library. I intend to maintain the project and update for any future versions of tokio, hyper and the PushBullet API.

I will not, however, be implementing new features. Pull Requests will be appreciated, reviewed and accepted, but I have no other plans to further this library.

Contributing

Contributions are welcome.

See CONTRIBUTING for more information.

Dependencies

~11–21MB
~275K SLoC