Posts Tagged ‘MeAggregator’


05.03.2009

Xmpp connection from within Firefox extensions

posted by Karsten

in RedGloo

In the MeAggregator project I need an Xmpp chat connection from plugins to the central FFS (don't mind if you don't know what an FFS is…) And I have tried using several Javascript libraries (Xmpp4js, JSJaC and Strophe) from within XUL, all of which ended up in hilarious fun and no resulting xmpp connections to the openfire server I'm running.

I've now found that I probably should  have used the Firefox add-on search instead of google to find these libraries, as this morning I found Xmpp4moz which is a library dedicated for xmpp connections from within Mozilla extensions (also other than firefox extensions), so I now have a connection through to the openfire server and the real deveolpment can commence…

Share
14.12.2008

MeAggregator server problems

posted by Karsten

in RedGloo

I'm working on a MeAggregator Server, which has been causing me great problems. The biggest problems have been with getting the roster functionality of xmpp4r to work under rails.

The need for this is to validate and display the actual status of the FFS. This is quite important is this will allow code to start and stop the services of the MeAggregator.

Unfortunately this hasn't been easy. First off I started developing on a Windows box at work. I coded in the roster in each function call. This didn't work as the xmpp4r library only keeps a running status of registered users, thus if the roster was created for each call, the roster would be empty each time used, this resulted in the code showing an offline FFS even though it was online.

This lead me to think that I should create a service running along side rails handling the xmpp connection. I found the rails plugin backgrounDRb which should do exactly this. I installed it, and discovered after a while, that for the same reasons that a abadoned creating a bespoke solution this didn't work! BackgrounDRb apparently doesn't work on Windows machines.

Luckily I'm not tied in to any computer systems (as long as I don't have to use Mac which I would regard a degrading OS for a developer πŸ˜€ – not really…) so I decided to set up a development environment on my ubuntu laptop.

This didn't take long. But this was the only thing that didn't take time. I couldn't get backgrounDRb to work on my machine. Nothing worked. I kept getting strange internal exception from backgrounDRb. I found the http://mayurjain.wordpress.com/2008/08/08/no-such-file-to-load-log_wor which claimed that the solution would be to use version 0.1.5 of packet instead of later versions. This was odd, as the documentation claimed that v 0.1.7 or later was neccesary for backgrounDRb to run. And obviously this didn't work… Although the background server did start, which was more than before, it simply didn't work when starting p the actual service.

So I started digging into the mailing list of backgrounDRb, and there I found a poor soul, which had similar problmes on a Mac. The suggestion there was that parts of packet seemed to be outside the path, and thus didn't work.

Now I would have hoped that a gem like packet once installed, and a plugin like background using it, would be able to use it without the need of it to be on the path! But todays work has shown that this simply isn't an assumption which can be made!!?? Because when I did a PATH=$PATH:/var/lib/gems/1.8/gems/packet-0.1.14/bin/ in my terminal where running backgrounDRb it worked!!

I am obviously happy it works, although if this issue had not been the re, I would have had this result probably 4-5 days ago, leaving me with these days to do something productive, rather than debugging like this!

Share
22.08.2008

MeAggregator and Ajax Extensions for ASP.NET

posted by Karsten

in RedGloo

I post this here, because it probably isn't an issue for the MeAggregator not Ajax Extensions, however a glitch on my computer, which could have importance for others.

 

Yesterday I had problems with the code he had committed showing a multitude of errors. I notified him from home, and he told he that the client view, that hehas developed, is using the Ajax Extensions for ASP.NET. This shouldn't be a problem as Mono has an implemented version, and MS provides it in .NET3.5 and has installers available for older versions.

On my home computer this library was already installed, and I jumped up to test it. It worked – celebrations!

This morning I began installing the library on my work computer, but it turned out I already had it installed!! Checking the GAC, for sanities sake, it was there. But VS2005 couldn't find it!!?! I unstalled the library and re-installed – no luck!

So in desparation I went into the references in Rob's code, removed the reference and re-added it. Now it is found!!

So it works – I think – but this is a bit of a scare, and I've written this for future reference… 

Share
30.04.2008

JabberIDs as URI

posted by Karsten

in RedGloo

Not sure if this potentially is an issue:

JabberIDs are case in-sensitive, whereas URIs are case sensitive!

I tried a testcase where a user was called systemUser (guess what he had rights to do? πŸ˜‰Β ), and when using that URI in couldn’t authenticate. It has taken me at least 45 minutes to find the when calling XMPPconnection.getUser() in the smack library the username is converted to lowercase. I use this method to add the user to the list of users with system rights, so when authenticating the JabberID systemUser, then this wasn’t on the list!!

It is obviously easy to hack this problem by checking lowercase versions of IDs,, but this is an awful hack, which might break, unless we specify that MeaUserID == jabberID and must be unique in lowercase versions.

Is this a fair assumption? I don’t know…

(EDIT: I’ve added this to the issues list at www.meaggregator.org)

Share
29.04.2008

Jena and URI’s

posted by Karsten

in RedGloo

I thought I finished a big part of the MeAggregator FFS authentication scheme. Just to end up in an exception being thrown. I was puzzled, how could this happen, as I had been testing all the way so that each bit I changed didn’t change any behaviour in the FFS?

The answer: Well, although I kind of knew this was the case I’d hope the jabber account adresses could work as URI. According to the URI spec (RFC3986) URIs start with a scheme + “://”, such as “http://” or “mailto://”. Therefore I’d testedthat Jena could handle jabber account without scheme and it does. But when I serialize the model into a string (where I stream it), which is the last thing that happens when exporting a model the exeption is thrown.

Strange that Jena allows usage of URI all the way until the model is streamed! But hi, I can add a scheme to the jabber accounts, just a bit annoying now that I thought it worked… Luckily this was an easy bug to find 8)

Share
24.04.2008

Soapbox XXMP library

posted by Karsten

in RedGloo

From the outset this library (Soapbox from Coversant http://developers.coversant.net/) looked like the most promissing .NET library for the XMPP functionality of the MeAggregator. Unfortunately my beliefe in it has fallen to a low point. Although it is very extensive in its supported functionalities, there is one that is really not that useful. The Jabber ID (JID) is tightly locked to the URL of the Jabber server that you use, hence you can't login to one Jabber server using a JID from another server. This is a functionality that is used (I use it often myself) thus this library can't be used for the MeA work!

I've spent 1/2 day now looking at the possibilities of changingthe behaviour, but there seems to be way too many references to the fact that server is part of jid, and that the login server is that server. 

Share
12.10.2007

Learning by Gaming

posted by Karsten

in RedGloo

When preparing for my presentation at ePortfolio 2007 in Maarstrict next week I stumbled upon this webpage http://www.gotgamebook.com/

It talks about all the benefits that gaming has to you learning, and the list is long. Halleluja, we can game on, and become great learners. Life is sweet!! 

Share
05.06.2007

Now the web is about ‘me’

posted by Karsten

in RedGloo

This article starts out by claiming that searching on the Internet is dead!

This obviously isn't claimed by goggle but yahoo. What they say is that the next "new" web will be a personalised web, where the user gets and uses interesting information according to who they are and what they are interested in. As they state: "now the web is about 'me.'"

So, as we are working in the personal learning environment area with the MeAggregator, are we creating a "true" Web 3.0 application? Are Web 3.0 the Personal Web rather than the ordinary assumption that it is the Semantic Web, or is the Semantic tools just the driver (or back bone) to making the Personal Web truly personal, including semantics and pragmatics, and not just another widget style web application like NetVibes?

Share
14.05.2007

MeAggregator – Use cases

posted by Karsten

in RedGloo

Use case 1: 

Mr X is a student at UoR in his final year. He is job hunting, but has found it difficult, because he hasn't received any grades yet, nor has he finished his exams yet. Luckily he his been able to gather all of his coursework and validated exam results from previous years using the MeAggregator, which has enabled him to create a "view" of his work on a website, which he shows different companies. The MeAggregator has also allowed him to create a pdf file of the material, which he has showed of at various graduate fairs.

 

Use case 2: 

Miss Y is a keen programmer that would like to be involved in a open source games project. Unfortunately she doesn't know anybody who shares the same passion (strange  she is a CS student, hmnn!) Through the tags and trust network of the MeAggregator she has been able to find two other students at Kings who wants to create a network based game for girls. Because the trust levels of the students are high she has decided to contact them to see if she can be part of the project. 

Share