OCPROP

1. Wozu?

Ocprop ist ein Perl-Skript (auch als Windows-Programm erhältlich), mit dem man unter Benutzung von Geolog seine Fund- und DNF-Caches sowie seine Cache-Listings von der geocaching.com Website zur opencaching.de Plattform migrieren kann. Dies funktioniert auch inkrementell. D.h. wenn man das Skript alle paar Wochen mal laufen lässt, werden jeweils alte Logs für neu bei OC gelistete Caches nachgetragen. Außerdem werden, je nach Einstellung Änderungen an Logs oder an Cachebeschreibungen, die bei GC durchgeführt wurden und durch Geolog runter geladen wurden auch zu OC weiter gereicht. Das selbe gilt für Statusändernungen der eigenen Caches, allerdings müssen die nicht extra per Hand runter geladen werden.

Zusätzlich kann man auch alle exklusiv bei OC eingestellten Cache-Listings und Logs herunterladen und in die Geolog-Datenbasis integrieren, so dass diese bei der eigenen Website und der eigenen Statistik berücksichtigt werden.

2. Installation

Am einfachsten ist die Installation, wenn man sich das Skript/Programm Geoupdate runterlädt, das es hier gibt. Als Windows-Benutzer lädt man sich am einfachsten das Windows-Programm runter. Dann startet man das Skript/Programm und beantwortet dann einige einfache Fragen. Speziell sollte man dabei auch angeben, dass man Geolog und Ocprop installieren will. Dann lädt Geoupdate alles nötige runter und installiert die Programme.

Wenn man statt der Windows-Programme die Perl-Skripte installiert, so benötigt man einen Perl-Interpreter, der aber bei Unix/Linux sowieso dabei ist. Für Windows kann man sich ziemlich schmerzfrei ActiveState ActivePerl runterladen und installieren.

Nicht vorhandene Pakete kann man sich unter Linux (als root) mit perl -MCPAN -e shell nachinstallieren. Insbesondere GD muss installiert werden. Unter Windows mit ActivePerl benutzt man das Programm ppm. Hier ist das Paket GD allerdings zur Zeit nicht im zentralen ActivePerl-Repository. Stattdessen muss man sich GD mit dem folgenden ppm-Befehl runterladen: ppm install http://theoryx5.uwinnipeg.ca/ppms/GD.ppd

Beim ersten Start überprüft das Skript, ob es ein Geolog-Profil-Ordner gibt (~/.geolog für Linux/Unix, Geolog in Anwendungsdaten für Windows). Ist das der Fall, werden von da einige Werte importiert, z.B. welcher Editor benutzt werden soll. Dann werden einige Fragen gestellt, deren Bedeutung ausführlich erklärt wird. Speziell ist es möglich, auf die deutsche Sprache umzustellen!

Ein wichtiger Punkt ist der Update-Modus für Logs und Listings. Dabei gibt es folgende Wahlmöglichkeiten:

3. Aufruf des Programms

Es gibt eine Menge von Optionen, die man beim Aufruf angeben kann. Wird das Programm ohne weitere Optionen und Parameter aufgerufen, so läuft das Programm über alle von geolog.pl heruntergeladenen Logs und Cachebeschreibungen, testet ob es dafür neu gelistete Caches bei OC gibt, checkt bei bekannten Caches, ob die von geolog.pl herunter geladene Beschreibung neuer ist und macht dann ggfs. einen Upload. Der Test auf neue Listings bei OC von bei GC bekannten Caches geht dabei über die Namensidentität und Koordinatenidentität sowie die geocaching.com-Link auf den OC-Seiten.

Allgemein lautet die Aufrufsyntax für das Perl-Skript:

ocprop.pl [Optionen] [GC-Cache-Ids]
Benutzt man das Windows-Programm, so ist die Aufrufsyntax entsprechend:
ocprop.exe [Optionen] [GC-Waypoint-Namen]
Man kann unter Windows das Programm/Skript auch durch einen Doppelklick auf das Programmsymbol starten. Dann gerät man als erstes in ein Menü, in dem man Ausführungsmodus und Modifikatoren festlegen kann.

Mit

ocprop.pl -h 
erhält man eine kurze Erläuterung.

Außerdem gibt es die folgenden Möglichkeiten das Programm zu starten:

Außerdem gibt es die folgenden Modifikatoren, die das Verhalten des Skripts beeinflussen: Die Angaben werden in der Datei ocprofile.txt im Geolog-Profile-Ordner gespeichert und können mit einem normalen Edior bearbeitet werden oder aber durch Aufruf von Ocprop mit der Option -e.

4.Übernahme der Daten

Bei der Übernahme der Cachebeschreibungen werden einige Heuristiken angewandt, um die Übernahme zu vereinfachen und möglichst alles automatisch ablaufen zu lassen. Dies ermöglicht es später, Änderungen bei GC einfach zu OC weiter zu reichen falls man seine GC-Cachebeschreibung vor der Übernahme einmal angepasst hat.

4.1 Cachearten

Für die meisten Cachearten ist klar, welche Entsprechungen man wählt. Für den GC-Traditional gibt es allerdings bei OC den normalen Cache und den Drive-in. Hier wird der normale Cache benutzt. Ebenso gibt es für den GC-Mystery verschiedene Möglichkeiten. Hier wird der Rätselcache als Lösung gewählt. Man kann diese aber natürlich nach der Übernahme manuell ändern. Da im weiteren die Cacheart nicht mehr geändert wird, bleibt diese manuelle Änderung auch auf jeden Fall bestehen.

4.2 Kurzbeschreibung

Die Kurzbeschreibung darf bei OC nicht länger als 120 Zeichen sein. Ist sie länger, werden die ersten 120 Zeichen in die Kurzbeschreibung übernommen, der ganze Text wird dann nochmals als Absatz vor die Langbeschreibung gesetzt.

Ist die Kurzbeschreibung bilingual (Deutsch/Englisch), so wird eine automatische Aufteilung vorgenommen, falls der Text folgende Gestalt hat:

<b><font color="blue">DE</font></b> 
Deutscher Text
<b><font color="blue">EN</font></b> 
Englischer Text
Dabei dürfen die <font>-Tags auch weggelassen werden oder man kann andere Farben benutzen. Der reguläre Ausdruck, der hier verwendet wird, sieht wie folgt aus:
m|^\s*<b>\s*(<font.*?>)?\s*DE\s*(</font>)?\s*</b>\s*(.*?)<b>\s*(<font.*?>)?\s*?EN\s*(</font>)?\s*</b>\s*(.*)$|si
Hier gilt dann die Längenbeschränkung für jede einzelne Sprache.

4.3 Langbeschreibung

Ebenso wie bei der Kurzbeschreibung gibt es auch hier ein Format, dass die Zerlegung in deutschen und englischen Text unterstützt. Hier sollte es wie folgt aussehen:
Allgemeiner Teil
<b><font color="blue">Deutsch</font></b> 
Deutscher Text
<hr>
<b><font color="blue">English</font></b> 
Englischer Text
Natürlich lässt der reguläre Ausdruck auch wieder mehr zu, worauf hier aber nicht im Einzelnene eingegangen werden soll:
m|^(.*?)(<p>)?\s*<b>\s*(<font.*?>)?\s*Deutsch\s*(</font>)?\s*</b>\s*(</p>)?(.*?)<hr
/>(\s*<.*?>)*?\s*<b>\s*(<font.*?>)?\s*English\s*(</font>)?\s*</b>\s*(</p>)?(.*)$|si

4.4 Hinweise

Hinweise, die mit [Deutsch:] oder [Deutsch blabla:] beginnen, werden dem deutschen Teil zugeordnet, wobei das "[Deutsch:]" bzw. "Deutsch" entfernt wird. Entsprechendes gilt für Hints der Form [English:]... und [English blabla:]... .

4.5 Bilder

Alle Bilder, die bei GC gespeichert wurden, werden zu OC übertragen. Zusätzlich werden Referenzen zu GC-Bildern in der Cachebeschreibung durch die entsprechenden OC-Referenzen ersetzt. Schließlich werden alle Bilder, die in der Cachebeschreibung benutzt werden, ausgeblendet, und es werden alle Bilder, in deren Beschreibung der String "spoiler" vorkommt, als Spoiler markiert,

5. Feedback

Lob, Verbesserungen und Problembeschreibungen bitte an fogg at gmx.de. Im letzteren Fall bitte so ausführlich wie möglich, d.h. Alternativ und ergänzend kann man Probleme usw. auch im Support-Forum beschreiben und diskutieren.

6. Lizenz

Das Ganze ist natürlich unter der GPL lizenziert!

Happy Geochaching - fogg


Last modified: Wed Feb 18 11:15:15 CET 2009