apns

Library for Apple Push Notification Service

12 releases

Uses old Rust 2015

0.1.1 Dec 25, 2015
0.1.0 Jun 22, 2015
0.0.10 Apr 2, 2015
0.0.9 Mar 9, 2015
0.0.6 Feb 28, 2015

Apache-2.0

14KB
336 lines

apns

APNS(Apple Push Notification Service) implemented in Rust

Build Status

Config

let cert_file = Path::new("ck.pem");
let private_key_file = Path::new("no_pwd.pem");
let ca_file = Path::new("ca.pem");
let sandbox_environment = false;
let apns = apns::APNS::new(sandbox_environment, cert_file, private_key_file, ca_file);

Payload Alert(Plain Format)

let alert = apns::PayloadAPSAlert::Plain("Hello world");

Payload Alert(Localized Format)

let alert = apns::PayloadAPSAlert::Localized(loc_key, loc_args);

Send Payload

let aps = apns::PayloadAPS{alert: alert, badge: Some(1), sound: Some(sound), content_available: None};

// Custom data
let mut map = HashMap::new();
map.insert("source_id", "from");
map.insert("target_id", "to");
map.insert("message_type", "msg");
let payload = apns::Payload{aps: aps, info: Some(map)};

apns.send_payload(payload, device_token);

Feedback Service

apns.get_feedback();

Dependencies

~3.5–4.5MB
~96K SLoC