<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article
  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'
  'http://www.docbook.org/xml/4.4/docbookx.dtd'>
<article><articleinfo><title>FreedomBox/Manual/ejabberd</title><revhistory><revision><revnumber>10</revnumber><date>2018-03-02 13:01:38</date><authorinitials>JosephNuthalapati</authorinitials><revremark>Consistent naming conventions</revremark></revision><revision><revnumber>9</revnumber><date>2017-01-07 17:42:27</date><authorinitials>JamesValleroy</authorinitials><revremark>add note about service restart</revremark></revision><revision><revnumber>8</revnumber><date>2017-01-02 13:48:30</date><authorinitials>JamesValleroy</authorinitials><revremark>add port forwarding info</revremark></revision><revision><revnumber>7</revnumber><date>2016-12-31 03:11:19</date><authorinitials>JamesValleroy</authorinitials><revremark>clarify</revremark></revision><revision><revnumber>6</revnumber><date>2016-12-31 03:10:19</date><authorinitials>JamesValleroy</authorinitials><revremark>mention web client</revremark></revision><revision><revnumber>5</revnumber><date>2016-12-31 02:35:52</date><authorinitials>JamesValleroy</authorinitials><revremark>add security info</revremark></revision><revision><revnumber>4</revnumber><date>2016-09-04 10:31:37</date><authorinitials>Drahtseil</authorinitials><revremark>added links</revremark></revision><revision><revnumber>3</revnumber><date>2016-04-10 07:18:35</date><authorinitials>PhilippeBaret</authorinitials><revremark>Added bottom navigation link</revremark></revision><revision><revnumber>2</revnumber><date>2015-12-15 18:37:29</date><authorinitials>PhilippeBaret</authorinitials><revremark>Added definition to Chat server page</revremark></revision><revision><revnumber>1</revnumber><date>2015-09-20 23:52:11</date><authorinitials>JamesValleroy</authorinitials><revremark>add xmpp page</revremark></revision></revhistory></articleinfo><section><title>Chat Server (XMPP)</title><section><title>What is XMPP?</title><para>XMPP is a federated protocol for Instant Messaging. This means that users who have accounts on one server, can talk to users that are on another server. XMPP can also be used for voice and video calls, if supported by the clients. </para><para>With XMPP, there are two ways that conversations can be secured: </para><orderedlist numeration="arabic"><listitem><para>TLS: This secures the connection between the client and server, or between two servers. This should be supported by all clients and is highly recommended. </para></listitem><listitem><para>End-to-end: This secures the messages sent from one client to another, so that even the server cannot see the contents. The latest and most convenient protocol is called OMEMO, but it is only supported by a few clients. There is another protocol called OTR that may be supported by some clients that lack OMEMO support. Both clients must support the same protocol for it to work. </para></listitem></orderedlist></section><section><title>Setting the Domain Name</title><para>For XMPP to work, your FreedomBox needs to have a Domain Name that can be accessed over the public Internet. You can read more about obtaining a Domain Name in the <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Manual/DynamicDNS#">Dynamic DNS section of this manual</ulink>. </para><para>Once you have a Domain Name, you can tell your FreedomBox to use it by setting the Domain Name in the System <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Manual/Configure#">Configuration</ulink>. </para><itemizedlist><listitem><para>Note: After changing your Domain Name, the Chat Server (XMPP) page may show that the service is not running. After a minute or so, it should be up and running again. </para></listitem></itemizedlist><para>Please note that <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/Pagekite#">Pagekite</ulink> does not support the XMPP protocol at this time. </para></section><section><title>Registering XMPP users through SSO</title><para>Currently, all users created through Plinth will be able to login to the XMPP server. You can add new users through the System Users and Groups module. It does not matter which Groups are selected for the new user. </para></section><section><title>Using the web client</title><para>After the XMPP module install completes, the JSXC web client for XMPP can be accessed at <code>https://&lt;your freedombox&gt;/plinth/apps/xmpp/jsxc/</code>. It will automatically check the BOSH server connection to the configured domain name. </para></section><section><title>Using a desktop or mobile client</title><para><ulink url="https://xmpp.org/software/clients.html">XMPP clients</ulink> are available for various desktop and mobile platforms. </para></section><section><title>Port Forwarding</title><para>If your FreedomBox is behind a router, you will need to set up port forwarding on your router. You should forward the following ports for XMPP: </para><itemizedlist><listitem><para>TCP 5222 (client-to-server) </para></listitem><listitem><para>TCP 5269 (server-to-server) </para></listitem></itemizedlist><para>Back to <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Features#">Features introduction</ulink> or <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Manual#">manual</ulink> pages. </para><!--rule (<hr>) is not applicable to DocBook--><informaltable><tgroup cols="8"><colspec colname="col_0"/><colspec colname="col_1"/><colspec colname="col_2"/><colspec colname="col_3"/><colspec colname="col_4"/><colspec colname="col_5"/><colspec colname="col_6"/><colspec colname="col_7"/><tbody><row rowsep="1"><entry colsep="1" rowsep="1"><para><emphasis role="strong">Information</emphasis></para></entry><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"><para><emphasis role="strong">Support</emphasis></para></entry><entry colsep="1" rowsep="1"><para><emphasis role="strong">Work Space</emphasis></para></entry><entry colsep="1" rowsep="1"/><entry colsep="1" rowsep="1"><para><emphasis role="strong">Reports</emphasis></para></entry><entry colsep="1" rowsep="1"><para><emphasis role="strong">Promote</emphasis></para></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Introduction#">Overview</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Hardware#">Hardware</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><emphasis role="strong"> </emphasis></para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Support#">Live Help</ulink>     </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Contribute#">Where To Start</ulink>     </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Translate#">Translate</ulink>    </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/ProgressCalls#">Calls</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/TalksAndPresentations#">Talks</ulink>     </para></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Features#">Features</ulink>     </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Vision#">Vision</ulink>     </para></entry><entry colsep="1" rowsep="1"><para><emphasis role="strong"> </emphasis></para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/QuestionsAndAnswers#">Q&amp;A</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Design#">Design</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/TODO#">To Do</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Metrics#">Metrics</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Press#">Press</ulink>     </para></entry></row><row rowsep="1"><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Download#">Download</ulink>     </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Manual#">Manual</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><emphasis role="strong"> </emphasis></para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/UserExperience#">Use cases</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Contribute/Code#">Code</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Contributors#">Contributors</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/ReleaseNotes#">Releases</ulink>      </para></entry><entry colsep="1" rowsep="1"><para><ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/FreedomBox/Blog#">Blog</ulink>     </para></entry></row></tbody></tgroup></informaltable><para><!--"~-smaller-~" is not applicable to DocBook-->HELP &amp; DISCUSSIONS: <ulink url="https://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss">Mailing List</ulink> - <ulink url="irc://irc.debian.org/freedombox">#freedombox irc.debian.org</ulink> | CONTACT <ulink url="https://freedomboxfoundation.org/">Foundation</ulink> | JOIN <ulink url="https://salsa.debian.org/freedombox-team/">Project</ulink>  </para><para><link linkend="">Next call</link>: Saturday, December 8th at 14:00 UTC </para><para><link linkend="">Latest news</link>: Stable FreedomBox images - 2017-08-05 </para><para>This page is copyright its contributors and is licensed under the <ulink url="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</ulink> license. </para><!--rule (<hr>) is not applicable to DocBook--><para> <ulink url="https://wiki.debian.org/FreedomBox/Manual/ejabberd/CategoryFreedomBox#">CategoryFreedomBox</ulink> </para></section></section></article>