MozDev.org

Organization

Current Tasks

  • support ENUM
  • write an instant messenger <chat/> XBL binding (pendant to <browser/>), create corresponding interface
  • write a <phone/> XBL binding
  • add a Call button to the address book's toolbar palette - behave like Compose, use selected SIP address
  • add a Call button to the main window's toolbar palette
    • use selected account if folder.server.type equals "sip"
    • add a dropdown menu to the Compose button instead?
      icon and label should then switch between "Compose" and "Call" when selecting a different account
    • add button to defaultset / currentset on install
  • add a field "SIP address" to abCards
  • add an option "SIP account" to the account wizard
    • overlay or RDF-based branding?
  • add an option to preference dialog for registering Thunderbird as default sip application
  • create view for SIP folders in main window
  • writing an encapsulating XPCOM for nsIABCard with different behavior of getCardValue (replacing old interface possible?)
  • writing an @mozilla.org/network/protocol XPCOM for "sip", "sips" and "tel" protocol schemes
  • kind of outdated, updated soon

Timetable

Aug 1
  • basic XUL windows and overlays as dummies
  • request for comments on user interface
  • outline for XBL implementation of <xul:chat/> and <xul:phone/> elements (similar to current browser and editor elements)
  • plan for inclusion of Alex Fritze's zap library, draft of additionally necessary XPIDLs and XPCOMs
  • report on basic attempts to include zap as XPCOM (will be used by two XBL elements mentioned above)
Aug 8
  • functionality added to XUL files, improvements
  • decision on how to extend address book to SIP addresses (see notes)
  • release of XPCOM based on zap
Aug 24
  • beta release
  • testing until 30th of September
Sep 1
  • Cockatoo Summer of Code release
  • XPI can be downloaded from here
  • installing instructions will follow soon

Notes

  • zapISipURI should inherit from nsIURI

Notes on Address Book Issue

Possible solutions:

  • reuse existing properties in nsIABCard (custom4 or phoneNumber)
    • emptying current custom4 content on install by adding it to custom3
    • removing Custom 4 field from abEditCardDialog.xul
  • add row for SIP address to address book's mork database
    • as there is no XPCOM for accessing mork, build of Mozilla's mork C++ code must be shipped with phone extension
    • an updated interface to the address book must be invented as well
  • new interface for reading and writing URIs to an entry in the address book independent on URI scheme (think of mailto, sip, sips, http...)
    • could use existing mork database for the first as a workaround
    • future builds of Thunderbird could use the same interface more efficiently with a RDF database in behind

To do on install

  • register component SIPProtocol.js
  • add toolbar buttons to the currentset
  • var toolbar = document.getElementById("...");
    toolbar.insertItem("smxtra-button",null,null,false);
    toolbar.setAttribute("currentset", toolbar.currentSet);
    document.persist("...","currentset");
    
  • set protocol-handler preferences to expose sip protocol internally!
  • var prefs = Components.classes["@mozilla.org/preferences-service;1"].
    	getService(Components.interfaces.nsIPrefBranch);
    prefs.setBoolPref("network.protocol-handler.expose.sip", true);
    
  • register protocol handlers (i.e. windows registry)
  • set value for mail.root.sip