Roadmap zum Beta Prototyp

20. März 2007

Die Entwicklung des Systems ist in den letzten Monaten gut vorangekommen. Am Beta Prototyp wird gearbeitet. Bis es soweit ist, müssen noch folgende Teile des Systems erstellt bzw. überarbeitet werden:

  • serverseitige Software zum Empfang der gesammelten Daten der Clients
  • Überarbeitung des Moduls zum Senden der Daten vom Client zum Server
  • Überarbeitung des Sound Moduls (Größe der Sounddateien verkleinern)

Version 0.2.7 online

19. März 2007

Diese Version unterstützt die verschiedenen Eventarten besser. Die Events werden nun zunächst lokal in einem Unterverzeichnis “DSET” im Firefoxinstallationsverzeichnis abgelegt und dann an ein Serverprogramm geschickt.
Das Serverprogramm wird vermutlich als Servlet realisiert werden.

Alpha Release online (v.0.2.1)

23. Januar 2007

Das Grundgerüst des praktischen Teils meiner Arbeit steht nun.
Am Wochenende ist das vorläufig letzte große Problem gelöst worden. Ich kann nun vom Javascript Code der Extension meine vorher in Java programmierten Module ansteuern. Dieser Javacode beinhaltet die komplette Logik des Programms.

Was das System bisher kann:

- Installation der Extension per bekanntem xpi Format
- automatisches Update auf neuere Versionen
- automatischer Start der SingleUser Version beim Start des Browsers
- Erkennen von Events im Browser
- Javamodul zur Sprachaufzeichnung besteht und kann vom Javascript Code angesteuert werden.
- Javamodul zur Datenbankkommunikation besteht und kann ebenfalls aus dem Javascriptcode heraus angesteuert werden.

Was noch zu tun ist:

- Identifizieren von weiteren nötigen Events und deren Aufzeichnen
- Umsetzen der Modi Single- und MultiUser
- komplette GUI Programmierung der  Extension in XUL
- Servlet, um Datenbankzugriffe vom Javacode zu entkoppeln

Java Code in einer Extension

17. Januar 2007

Ich habe zu diesem Thema recherchiert und fand heraus, dass ich für die Umsetzung dieser Aufgabe die Technologie “Java Firefox Extension” von David François Huynh benötige.

Mit diesem Modul ist es möglich Java Klassen in einer Extension zu nutzen. Besonders wichtig für uns ist die Möglichkeit Singleton Pattern zu gebrauchen, deshalb wird an dieser Technologie kein vorbei führen.

Ich versuche gerade den Code von David François Huynh zu verstehen.
Wenn jemand bereits Ähnliches versucht hat, möge er sich bitte bei mir melden.

Java Code in einer Extension nutzen

15. Januar 2007

Da die Extension nun grundsätzlich, wenn auch mit wenig Funktionalität, funktioniert, kommt nun der spannende Teil.
Wie ruft man eigenen Java Code aus einer Extension heraus auf?
Dies ist dringend noch zu klären und wird die Aufgabe für die nächsten Tage.
Wenn das klappt, sind alle wichtigen technischen Probleme geklärt und der Extension fehlt “nur noch” die nötige Funktionalität.
Ich habe zu dem Thema bisher 2 grundsätzliche Arten gefunden:

http://developer.mozilla.org/en/docs/Java_in_Firefox_Extensions
http://simile.mit.edu/java-firefox-extension/

Testversion der Extension online

15. Januar 2007

Die Extension ist nun in einer Testversion (Version: 0.2.0.1) online.
Das Wochenende war sehr arbeitsreich und erfolgreich. Die Extension kann nun von meiner Internetseite installiert werden per .xpi Datei. Nach der Installation sieht man im Firefox eine neue Toolbar, die einige Button enthält. Der Button “Test-Stuff” fügt der aktuellen Webseite im Browser einen DOM EventListener hinzu, der Mouseclicks auf der Webseite registriert und ein Popupfenster mit einer Meldung öffnet.
Wenn der Browser für automatische Updates konfiguriert ist, werden online gestellte Updates der Extension automatisch installiert und man ist so immer auf dem aktuellen Entwicklungsstand. Es werden selbstverständlich nur “stable releases” veröffentlicht.
Ladet euch die Extension herunter und bleibt am Ball.
Link: http://easytracker.dirk-stamer.de/

Enabling Extension Updates

14. Januar 2007

Unter folgendem Link versteckt sich eine Anleitung wie man Extensions automatisch auf dem neuesten Stand hält.

roachfiend.com » Enabling Extension Updates

XPI Installation von einem Webserver

13. Januar 2007

Ensure server compatibility

If it works, and you want to put it on your web server, but find out that it won’t install directly, and your browser is treating it as “Save File As..” then you need to modify your .htaccess file. You can learn more about it here, but for brevity’s sake, you need your server to run on Apache for it to

work. If you have no problem modifying the file, here’s the information you need to add:

Add this to your .htaccess file:

AddType application/x-xpinstall xpi

And you should be set.

Quelle: http://roachfiend.com/archives/2004/12/08/how-to-create-firefox-extensions/#chrome

Firefox Extension Tutorials

10. Januar 2007

Das beste Tutorial zuerst:
http://www.borngeek.com/firefox/toolbar-tutorial/

Setting up the development environment:
http://kb.mozillazine.org/Setting_up_extension_development_environment

Manual editing hints:
http://kb.mozillazine.org/Editing_configuration/Manual_editing

http://developer.mozilla.org/en/docs/Building_an_Extension#Introduction

http://kb.mozillazine.org/Extension_development

http://kb.mozillazine.org/Adding_items_to_menus

http://www.captain.at/howto-firefox-toolbar-tutorial.php

http://portal.wikinerds.org/firefox-extensions

http://www.rietta.com/firefox/Tutorial/overview.html

http://www.orablogs.com/duffblog/archives/000536.html

http://www.xulplanet.com/tutorials/xultu/

http://www.webmonkey.com/webmonkey/06/25/index3a_page2.html?tw=programming

JavaScript Injection

10. Januar 2007

Der Test JavaScript Code funktioniert, wenn er per Javascript injector der “Extension Developer” Extension in die Datei chrome://browser/content/browser.xul eingefügt wird:

alert(window.location.href);

function clicked(){

  alert(”Click erkannt!”);
 
}

content.document.addEventListener(”click”, clicked, false);

Das bedeutet, der nächste Schritt ist nun,
dieses Javascript per Extension installierbar zu machen.