Configuration

November 7, 2014 · View on GitHub

Please see the example configuration file for an example.

PropertyDefault valueRequiredDescription
xmpp.host127.0.0.1The XMPP server host (IP address or hostname)
xmpp.port5347XMPP server component port
xmpp.secretkeyComponent secret
server.domainXMPP server domain
server.domain.channelsBuddycloud server domain / Component address
server.domain.topicsTopics component address
jdbc.proxool.driver-urlDatabase connection string
jdbc.userDatabase username
jdbc.passwordDatabase password
jdbc.proxool.maximum-connection-countDatabase connection pool size
users.adminAdmin users (list of jids). Are sent all notifications and are able to see everything in /firehose
notifications.sendToList of JIDs to send event messages to
notifications.connectedSend event of component connecting to XMPP server
channels.autosubscribeA list of channels (local or remote) to which to subscribe new users. Only the base JID is required. Note: channels will not be created - they must already exist
channels.autosubscribe.autoapproveIf any of the 'channels.autosubscribe' channels are private local channels, then whether to automatically approve the user. Note: This will only work on local private channels
channel.configuration.default.accessmodelopenThe default access model for new nodes
channel.configuration.default.affiliationmemberThe default affiliation for new nodes
channel.configuration.[posts or status or geo.next, etc].accessmodelOverride default access model on the node type
channel.configuration.[posts or status or geo.next, etc].affiliationOverride default affiliation on the node type
channel.configuration.[posts or status or geo.next, etc].title%jid%'s statusOverride default node title on the node type
channel.configuration.[posts or status or geo.next, etc].description%jid%'s statusOverride default node description on the node type
discovery.dns.enabledtrueAllow DNS discovery of other channel servers
sync.purge-on-startfalsePurge remote data on server start
users.presence.persistfalseIf true then user presence status is stored in the database rather than in memory
component.startup.delay5000If component can't connect wait this amount of milliseconds until trying again (maximum of 5 times before fail)

Database based configuration

If you prefer to load your configuration from a database then this is possible. Simply load all your configuration key/values into the "configuration" table within the database (note: jdbc.proxool.driver-url, jdbc.user, and jdbc.password values will be ignored). When starting the server set an evironment variable of DATABASE to the Postgres connection string which will connect to your database. For example:

DATABASE="jdbc:postgresql://localhost:5432/buddycloud-server?user=buddycloud&password=tellnoone"

The server will then use the database values to configure itself, the configuration.properties file will be ignored.

Node Configuration

  • Title: Max length 128 characters
  • Description: Max length 1024 characters