Ejabberd Mod Apns Save Abandoned

An ejabberd module to send PUSH messages to iOS devices through APNS

Project README

mod_apns

Fork Me Now! Spread the project for great good!

An ejabberd module to send offline messages as PUSH notifications for iOS.

Consider using mod_push which implements XEP-0357 and works with many PUSH services.

This module has nothing to do with XEP-0357 so far.

The main goal of this module is to send all offline messages to the registered (see Usage) clients via APNS.

Donate

Compilation:

Because of the dependencies such as xml.hrl, logger.hrl, etc it's recommended to compile the module with ejabberd itself: put it in the ejabberd/src directory and run the default compiler.

Configuration:

To let the module work fine with Apple Push Notification Service APIs, put these lines in the modules section:

mod_apns:
  address: "gateway.push.apple.com"
  port: 2195
  certfile: "cert.pem"
  keyfile: "key.pem"

You can use a password field in case if you have a password-protected certificate.

Usage (Client to server):

You need to send this stanza to the server over the XMPP connection, to let the server know your client token:

<iq to="YourServer" type="set">
  <register xmlns="https://apple.com/push" >
    <token>TOKEN</token>
  </register>
</iq>

The key will be kept in mnesia database and completely belong to the JabberID which it was sent from.

What it sends to APNS:

{
  "aps":
    {
      "alert": "Hello!",
      "sound": "default"
    }, 
  "source": "[email protected]",
  "destination":"[email protected]"
}

Compatibility:

The module works fine with recent ejabberd versions.

For the older ones, checkout the ejabberd14 and ejabberd16 branches.

Open Source Agenda is not affiliated with "Ejabberd Mod Apns" Project. README Source: mrDoctorWho/ejabberd_mod_apns
Stars
32
Open Issues
10
Last Commit
6 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating