|
|
By rkent, on January 31st, 2012 I am pleased to announce that ExQuilla, a Thunderbird addon that provides access to messages and contacts in Microsoft Exchange Server, is now available. This is a beta-quality release. ExQuilla is currently only available for Windows, in English, and supports Thunderbird version 9, 10, and 11. Linux and Mac versions are planned for the future.
The most current version of ExQuilla is available from the MesQuilla site here. A slightly older version (due to review delays) is available from Mozilla’s addon site here.
This version supports access to messages and personal contacts from a Microsoft Exchange Server 2007 or 2010 [...]
By rkent, on September 8th, 2011 A common pattern that we see in review of Mozilla addons is code that looks like the following:
var myExtension = { saveMe: null, onLoad: function () { this.saveMe = “I am saved”; } } window.addEventListener(“load”, myExtension.onLoad);
Unfortunately the value of “this.saveMe” that is used in onLoad is the value from the global window, not the value from the myExtension object. Really the event listener is looking for an object of type nsIDOMEventListener, with a method handleEvent. When it does not find that, it applies some magic and just uses the entered function. Unfortunately, in the process the “this” does [...]
By rkent, on March 8th, 2011 New account types in Javascript for Thunderbird (Part 4)
Now that I am essentially feature complete in adding Address Book features to my Exchange Web Services implementation ExQuilla, I’d like to discuss how SkinkGlue was used to allow this to mostly be done in JavaScript.
As review, SkinkGlue is my attempt to add an interface layer to Thunderbird to allow new account types to be added using javascript. SkinkGlue provides the necessary C++ interfaces to allow standard Thunderbird objects to be created without writing C++ code. SkinkGlue is licensed inder the standard Mozilla licenses, so it could be used by [...]
By rkent, on January 4th, 2011 New account types in Javascript for Thunderbird (Part 3)
I’ve now released an initial version of my extension TweeQuilla, Twitter for Thunderbird. While the extension provides useful functionality, the main purpose of this exercise was to demonstrate how a Thunderbird account can be created using just javascript. Well almost … there are some binary files needed (called Skinkglue) which are account-independent, and presumably could be made available in the Thunderbird core code to eliminate the need for extension writers to maintain their own C++ compile environment. Unfortunately that binary extension limits this current release to only working under Windows in [...]
By rkent, on December 28th, 2010 New account types in Javascript for Thunderbird (Part 2)
One of the more difficult challenges in adding new Javascript-based accounts to Thunderbird is the problem of overriding functions of C++ objects in Javascript. C++ objects typically rely on the object inheritance structure of C++, and do not reliably use QueryInterface to force use of xpcom and xpconnect functionality. Even if they did, Javascript does not pass a reference to the underlying Javascript xpconnect object to the C++ object when it finds a C++ object in the prototype chain of an xpcom call. Instead, it passes the C++ object from the [...]
By rkent, on December 27th, 2010 For the month of December, I took a reprieve from ExQuilla, my Exchange Web Services extension, and decided to tackle the issue of trying to create new account types in JavaScript in a Thunderbird extension. This blog post is an introduction to that project. More detailed posts on specific issues should follow shortly.
Introduction to SkinkGlue
I’ve learned a lot about how to create account types in an extension while working with ExQuilla. While ExQuilla is written principally in C++, many of its concepts could be adapted to javascript. I decided to write TweeQuilla, a demonstration extension in javascript that [...]
By rkent, on October 22nd, 2010 Today I released to Mozilla’s addon site a preview release of my Exchange Web Services extension, which I am calling ExQuilla (see the addons page here to download).
This is alpha quality software, which means it is usable if you are brave. (I have been using it for a month with my rkent@mesquilla.com email account).
There are many, many non-implemented features. Rather than repeat all of that here, I’ll just refer you to the extension description page that I have put up. The most severe restrictions are that this is email only, and there is no attempt to support localization [...]
By rkent, on August 18th, 2010 Things have been a little slower lately, what with summer and family visits and so forth, but my project to support Exchange server in Thunderbird proceeds nevertheless. I’m starting to think seriously of an Alpha release.
Originally I had assummed that there would be changes required in core to support what I am doing. But so far, that has not been absolutely necessary. I had problems earlier with the database code, but I’ve managed to get around that by just using a standard nsMailDatabase object instead of doing my own version.
So I tried to build a version that could [...]
By rkent, on July 21st, 2010 Thunderbird since version 3 has had experimental support for junk filtering in newsgroups. The feature basically works fine, but the user interface mostly fights against your attempts to use it. I’d like to give brief instructions here for anyone who wants to try it.
You’ll need to install my addon JunQuilla to enable one critical piece of user interface. JunQuilla supports a folder property that lets you selectively enable or disable junk processing for a tree of folders. So after you’ve installed JunQuilla, enable processing of junk for a newsgroup:
This will run future posts sent to [...]
By rkent, on July 15th, 2010 I can now send a message through Exchange server from my Thunderbird installation.
Perhaps it would be interesting to show how I hooked into the sending function in the user interface. I asked the usual suspects, and it was not clear to anyone that it could be done without adding backend hooks – which I would like to avoid as much as possible to increase my chances of getting some initial alphas of this released to work with existing TB 3.1 users.
It turned out to be fairly straight forward. In MsgComposeCommands.js there is an observer notification that occurs, called [...]
|
|
Recent Comments