Adobe Flash based Jabber clients are unable to comply with the XMPP standard in case Flash 8 or lower is used. Adobe Flash 9 fixes next bugs:
- The opening stream header is <flash:stream xmlns:flash="http://www.jabber.com/streams/flash" /> (note prefix, namespace, and closing slash).
- Every stanza sent by Flash client is null-terminated. Every stanza sent to Flash client must be null-terminated.
- It puts version="1.0" on its stream header, but doesn't support SASL authentication.
Download the patch to the ejabberd src/ directory. Apply the patch with this command:
patch -p2<ejabberd-flash.patch patching file Makefile.in patching file configure.ac patching file ejabberd.hrl patching file ejabberd_c2s.erl Hunk #3 succeeded at 181 (offset 7 lines). Hunk #4 succeeded at 581 (offset 7 lines). Hunk #5 succeeded at 591 (offset 7 lines). Hunk #6 succeeded at 1233 (offset 8 lines). patching file expat_erl.c patching file jlib.hrl
Do not worry if it reports several offset warnings. The important is that it does not reject any hunk.
Recompile ejabberd from scratch with those commands:
autoconf ./configure --enable-flash-hack make clean make
No changes are required on ejabberd.cfg. Just restart ejabberd and both standard clients and Flash clients will be able to connect to ejabberd.
Xiffian includes an option to select the Jabber server type. Make sure to set this option as:
Server type: "Jive/Wildfire - flash"