powered by Jive Software

New Openfire plugin: Push Server!

The Ignite Realtime Community is pleased to announce the 1.0.0 release of the Push Server plugin for Openfire. This plugin is developed by the company Busoft Teknoloji A.Ş. It is inspired by Conversations Push Proxy and developed for Openfire.

Your instance of Openfire should automatically display the availability of the new plugin in the next few hours. Alternatively, you can download the the plugin directly from the Push Server plugin archive page.

Stop by our support groupchat to get in touch, or leave a message on our community site.

For other release announcements and news follow us on Twitter

What is this plugin for

Due to the restrictions in push services (FCM or APNS), only the developer can create push notifications for their apps. For this reason a user’s server wouldn’t be able to wake up a user’s device directly but has to proxy that wake up signal through the infrastructure of the app developer.

Push Server Plugin is an XEP-0357: Push Notifications app server that relays push messages between the user’s server and FCM (Firebase Cloud Messaging) or APNS (Apple Push Notification Service).

Here is a quick description of how this relationship is set up.

XMPP Client sends to the app server

- Device Token
- Device Id

App Server generates

- Node Id
- Secret

App Server stores

- Device Token
- Device Id
- Node
- Secret

App Server returns to XMPP Client

- Node Id

XMPP Client sends to the user's server

- Node ID
- The jid of the app server (push.example.com)

The user’s server sends to the app server

(Achived by Openfire Push Notification plugin)

When a push is required the user’s server will send the node id to the app server. The user’s server can also add additonal information like number of messages pending, the sender jid of the last message and even the body of the last message.

An example of that communication can be found in XEP-0357 Section 7.

5 Likes

Hi hamzaozturk,
I have problems with the correct number/date of this plugin’s last release.

  • In your 16-set-2022 message is announced the 1.0.0 release;
  • In my server’s Admin Console I see the 1.0.0 release number but dated 2-set-2021;
  • In the plugin’s archive page the last release is dated 16-set-2022 but the number is 1.0.1;

Maybe it’s only a typo, but I don’t know which is the correct .jar to install.
Thanks for your attention!

Hi francesco,

Unfortunately, it is only a typo. You can use the one with version number 1.0.0 released at Sep 2, 2021 in the plugin’s archive page. It is also the same one published in the Plugin’s Admin Console.

1 Like

Thanks!

Hi hamzaozturk,
That’s a great plug-in, I’m waiting for.

I already installed Push Notification Plugin on my Openfire server node and about to build an app server with tigase or some other.

If I install Push Server Plugin at the node, can I deliver the push notification without any additional node?

Even if yes, do I need to add a domain for a virtual host at the node?

Finally, I’m just wondering if it’s possible to do both xmpp service and push app service on one node of Openfire with this plugin.

If it is not appropriate to ask such a question here, please let me know.

Hi hoonlee,

Thanks for your interest to the plugin.

If I install Push Server Plugin at the node, can I deliver the push notification without any additional node?
Yes

Even if yes, do I need to add a domain for a virtual host at the node?
No

Finally, I’m just wondering if it’s possible to do both xmpp service and push app service on one node of Openfire with this plugin.
Yes

If you have more questions, please feel free to ask.

1 Like

Thank you!
I’ll try it with my Openfire server.