• Stars
    star
    2,842
  • Rank 16,002 (Top 0.4 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 10 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An XMPP server licensed under the Open Source Apache License.

Openfire alt tag

Openfire CI Project Stats

About

Openfire is a real time collaboration (RTC) server licensed under the Open Source Apache License. It uses the only widely adopted open protocol for instant messaging, XMPP (also called Jabber). Openfire is incredibly easy to setup and administer, but offers rock-solid security and performance.

Openfire is a XMPP server licensed under the Open Source Apache License.

Openfire - an Ignite Realtime community project.

Bug Reporting

Only a few users have access for filling bugs in the tracker. New users should:

  1. Create a Discourse account
  2. Login to a Discourse account
  3. Click on the New Topic button
  4. Choose the Openfire Dev category and provide a detailed description of the bug.

Please search for your issues in the bug tracker before reporting.

Resources

Ignite Realtime

Ignite Realtime is an Open Source community composed of end-users and developers around the world who are interested in applying innovative, open-standards-based Real Time Collaboration to their businesses and organizations. We're aimed at disrupting proprietary, non-open standards-based systems and invite you to participate in what's already one of the biggest and most active Open Source communities.

Making changes

The project uses Maven and as such should import straight in to your favourite Java IDE. The directory structure is fairly straightforward. The main code is contained in:

  • Openfire/xmppserver - a Maven module representing the core code for Openfire itself

Other folders are:

  • Openfire/build - various files use to create installers for different platforms
  • Openfire/distribution - a Maven module used to bring all the parts together
  • Openfire/documentation - the documentation hosted at igniterealtime.org
  • Openfire/i18n - files used for internationalisation of the admin interface
  • Openfire/plugins - Maven configuration files to allow the various plugins available to be built
  • Openfire/starter - a small module that allows Openfire to start in a consistent manner on different platforms

To build the complete project including plugins, run the command

./mvnw verify

However much of the time it is only necessary to make changes to the core XMPP server itself in which case the command

./mvnw verify -pl distribution -am 

will compile the core server and any dependencies, and then assemble it in to something that can be run.

Testing your changes

IntelliJ IDEA:

  1. Run -> Edit Configurations... -> Add Application
  2. fill in following values
    1. Name: Openfire
    2. Use classpath of module: starter
    3. Main class: org.jivesoftware.openfire.starter.ServerStarter
    4. VM options (adapt accordingly):
      -DopenfireHome="-absolute path to your project folder-\distribution\target\distribution-base" 
      -Xverify:none
      -server
      -Dlog4j.configurationFile="-absolute path to your project folder-\distribution\target\distribution-base\lib\log4j2.xml"
      -Dopenfire.lib.dir="-absolute path to your project folder-\distribution\target\distribution-base\lib"
      -Dfile.encoding=UTF-8
      
    5. Working directory: -absolute path to your project folder-
  3. apply

You need to execute mvnw verify before you can launch openfire.

Other IDE's:

Although your IDE will happily compile the project, unfortunately it's not possible to run Openfire from within the IDE - it must be done at the command line. After building the project using Maven, simply run the shell script or batch file to start Openfire;

./distribution/target/distribution-base/bin/openfire.sh

or

.\distribution\target\distribution-base\bin\openfire.bat

Adding -debug as the first parameter to the script will start the server in debug mode, and your IDE should be able to attach a remote debugger if necessary.

More Repositories

1

Smack

A modular and portable open source XMPP client library written in Java for Android and Java (SE) VMs
Java
2,373
star
2

Spark

Cross-platform real-time collaboration client optimized for business and organizations.
Java
569
star
3

pade

Pàdé (Yoruba word for Meet) is a browser extension (Chrome/Edge) based unified communications desktop client for Openfire.
Go
104
star
4

REST-API-Client

Java REST API Client for the Openfire to manage Openfire instances by sending an REST/HTTP request to the server
Java
102
star
5

jxmpp

A Java library providing fundamental abstractions for XMPP
Java
96
star
6

community-plugins

DEPRECATED (Use the new ofmeet and ofchat repos instead). Maintained for historical reasons only
JavaScript
77
star
7

openfire-pade-plugin

A plugin for Openfire that offers web-based unified communications - chat, groupchat, telephone, audio and video conferencing.
JavaScript
54
star
8

openfire-ofmeet-plugin

Provides an HTTP Online Meeting solution for Openfire using Jitsi Meet.
Java
47
star
9

Fastpath-webchat

Fastpath Web Chat Component
Java
40
star
10

Whack

Open Source XMPP component library for XMPP components
Java
32
star
11

tinder

Java
30
star
12

openfire-restAPI-plugin

Allows Openfire administration over a RESTful API.
Java
19
star
13

openfire-monitoring-plugin

Adds support for chat archiving and server statistics to Openfire
Java
18
star
14

jbosh

XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)
Java
16
star
15

openfire-exampleplugin

Example Openfire Plugin using Maven build
Java
15
star
16

asterisk-im

Igniterealtime Asterisk IM
Java
15
star
17

Openfire-Chat

Chat API (REST) for Openfire
JavaScript
15
star
18

Sparkweb

Web based Spark XMPP Client (abandoned)
ActionScript
12
star
19

openfire-hazelcast-plugin

Adds support for running multiple redundant Openfire servers together in a cluster
Java
10
star
20

webmeet

A web component that can be embedded in a web site to provide a fastpath to a work-group queue
JavaScript
9
star
21

IgniteRealtime-Website

Code for igniterealtime.org
JavaScript
9
star
22

Openfire-connectionmanager

Connection Manager for Openfire
Java
8
star
23

openfire-httpFileUpload-plugin

Adds XEP-0363 functionality to Openfire that allows compliant clients to exchange files
Java
8
star
24

openfire-callbackOnOffline-plugin

Url is called when recipient is offline
Java
7
star
25

openfire-pushnotification-plugin

Openfire plugin that adds support for Push Notification (XEP-0357).
Java
7
star
26

openfire-fastpath-plugin

Adds support for managed queued chat requests, such as a support team might use
JavaScript
5
star
27

openfire-bookmarks-plugin

Allows clients to store URL and group chat bookmarks (XEP-0048)
Java
5
star
28

XIFF

XIFF is an Open Source Flash library for instant messaging and presence clients using the XMPP protocol.
ActionScript
5
star
29

bosh_loadtest

Load test BOSH (Bidirectional-streams Over Synchronous HTTP) on Openfire
Python
5
star
30

openfire-certificateManager-plugin

Adds functionality to Openfire that relates to administration of its certificate stores
Java
4
star
31

openfire-ohun-plugin

A simple audio conferencing solution for Openfire using the Kraken WebRTC
Java
4
star
32

Rdp

Remote Desktop Protocol Gateway for Remote Desktop Control
HTML
4
star
33

openfire-userStatus-plugin

Automatically saves the last status (presence, IP address, logon and logoff time) per user and resource to userStatus table in the Openfire database
Java
4
star
34

openfire-subscription-plugin

Allows to configure automatic acceptance or rejection of subscription requests
Java
3
star
35

openfire-contentFilter-plugin

Allows admins to configure various actions based on message content
Java
3
star
36

openfire-xmldebugger-plugin

Records XMPP traffic which can be useful for debugging purposes
Java
3
star
37

OpenfireLogReader

C#
3
star
38

openfire-randomavatar-plugin

An Openfire plugin that exposes a webservice for avatars.
Java
3
star
39

openfire-passwordreset-plugin

A plugin for Openfire that provides password reset functionality.
Java
3
star
40

openfire-search-plugin

Adds Jabber Search (XEP-0055) capabilities to Openfire
Java
3
star
41

openfire-emailOnAway-plugin

The email on away plugin allows to forward messages to user's email address when the user is away (not offline)
Java
3
star
42

openfire-nodejs-plugin

Enables integration between NodeJs applications and Openfire
Java
3
star
43

openfire-clientControl-plugin

Allows to specify XMPP clients that are allowed to connect to the server, which Spark features are enabled and control which Spark version should be used by clients
Java
3
star
44

openfire-nonSaslAuthentication-plugin

The Non-SASL Authentication plugin provides an implementation for authentication with XMPP servers and services using the jabber:iq:auth namespace.
Java
3
star
45

openfire-inverse-plugin

Adds inVerse web client to Openfire
HTML
3
star
46

Botz

The Botz library adds to the already rich and extensible Openfire with the ability to create internal user bots. With the Botz library, programmers may choose to develop a user bot to run as a service bearing [email protected] as its JID. To Openfire, the user bot is just like other (human) users.
Java
3
star
47

openfire-zgitea-plugin

This Openfire plugin adds a real-time communication to content management using a familiar GIT based workflow to create a very responsive collaboration platform that will enable an agile team to create, manage and deliver any type of content with quality assurance.
JavaScript
3
star
48

openfire-presence-plugin

A service that provides simple presence information over HTTP
Java
3
star
49

openfire-blacklistSpam-plugin

Uses an external blacklist to reject traffic from specific addresses.
Java
2
star
50

openfire-sparkweb-plugin

This plugin adds support for a whole range of modern web client services (REST, SSE JWT and WebAuthn) to Openfire/XMPP.
HTML
2
star
51

Openfire-Switch

Media Control Unit for media mixing and routing using FreeSWITCH
Java
2
star
52

openfire-galene-plugin

Media SFU for Openfire using Galene
JavaScript
2
star
53

spark-jxbrowser

A JxBrowser-based web-browser providing plugin for Spark.
Java
2
star
54

openfire-pionturn-plugin

This plugin provides a TURN/STUN Server for Openfire
Java
2
star
55

openfire-gojara-plugin

Implements the XEP-0321 - Remote Roster Management
JavaScript
2
star
56

openfire-mucextinfo-plugin

An Openfire plugin that allows an admin to configure Extended Service Discovery information to Multi User Chat entities.
Java
2
star
57

openfire-broadcast-plugin

The broadcast plugin broadcasts messages to all users in the system or to specific groups
Java
2
star
58

oldcommunity

Forwarding web host to keep old Jive Community Forums URIs working
HTML
2
star
59

Openfire-Social

Provides a social network with member profiles, activity streams, user groups, messaging, blogs and more by integrating Openfire with WordPress, bbPress and BuddyPress
PHP
2
star
60

openfire-sip-plugin

Lets you configure SIP phone support in Spark from the server
Java
2
star
61

openfire-justmarried-plugin

Allows admins to rename or copy users on the local server
Java
1
star
62

openfire-tikitoken-plugin

Adds a SASL mechanism that allows users to authenticate against a token that is generated by an instance of Tiki Wiki CMS Groupware
Java
1
star
63

DrawIO

Web Diagramming Tool that uses SVG and HTML for rendering and packaged as an Openfire plugin
JavaScript
1
star
64

.github

Welcome to Ignite Realtime!
1
star
65

openfire-pushserver-plugin

Send push notifications to mobile devices through FCM or APNS
Kotlin
1
star
66

openfire-jabberbrowsing-plugin

This plugin implements the (obsolete!) XEP-0011 'Jabber Browsing' specification for service discovery using the jabber:iq:browse namespace.
Java
1
star
67

openfire-userCreation-plugin

Java
1
star
68

openfire-motd-plugin

Allows admins to have a message sent to a user each time they login
Java
1
star
69

openfire-jsxc-plugin

Adds the (third-party) JSXC web client to Openfire.
Java
1
star
70

openfire-threaddump-plugin

An Openfire plugin that allows administrators to create Java thread dumps.
Java
1
star
71

openfire-jidvalidation-plugin

An Openfire plugin that adds JID validation functionality.
Java
1
star
72

openfire-osw-plugin

Adds onesocialweb protocol support to an openfire server
HTML
1
star
73

openfire-jingleNodes-plugin

Java
1
star
74

ci-tooling

Tooling used for continuous integration.
Shell
1
star
75

Docker

Docker Management Plugin for Openfire
Java
1
star
76

openfire-emailListener-plugin

A service that connects to an email server using IMAP and forwards new email messages to specified users
Java
1
star
77

openfire-candy-plugin

Adds Candy web client to Openfire
JavaScript
1
star
78

Tiki

Openfire Auth, Admin, User, Group and vCard providers for Tiki using direct database access
1
star
79

openfire-userImportExport-plugin

Provides a way to import and export Openfire user data via the Admin Console
Java
1
star
80

openfire-mucservice-plugin

(Deprecated) Please use the REST API Plugin. MUC administration over REST Interface
Java
1
star
81

openfire-s2stest-plugin

Openfire plugin for testing connectivity over s2s
Java
1
star
82

openfire-externalservicediscovery-plugin

Allows XMPP entities to discover services that are external to the XMPP network
Java
1
star
83

openfire-llama-plugin

LLaMA 2 Inference Engine for Openfire
HTML
1
star
84

openfire-packetFilter-plugin

Allows you to create rules that will block or reject certain packets to the server
Java
1
star
85

openfire-stunserver-plugin

Provides address discovery for peer-to-peer sessions to be used for media transmission and receiving of UDP packets
Java
1
star
86

openfire-rawpropertyeditor-plugin

A raw editor for Openfire user and group properties
Java
1
star
87

openfire-dbaccess-plugin

Provides a very simplistic direct DB access tool in the Admin Console
Java
1
star
88

openfire-irmaserver-plugin

I Reveal My Attributes to Openfire.
Java
1
star
89

Solo

An Openfire plugin for creating a blog website using Solo from b3log.org
JavaScript
1
star
90

openfire-jmxweb-plugin

Java
1
star
91

openfire-userservice-plugin

(Deprecated) Please use the REST API Plugin. Allows administration of users via HTTP requests.
Java
1
star
92

openfire-registration-plugin

Allows admins to configure various actions whenever a new user creates an account
Java
1
star
93

IPFS

Enables Openfire to become a node in the inter-planetary file system
Java
1
star
94

openfire-agentinformation-plugin

This plugin implements the (obsolete!) XEP-0094 'Agent Information' specification for service discovery using the jabber:iq:agents namespace.
Java
1
star
95

openfire-exi-plugin

Adds support for XEP-0322: Efficient XML Interchange (EXI) Format
Java
1
star
96

openfire-loadStats-plugin

The statistic plugin prints usage information of the database connection pool, thread pool used for processing incoming traffic and the NIO networking layer
Java
1
star
97

openfire-broadcastbox-plugin

User media streams publish-subscribe using WebRTC-HTTP ingestion-egress with Broadcast Box
Java
1
star