Skip to content
This repository

Haxe Jabber/XMPP library

tree: 8831ffe212

Fetching latest commit…

Cannot retrieve the latest commit at this time

README
                   ___   ___  
|   |  \ /  |\ /| |   | |   | 
|---|   +   | + | |---  |---  
|   |  / \  |   | |     |     

                                          
Haxe library for creating XMPP clients and services.
http://hxmpp.disktree.net/


XEPS SUPPORTED
--------------
* 0004 DataForms
* 0012 LastActivity
*** 0016 PrivacyLists
* 0030 ServiceDiscovery
** 0045 MUChat
** 0047 In-Band Bytestreams
* 0049 Private XML Storage
* 0054 VCardTemp
* 0055 Search
*** 0060 PubSub
** 0065 SOCKS5 Bytestreams
* 0071 XHTML-IM
* 0077 In-Band Registration
* 0082 XMPP Date and Time Profiles
* 0085 ChatStateNotification
* 0092 SoftwareVersion
** 0096 SI File Transfer
* 0106 JID Escaping
* 0114 Jabber Component Protocol
** 0115 Entity Capabilities
* 0124 BOSH
** 0163 PersonalEvent 
** 0191 Simple Communications Blocking
* 0199 Ping 
** 0202 EntityTime
* 0203 DelayedDelivery
* 0206 BOSH
*** 0232 Bits of Binary

** XEP-xxxx: Linked Process Protocol (http://xmpp.org/extensions/inbox/lop.html)
** XEP-xxxx: Jingle RTMP Transport (http://xmpp.org/extensions/inbox/jingle-rtmp.html)
** XEP-xxxx: Jingle RTMFP Transport
** gmail-notifiy (http://code.google.com/apis/talk/jep_extensions/gmail.html)


USAGE
-----
See: http://github.com/tong/hxmpp.examples


COMPILER FLAGS
--------------
* XMPP_DEBUG	Print XMPP transfer
* JABBER_DEBUG	Print verbose debug information
* JABBER_SOCKETBRIDGE	Use a flash socket bridge as stream connection for the javascript target
* JABBER_COMPONENT	Required when building server components


NODE.JS
-------
To compile for nodejs use the 'nodejs' haxelib
Set compiler flag: -D nodejs


BOSH
----
BOSH essentially provides a "drop-in" alternative to a long-lived, bidirectional TCP connection using a request-response mechansim over HTTP.
To use it you have to connect your client to the BOSH adress of your jabber server.
Your webserver doesn’t know about your jabber server .. you have to setup a proxy to forward requests: 

# Activate mod_proxy apache module
sudo ln -s /etc/apache2/mods-available/proxy.load /etc/apache2/mods-enabled/
# Add following line to proxy.load to activate the proxy-http module
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
# Add the proxy directive to the host settings in your http.conf
# This will proxy requests: htp://127.0.0.1/xmpp -> http://127.0.0.1:7070/http-bind/
<VirtualHost *:80>
	...
	ProxyRequests Off
	ProxyPass /xmpp http://127.0.0.1:7070/http-bind/
	ProxyPassReverse /xmpp http://127.0.0.1:7070/http-bind/
	...
</VirtualHost>

# Restart apache
sudo /etc/init.d/apache2 restart

# Now you can pass in the path to the constructor of the jabber.BOSHConection class:
var cnx = new BOSHConnection( "domain.net", "127.0.0.1/xmpp/" );


SOURCE
-------
git://github.com/tong/hxmpp.git
https://github.com/tong/hxmpp


HACKERS
-------
This project accepts and *encourages* contributions.


AUTHOR
------
http://disktree.net
xmpp://tong.disktree@gmail.com
Something went wrong with that request. Please try again.