Additions and clarifications to readme

This commit is contained in:
Travis Burtrum 2015-11-29 00:25:57 -05:00
parent ccb2546f0f
commit cbf8bad595

View File

@ -14,7 +14,7 @@ Usage
./xmpp-ircd.py --muc-server=chat.example.com --component-name=irc.example.com --component-pass=irc
Will connect to 127.0.0.1:5347 and serve the MUC chat.example.com over IRC on port 6667.
Will connect to 127.0.0.1:5347 as an XMPP component and serve the MUC chat.example.com as an IRC server on port 6667.
prosody for example would need this component configuration for the above command:
@ -23,12 +23,18 @@ prosody for example would need this component configuration for the above comman
Component "irc.example.com"
component_secret = "irc"
Then, whether an XMPP user connects to [xmpp:example@chat.example.com?join](xmpp:example@chat.example.com?join) or an
IRC user to [irc://irc.example.com:6667/example](irc://irc.example.com:6667/example) they will both be in the same channel,
hopefully unable to tell the other is using a completely different protocol.
Development
-----------
Useful documentation:
* https://tools.ietf.org/html/rfc1459
* https://xmpp.org/extensions/xep-0045.html
* [XEP-0045: Multi-User Chat](https://xmpp.org/extensions/xep-0045.html)
* [RFC-1459: Internet Relay Chat Protocol](https://tools.ietf.org/html/rfc1459)
* Unfortunately real traffic between an IRC client and server may be the best documentation, as it tends to ignore the
RFC when deemed convenient.
Useful command to watch real IRC traffic between actual client and server, connect client to localhost:4444:
@ -39,15 +45,34 @@ todo:
* finish /list /whois
* handle XMPP disconnecting
* handle shutdown cleanly
* init scripts?
* other IRC commands?
known issues:
* nick changes are hacky, can lock up gajim private messages somehow...
* nick changes are hacky, can lock up gajim private messages rarely somehow...
* Nicks are only unique per-channel in XMPP, but per-server in IRC, I don't know that there IS a good solution for this.
The main problem this brings up is with private messaging, there is no way to know who you are chatting with. Nick
changes are also affected, but that only prevents you from changing your nick in a channel if you are joined with any
other channels where the nick is taken.
License
-------
GNU/GPLv3
License - GNU/GPLv3
-------------------
xmpp-ircd, IRC to Jabber/XMPP gateway.
forked from Telepaatti
Copyright (C) 2007-2009 Petteri Klemola
Copyright (C) 2015 moparisthebest
xmpp-ircd is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 3 as
published by the Free Software Foundation.
xmpp-ircd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.