So hier kommt mein neustes Script. Der HS-Heilbronn Essensplan.
Wer an der HS-Heilbronn studiert weiß,
dass der Essensplan zwar im Internet auf http://www.studentenwerk.uni-heidelberg.de befindet. Jedoch kann man den Essensplan nicht als RSS, Atom oder ähnlichen abonnieren.
Dies erledigt nun mein Script. Das generierte Feed kann unter:
http://www.thomas-wollmann.de/sonstiges/essenRSS/
Abonniert werden.
Bei Fragen u.o. Bugs freue ich mich über eine E-Mail :)
Viel Spaß damit!
Thomas
Donnerstag, 4. November 2010
Montag, 10. Mai 2010
MSN Plus Jscript - PersonalMessage als Ticker
Um einen kleinen Denkanstoß für Entwickler zu liefern möchte ich ein paar Codeschnipsel vorstellen, die die persönliche Nachricht in MSN nach Wünschen anpassen.
Starten möchte ich mit einem JScript für MSN Plus:
Zunächst wird ein Timer aktiviert, der quasi sofort das OnEvent_Timer Event auslößt. Nun wird eine Datei von einem Server geladen und der Timer nun auf 5 Minuten gesetzt.
Wenn die Datei runtergeladen ist, wird das OnEvent_DownloadFileComplete Event ausgelöst. Jetzt kann der Inhalt der Datei verarbeitet werden.
In diesem Beispiel wird einfach nur der Inhalt der Datei als persönliche Nachricht gesetzt.
Durch den Timer wird die Nachricht alle 5 Minuten aktualisiert.
Ich verwende zum Sammeln der Daten ein PHP Script auf meinem Server.
Bis jetzt sind mir die Schuldenuhr von Deutschland, ein Landtagswahlticker, eine Wettervorhersage, ein Börsenticker und ein Zitatescript gelungen.
Um z.B. die Temperaturen von heute, morgen und übermorgen in Düsseldorf auszugeben, können die Daten von wetter.de per Socket abgegriffen und verarbeitet werden.
Starten möchte ich mit einem JScript für MSN Plus:
function OnEvent_Initialize(MessengerStart)
{
MsgPlus.AddTimer("timer1", 100);
}
function OnEvent_Uninitialize(MessengerExit)
{
//Messenger.MyPersonalMessage = "";
}
function OnEvent_Timer(timerid)
{
var Started = MsgPlus.DownloadFile("http://URL zu meinem kram");
if(Started)
Debug.Trace("Downloading file, waiting for event");
else
Debug.Trace("Couldn't start the download");
MsgPlus.AddTimer("timer1", 300000);
}
function OnEvent_DownloadFileComplete(Url, OutFile, Success)
{
Debug.Trace("DownloadFileComplete event received for " + Url);
Debug.Trace(" Success: " + Success);
if(Success)
{
Debug.Trace(" Result file path: " + OutFile);
/* Read the file, do what needs to be done */
var fso = new ActiveXObject("Scripting.FileSystemObject");
blpp = fso.OpenTextFile(OutFile,1);
var atext = blpp.readline();
if(atext != "")
{
Messenger.MyPersonalMessage = atext;
}
blpp.Close();
//Delete the temporary file
var File = new ActiveXObject("Scripting.FileSystemObject");
File.DeleteFile(OutFile);
}
}
Zunächst wird ein Timer aktiviert, der quasi sofort das OnEvent_Timer Event auslößt. Nun wird eine Datei von einem Server geladen und der Timer nun auf 5 Minuten gesetzt.
Wenn die Datei runtergeladen ist, wird das OnEvent_DownloadFileComplete Event ausgelöst. Jetzt kann der Inhalt der Datei verarbeitet werden.
In diesem Beispiel wird einfach nur der Inhalt der Datei als persönliche Nachricht gesetzt.
Durch den Timer wird die Nachricht alle 5 Minuten aktualisiert.
Ich verwende zum Sammeln der Daten ein PHP Script auf meinem Server.
Bis jetzt sind mir die Schuldenuhr von Deutschland, ein Landtagswahlticker, eine Wettervorhersage, ein Börsenticker und ein Zitatescript gelungen.
Um z.B. die Temperaturen von heute, morgen und übermorgen in Düsseldorf auszugeben, können die Daten von wetter.de per Socket abgegriffen und verarbeitet werden.
$packet = "GET /wettervorhersage/Wetter-Duesseldorf/Deutschland/e64f033bf5ce13eab84b602dde3b7bd3/layout/drucken HTTP/1.1\r\nHost: www.wetter.de\r\nUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\nAccept-Encoding: deflate\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7r\nConnection: Close\r\n\r\n";Bei Fragen oder weiteren Ideen schreibt mir, was in euren Köpfen vor sich geht.
$list = get_packet("www.wetter.de", $packet);
$list = substr($list, strpos($list, "table"), strpos($list, "/table"));
$list = explode("", $list);
$clist = count($list);
$i=1;
while($i<$clist) { if(substr_count($list[$i-1],"Mittags") > 1)
{
$text = $list[$i+1];
}
$i++;
}
$text = explode(">", $text);
$heute = strtok($text[2],"<"); $morgen = strtok($text[6],"<"); $umorgen = strtok($text[10],"<"); echo "Düsseldorf - Temp. Heute: ".html_entity_decode($heute)." ; Temp. Morgen: ".html_entity_decode($morgen)." ; Temp. Übermorgen: ".html_entity_decode($umorgen);
Samstag, 1. Mai 2010
Greasemonkey Addon: Rapidshare waiter
Habe grade ein kleines Greasemonkey Script gebaut.
Wenn man bei Rapidshare keinen premium Account hat, wird zwischen den Downloads die Wartezeit angezeigt aber nicht aktualisiert. Zum aktualisieren, muss man die Seite neu laden.
Dieses Script zählt die Zeit von selbst runter.
Install Script
Wenn man bei Rapidshare keinen premium Account hat, wird zwischen den Downloads die Wartezeit angezeigt aber nicht aktualisiert. Zum aktualisieren, muss man die Seite neu laden.
Dieses Script zählt die Zeit von selbst runter.
Install Script
Labels:
addon,
greasemonkey,
javascript,
rapidshare,
script,
warten
Donnerstag, 29. April 2010
mytooltip - dynamische Tooltips in Tabellen
Wenn man versucht für ein Webprojekt ein paar Sprechblasen bzw. Tooltips in einer Tabelle in allen Browsern richtig anzuzeigen, hat man durch diverse Abweichungen des Browsers vom Standard so seine Schwierigkeiten. Gerade, wenn man Ajax Fähigkeiten oder einfach nur dynamisch vergrößernde Tooltips einbauen möchte.
Hier möchte ich einen etwas ungewöhnlichen Ansatz für die Lösung des Problems vorstellen.
Sie wurde bisher im Internet Explorer 6,7,8; Firefox 3.6.3; Safari 4 und Opera 10.52 erfolgreich getestet.
Zur Technik:
In diesem Beispiel werden die Blasen mit dem CSS Attribut "display: none" generiert.
Wenn man nun auf eine Stelle in der Tabelle klickt bzw. mit der Maus drüberfahrt, kann mit den Eigenschaften onclick, onmouseover und onmouseout eine Javascriptfunktion aufgerufen werden.
Diese verschiebt die benötigte Blase zur aktuellen Mauszeigerposition + Offset und macht Sie sichtbar.
Durch erneutes Klicken oder onmouseout kann je nach Wunsch die Blase wieder verschwinden werden lassen.
Demo
Download Demo
Hier möchte ich einen etwas ungewöhnlichen Ansatz für die Lösung des Problems vorstellen.
Sie wurde bisher im Internet Explorer 6,7,8; Firefox 3.6.3; Safari 4 und Opera 10.52 erfolgreich getestet.
Zur Technik:
In diesem Beispiel werden die Blasen mit dem CSS Attribut "display: none" generiert.
Wenn man nun auf eine Stelle in der Tabelle klickt bzw. mit der Maus drüberfahrt, kann mit den Eigenschaften onclick, onmouseover und onmouseout eine Javascriptfunktion aufgerufen werden.
Diese verschiebt die benötigte Blase zur aktuellen Mauszeigerposition + Offset und macht Sie sichtbar.
Durch erneutes Klicken oder onmouseout kann je nach Wunsch die Blase wieder verschwinden werden lassen.
Demo
Download Demo
Labels:
css,
html,
javascript,
mauszeiger,
mytooltip,
programmieren,
tabellen,
tooltip
Sonntag, 11. April 2010
Python RSAPI 0.3.1 Bug
Anscheinend ist in der Version 0.3.1 der Python RSAPI ein Bug, sodass diese nicht in allen OOo Versionen installiert werden kann.
Da ich aber gerade quasi mitten im Abitur stecke, hab ich im Moment nicht die Zeit mich um den Bug zu kümmern.
Ich bitte darum vorübergehend bei einer älteren Version zu bleiben, die kis-Version oder die original RSAPI.DLL zu verwenden.
Da ich aber gerade quasi mitten im Abitur stecke, hab ich im Moment nicht die Zeit mich um den Bug zu kümmern.
Ich bitte darum vorübergehend bei einer älteren Version zu bleiben, die kis-Version oder die original RSAPI.DLL zu verwenden.
Greasemonkey Addon: Youtube watch and add video to Quicklist
Gestern habe ich ein kleines Script für Greasemonkey gebaut, dass auf Youtube beim anschauen eines Videos einen Button neben den Namen eines Videos hinzufügt. Er ermöglicht es das angesehene Video direkt zur Quicklist hinzuzufügen.
Install Script
In Verbindung mit dem Greasemonkey Script Youtube Quicklist QuickAdd hat man sogar die Quicklist Buttons in der Kanalansicht.
Viel Spaß damit!
Install Script
In Verbindung mit dem Greasemonkey Script Youtube Quicklist QuickAdd hat man sogar die Quicklist Buttons in der Kanalansicht.
Viel Spaß damit!
Labels:
addon,
greasemonkey,
javascript,
quicklist,
script,
youtube
Samstag, 3. April 2010
Dissertation von meinem Dad endlich online
Mein Vater hat mich gebeten seine Doktorarbeit zu veröffentlichen.
Nun kann jeder sie unter http://www.gerhard-wollmann.de lesen.
Abstrakt: Modellbildung und experimentelle Überprüfung der Floatation in der Batchzelle
Für die Flotation wird ein Modell vorgestellt, das auf hydrodynamischer Grundlage das
Ausbringverhalten des Einzelskorns und des gesamten Aufgabekollektives beschreibt. Es
ermittelt aus der Stoß-, Haft- und Schaumwahrscheinlichkeit die Flotationskenngröße ki
der einzelnen Kornklassen und das zeitliche Massenausbringen m sowohl für
Wertmaterial als auch für die Gangart.
Das Modell wurde in 4, 10 l Batchflotationszellen überprüft.
Radiotracerversuche zeigen gute Übereinstimmung des experimentellen und des
theoretischen Flotationsverhaltens.
Experimente mit nicht entschlämmten Industrieaufgabegut, das aus Flußspat als
Wertmaterial und Baryt und Quarz als Gangart besteht, bestätigen bei unterschiedlichen
Drehzahlen, Luftdurchsätzen, Zellengeometrien, Trübedichten und Oberflächenspannung
das Modell im ganzen.
Nun kann jeder sie unter http://www.gerhard-wollmann.de lesen.
Abstrakt: Modellbildung und experimentelle Überprüfung der Floatation in der Batchzelle
Für die Flotation wird ein Modell vorgestellt, das auf hydrodynamischer Grundlage das
Ausbringverhalten des Einzelskorns und des gesamten Aufgabekollektives beschreibt. Es
ermittelt aus der Stoß-, Haft- und Schaumwahrscheinlichkeit die Flotationskenngröße ki
der einzelnen Kornklassen und das zeitliche Massenausbringen m sowohl für
Wertmaterial als auch für die Gangart.
Das Modell wurde in 4, 10 l Batchflotationszellen überprüft.
Radiotracerversuche zeigen gute Übereinstimmung des experimentellen und des
theoretischen Flotationsverhaltens.
Experimente mit nicht entschlämmten Industrieaufgabegut, das aus Flußspat als
Wertmaterial und Baryt und Quarz als Gangart besteht, bestätigen bei unterschiedlichen
Drehzahlen, Luftdurchsätzen, Zellengeometrien, Trübedichten und Oberflächenspannung
das Modell im ganzen.
Labels:
doktorarbeit,
gerhard,
News,
Wollmann
Samstag, 30. Januar 2010
Sudoku Script - Update
Ich habe die Online Versionen des Sudokuscripts für das Design angepasst.
Außerdem wurden noch technische Kleinigkeiten unter der Haube geändert.
Wenn ihr mal Langeweile habt: Spielt eine Runde Sudoku
Außerdem wurden noch technische Kleinigkeiten unter der Haube geändert.
Wenn ihr mal Langeweile habt: Spielt eine Runde Sudoku
Python RSAPI 0.3.1 released
Die Version 0.3.1 ändert nur den Updatepfad des Plugins nach der Serverrenovierung auf den neuen Pfad.
USB ISP-Programmer Bug
Leider hat er einige Bugs. Was ein sehr komischer war, der mich beschäftigt hat und welchen ich euch berichte, damit ihr selber nicht solange daran hängt.
Es kann vorkommen, dass wenn man das USB-Kabel des Programmers in den PC steckt, Windows den Treiber neu installiert. Wenn man nun einen Controller programmieren möchte, hat man das Problem, dass man nicht in den Programmiermodus wechseln kann.
In AVR-Studio verwirrt außerdem, dass ein Fusebit auf einen Externen Takt gestellt ist.
Aber wie immer ist die Lösung einfach. Den Programmer im PC gesteckt lassen und einfach mal rebooten, dann ist alles wieder normal. :P
Labels:
Atmel,
AVG,
Bug,
ISP,
Mikrokontroller,
Programmer,
STK500
Montag, 25. Januar 2010
Der Blog und sein neues Gesicht
Heute habe ich mich mal dran gemacht das Template für den Blog zu bauen.
Dazu habe ich auf eine Vorlage von NewWPthemes zurückgegriffen, die ich modifiziert habe.
Zusätzlich zum neuen "Look" habe ich versucht die Benutzerfreundlichkeit etwas zu verbessern.
Wenn man schon mal dabei ist alles "chic" zu machen, habe ich auch ein kleines Templatesystem gebaut, dass meine HP in einem einheitlichen Bild erscheinen lässt. Sonst sind nur ein paar Details am Design verändert worden.
Die Links, die sich bei der Umbauaktion geändert haben, habe ich in den einzelnen Posts gleich geändert.
Dazu habe ich auf eine Vorlage von NewWPthemes zurückgegriffen, die ich modifiziert habe.
Zusätzlich zum neuen "Look" habe ich versucht die Benutzerfreundlichkeit etwas zu verbessern.
Wenn man schon mal dabei ist alles "chic" zu machen, habe ich auch ein kleines Templatesystem gebaut, dass meine HP in einem einheitlichen Bild erscheinen lässt. Sonst sind nur ein paar Details am Design verändert worden.
Die Links, die sich bei der Umbauaktion geändert haben, habe ich in den einzelnen Posts gleich geändert.
Freitag, 22. Januar 2010
Zitate
Auf meiner HP gibt es, wie einigen vll. schon aufgefallen einen traditionellen Zitat Kasten.
Diese Zitate sind alle möglichen Zitate, die ich gefunden habe. In Büchern, Filmen, Radio, Internet etc.
Nach einigen Anfragen, möchte ich meine Zitatauswahl offenlegen.
Wenn ich was nettes neues finde, kommt natürlich immer was dazu.
Um die aktuelle Zitatliste zu sehen besucht:
http://www.thomas-wollmann.de/sonstiges/zitate
Diese Zitate sind alle möglichen Zitate, die ich gefunden habe. In Büchern, Filmen, Radio, Internet etc.
Nach einigen Anfragen, möchte ich meine Zitatauswahl offenlegen.
Wenn ich was nettes neues finde, kommt natürlich immer was dazu.
Um die aktuelle Zitatliste zu sehen besucht:
http://www.thomas-wollmann.de/sonstiges/zitate
Labels:
Zitate
Sonntag, 17. Januar 2010
GOL(Game of Life) fürs Handy
Wie jedes Jahr war ich auch dieses Jahr auf dem Chaos Communication Congress in Berlin. Zwischen den Vorträgen und immer wenn mir langweilig war, hab ich an einer Java Version von Conway's Game of Life gebaut.
Aber was möchte man schon mit einem Solchen Programm? Das hat jeder schon mal für Java gebaut. Ich erinnerte mich an meine Excel Makro Version vom GOL. So viel mir ein, dieses Programm auch für Handys zu Implementieren.
Somit ergab sich aus dieser Pausenbeschäftigung eine kleine Spielerei.
Viel Spaß damit!
Download
Bisher getestet auf verschiedenen Sony Ericsson Walkman Handys
Aber was möchte man schon mit einem Solchen Programm? Das hat jeder schon mal für Java gebaut. Ich erinnerte mich an meine Excel Makro Version vom GOL. So viel mir ein, dieses Programm auch für Handys zu Implementieren.
Somit ergab sich aus dieser Pausenbeschäftigung eine kleine Spielerei.
Viel Spaß damit!
Download
Bisher getestet auf verschiedenen Sony Ericsson Walkman Handys
Labels:
game of life,
gol,
handy,
java,
midlet
Alte Posts sind drin!
Da nun die wichtigen alten Posts wieder drin sind, kann es mit neuen weitergehen :)
Nebenbei bastel ich noch weiter an der HP.
Nebenbei bastel ich noch weiter an der HP.
Donnerstag, 14. Januar 2010
Es macht sich
Die Downloads sind nun wieder auf dem Server.
Es fehlt nurnoch, dass das Updatescript des Python-RSAPI Plugins umgestellt wird. Dazu wird warscheinlich auch eine neue Version kommen.
Die alten Posts krame ich auch so langsam wieder raus ...
Mir fällt bestimmt noch viel Kram ein, den ich noch verbessern kann. :P
Es fehlt nurnoch, dass das Updatescript des Python-RSAPI Plugins umgestellt wird. Dazu wird warscheinlich auch eine neue Version kommen.
Die alten Posts krame ich auch so langsam wieder raus ...
Mir fällt bestimmt noch viel Kram ein, den ich noch verbessern kann. :P
Montag, 11. Januar 2010
Neuer Blog
Aus wartungtechnischen Gründen und des Komforts meinerseits habe ich mich entschieden den Blog auf Blogspot auszulagern.
Erstmal werde ich versuchen alte Postings wieder zu reposten. Dann schreibe ich wieder über meine aktuellen Projekte. Da sind schon wieder einige angefallen.
Meinen Webspace selber werde ich in Zukunft auch neugestalten. Lasst euch überraschen.
MfG
Thomas Wollmann
Erstmal werde ich versuchen alte Postings wieder zu reposten. Dann schreibe ich wieder über meine aktuellen Projekte. Da sind schon wieder einige angefallen.
Meinen Webspace selber werde ich in Zukunft auch neugestalten. Lasst euch überraschen.
MfG
Thomas Wollmann