summaryrefslogtreecommitdiff
path: root/xmpp.html
blob: f5c9c8fa901dd1bef596d9c1e09d9237729a3229 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<!DOCTYPE html>
<html>
<head>
<title>rx</title>
<link rel="stylesheet" href="style.css" />

<style>
a.link {color: #0000A0;}
a.visited {color: #A000A0;}
a.active {color: #00A000;}
pre, code {font-size: 11pt; background: #ddd;}
</style>
</head>
<body>
<h1>rx - how to use the XMPP bridge</h1>
<p>The XMPP bridge enables you to use IRC from an XMPP client.  The bridge will act as a bouncer you can interact from XMPP, thus you will receive history while away by default.</p>

<h2>Features</h2>
<ul>
	<li>History is recorded and sent via <a href="https://xmpp.org/extensions/xep-0313.html">MUC MAM</a> (configure your server to support it!)</li>
	<li>Native experience: IRC users show up as XMPP users and vice-versa</li>
	<li>Not annoying to IRC users</li>
</ul>

<h2>Getting started</h2>
<p>You may connect to rx from XMPP by joining a channel hosted on rx from XMPP, like <code>#support@rx.trans.vitali64.duckdns.org</code>.  The channel format is <code>#channel@rx.trans.vitali64.duckdns.org</code>.<br/>
The connection is closed if you leave all IRC channels.<br/>
To receive presence info from the bridge, add <code>rx.trans.vitali64.duckdns.org</code> to your XMPP Roster.  The bridge will always accept roster requests.
</p>

<h2>How bridging is handled</h2>
<p>There are various features XMPP has that IRC currently lacks.  Usually those are 'translated' to IRC in various ways.</p>
<ul>
	<li>Multiline messages are split into multiple messages (PRIVMSG)</li>
	<li>Files are sent as links</li>
	<li>Edits are sent as new messages (so don't abuse them or you might get into trouble!)</li>
</ul>
<p>Unlike other bridges, the XMPP bridge does roughly return what gets sent to IRC, so what you will see in your XMPP will be what was sent to IRC.</p>

<h2>Configuring the bridge</h2>
<p>The XMPP bridge supports a wide variety of options, accessible via XMPP <a href="https://xmpp.org/extensions/xep-0050.html">Ad-Hoc commands</a>:</p>

<ul>
	<li><code>disconnect-from-irc-server</code>: Disconnect from rx</li>
	<li><code>get-irc-connection-info</code>: Returns list of channels joined and connection status</li>
	<li><code>global-configure</code>: Configure global channel settings</li>
	<ul>
		<li><b>Record history</b>: Choose if history should be logged (default: True)</li>
		<li><b>Make all channels persistent</b>: Stay joined to channels while disconnected from XMPP (default: True)</li>
	</ul>
	<li><code>server-configure</code>: Configure IRC server connection settings</li>
	<ul>
		<li><b>Nickname</b>: Nickname to use when connecting to the server (default: unset)</li>
		<li><b>After-connection IRC commands</b>: Raw IRC commands to run automatically after connecting (default: unset)</li>
		<li><b>Realname</b>: Gecos/realname to be used (default: XMPP JID)</li>
	</ul>
</ul>

<h2>Known issues</h2>
<ul>
	<li>The XMPP bridge currently cannot identify to NickServ accounts</li>
	<li>Your JID will be shown to everyone else, either in the IRC realname/gecos or the ident</li>
</ul>

<h2>See also</h2>
<p>For more documentation about the bridge software, see <a href="https://doc.biboumi.louiz.org/user.html">https://doc.biboumi.louiz.org/user.html</a></p>

<h2>Need help?</h2>
<p>We're available in the <code>xmpp:#support@rx.trans.vitali64.duckdns.org?join</code> channel for any questions that may arise.</p>
</body>
</html>