Several people have requested that I release the demo source for the debug Flex application I built. I have been very hesitant to release it because it was essentially a very rough prototype meant only to test the xiff library I ported to AS3. It was not really meant as a tutorial, especially since it is not documented, commented and there really was very little thought put into structure. I simply have not had time to clean it up at all.
It has been quite a while since I have posted much on XIFF. This is not at all to do with a lack of interest, mostly a lack of extra time.
Just go to the same location as the demo, right-click and view source.
http://velloff.com/XIFF_AS3/XIFF_AS3_GUI.html
Good luck, and please post examples of what you come up with!
this is great! thanks for sharing the source code.
Where can i download your XIFF AS3 port? Like, the lib itself, not the demo source? I couldn’t find it anywhere, all i find is the AS2 version. I might be blind..
Thanks!
Check out the source using SVN here:
http://svn.igniterealtime.org/svn/repos/xiff/branches/xiff_as3_flexlib_beta1/
ahh thanks a lot, Nick!
Have you seen the XMPP Gateway built into Adobe ColdFusion 8?
You could do some VERY cool stuff with this, an AS3 XIFF/XMPP client and an XMPP server.
For example, “Live Help”, on any web site, where you front-end with an interactive menu system to guide the user to the right support (or sales) person, depending on their responses. Many other very, very cool possibilities.
Check out the LiveDocs here:
http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=UseIMGateways_4.html
Good article on using ColdFusion’s IM Gateways by Matt Woodward here:
http://www.adobe.com/devnet/coldfusion/articles/imgateway.html
Good article on using ColdFusion’s Gateways (in general) here:
http://www.adobe.com/devnet/coldfusion/articles/gateway.html
Damon
I have not seen the xmpp functionality in CF. One of my developers is a CF guru… we may want to take a look at that.
I have little problem with demo. i have tried to register or connect many times in last couple of days but every time the log shows this message…
XIFFErrorEvent onError: type:cancel message:Service Unavailable
Code is 503.
I don’t know what is the problem.
nickname = newuser
Password = abc123
server domain = Jabber.org
Then click Register.
Regards,
abber.org as my server. with newUser Passwrod = abc123
Damn that was a looooooong wait, i will get my hands a little dirty with it…
Any updates on the XIFF library? What exact functionality does this demo have. I cannot seem to get a chat working between two users. Thanka!
the demo provides presence, multi-user chat (MUC), messaging and so on. you will need a xmpp server such as openfire set up, and some minor configuration to the chat demo to connect to it.
From what i have read the AS3 release will use a new binary socket instead of XMLSocket. Will this support any type of secure protocol?
Could you also expand on what minor configuration would be required to get the demo working on localhost? Sorry for all the questions.
to run the demo on localhost, i recommend grabbing the latest openfire release, and running it locally.
then, simply grab the latest xiff source, and include it in a flex project. you can use the gui i have provided as a starting point.
Hey, great work!! I just don’t know how to differentiate a chat moderator and a regular user, you know, to display of administrative buttons (kick user, ban user, etc) how you do that?
Thanks
I believe there is a property in the muc user value object that defines the role. Check put my code for the muc user. It has been a while, so if you don’t see it let me know and I’ll track it down.
I run a openfire on my own machine, and fill username, password and serverdomain (localhost:5222), But I get
XIFFErrorEvent onError: type:auth message:Not Authorized. How can I sovle this problem?
Hi, where i can find the library´s documentation?
cheers!
I’ve been trying to use the beta library in flash cs3 but I’m running into trouble with the unavailability of arrayCollection, any ideas?
Awesome product otherwise! I love it, made a small client with the xiff 2 lib, but that runs into trouble with jabber servers without the flash fix
any chance of http-binding support? pleeease??
Thanks for the comments. I really don’t have the extra time to add any new features at the moment, but I hope someone will take the ball and run with it.
I’m trying to create a smaller stripped down version of this. I got my flex app to use xiff and make a connection to openfire (which I was pumped about) But when I went to add code to listen for incoming messages I get this error:
1046: Type was not found or was not a compile-time constant: MessageEvent.
on this line:
internal function messageHandler(e:MessageEvent):Boolean
I have imported all the stuff I need (I think anyway):
import org.jivesoftware.xiff.core.XMPPSocketConnection;
import org.igniterealtime.xiff.events.*;
import org.igniterealtime.xiff.data.Message;
Has anyone ever seen anything like this?
I can run it in my machine with the serverdomain localhost:5222, but when change the serverdomain to my ip ( 192.168.1.* ) it have no respond, can any one tell me the problem, thank you
Hello,
Can anyone help me please.
I run the demo, I entered the right username and server name
but the following message appeared:
XIFFErrorEvent onError: type:auth message:Not Authorized
This prototype doens’t actually allow you to use another server the server is hardcoded.
Hey Nick the view source broke, its redirecting to another page. Do you know what happened there?
Thanks.
odd, works for me…
here is the link:
http://velloff.com/XIFF_AS3/srcview/index.html
first, thank you very much for releasing this code. it has helped us a lot in our project.
how would we implement anonymous login with your program? we have modified your code to make our own custom xiff flash chat application but need to have anonymous login but cannot figure it out. if you could be of any help it would be very appreciated!
thank you.
have you looked into enabling anonymous login on the server side? I set up an xmpp server to allow anonymous login and it worked with xiff…
hello,
thank you very much for your reply. yes, we’ve enabled anonymous login on the server side. i think we were able to login anonymously but the problem is that no roster is getting pushed out to the anonymous user. we have a group roster that is pushed out to users by default but don’t know how to push the roster out to anonymous users. would you happen to know how to set this? we’ve been searching and searching and no luck on finding out how to do this.
thank you very much for any help!
cameran
ahh I see… unfortunately I have no idea how to do this…
i’m fairly certain it probably has more to do with the server configuration. you could create a single user with the roster you desire, and have all users log in as this user with the appended user type, which to the server will be treated as a different “device” … kind of like the same user logging on their phone and at the office at the same time… but instead you generating a unique id as the device…
hi,
thanks for the tip. we’re trying to implement that system right now with a single login name but a randomly generated number appended to the resource so that multiple users could login.
but we’re now having a new problem. when the users login and message an individual using spark all messages appear in the same tab so we’d like to implement something that would allow us to “append” a random string to the user’s displayName so spark would create a new tab for each user
do you have any ideas as to how we could do that? its the last major step before this project can be complete and we are totally stumped
Nick,
I just updated you library to work with the latest xiff library as3 xiff beta 3. Here is a like http://friendlytek.com/xiff_as3/XIFF_AS3_GUI.html
Michael
Nick,
I just updated you tool to use the latest xiff library from igniterealtime. it uses the xiff beta 3 library.
http://friendlytek.com/xiff_as3/XIFF_AS3_GUI.html
Michael
Very cool! Keep up the great work… I cant wait to see where it goes.
hi velloff
thanks for you great Demo, base you Demo, i write my’s, i wish it can implement add group, delete group just like spark, but i can’t find api from xiff library, can you give me some advice?
thanks in advance.
sorry for my poor english.
Great Example . Anyone following this is they could advise on how to get my flex application connecting to wildfire?? and how to point flex at the XIFF source would be greatly appreciated. I tried going to the properties of my flex app , then to the flex build path and pointed this to the src directory in XIFF but I think im doing somehting wrong? As still getting Message, Room, Room event was not a compile time constant errors. Thanks again
Solved the above problem was extremly simple my mistake
Does anyone know how to implement video with red5 or FMS with this example but so that it requires the user to accept the video chat request.
I keep getting XIFFErrorEvent onError: type:auth message:Not Authorized, when trying to access any server. I tried using my server (on which I set a flashsocket policy file w *, * but still getting same issue, any idea? – thanks!
trying to remember how I handled this issue quite a while back. It was either the server configuration, or a connection option that indicates what type of server the library is connecting to. This sets the first node of the XML string, and the server responds accordingly.
The best way to debug this is to watch the data going out and see if it is in the format the particular server is looking for.
uhm…I thought type auth was caused by some security issue, but maybe I’m wrong. I’ll try passing a different type. I used ur implementation as well (which is very cool for testing out things btw) but got the same error message. anyhow, thanks again for the help.
[...] than a couple of simple tutorials very similar to Mike’s. The one exception to this was a demo that I found from Nick Velloff that included source. The demo shows examples of connecting to an XMPP server, logging in, [...]
XIFF doesn’t support voice, right?
Anybody can’t help with “kick off” in realization voice jabber client on flash?
Thanks
Error: Request for resource at xmlsocket://jabber.org:5222 by requestor from http://friendlytek.com/xiff_as3/XIFF_AS3_GUI.swf is denied due to lack of policy file permissions.
there was a security error of type: securityError
Error: Error #2048: Security sandbox violation: http://friendlytek.com/xiff_as3/XIFF_AS3_GUI.swf cannot load data from jabber.org:5222.
What is the problem ? what i have to change
You’ll need a crossdomain.xml policy file on the jabber.org domain. This is a Flash player restriction.
http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html
Hi,
I am unable to register a new open fire account and below is the log. I am always getting message mentioned below
XIFFErrorEvent onError: type:modify message:Unknown Error
XIFFErrorEvent onError: type:wait message:Unexpected Request
Please help me to solve this.
Regards,
Samba
>>outgoing:
>>outgoing: guestguest
>>incoming:
>>outgoing:
>>incoming: DIGEST-MD5PLAINANONYMOUSCRAM-MD5zlibguestguest
XIFFErrorEvent onError: type:modify message:Unknown Error
XIFFErrorEvent onError: type:wait message:Unexpected Request
>>incoming: XMPP Client RegistrationPlease provide the following informationjabber:iq:register
[...] and configuring it in about 15 minutes, downloading a cool Flex sample from velloff.com, understanding from this script the basic OF funtionalities and creating the simple demo I’m [...]
Hi,
great works! Thanx a lot to share this demo.
To the following link you can download another version of this chat:
http://www.fabiobiondi.com/blog/2009/11/create-a-real-time-chat-using-flex-3-openfire-and-xiff-30/
It could seem very similar to this one but you can watch the video on my blog to get the differences, where you can also download the source code.
Hope it’s usefull
Hi,
I have a single problem, when I connect to server chat, after 6 or 7 minutes, the chat is disconnect from server and I don’t know why. Do someone have the solution?
I try to connect to Facebook, but I could not do, is there an idea?