Für den Austausch von Medien nutzt Talk das Protokoll WebRTC (Web Real-Time Communication), einen offenen Standard zur direkten Kommunikation zwischen Rechnern. Die aktuellen Browser unterstützen dieses Protokoll, sodass damit Videokonferenzen problemlos möglich sind, zumindest innerhalb eines lokalen Netzes.

Sind die beteiligten Rechner in verschiedenen Netzen, so taucht ein Problem auf. Die Browser müssen ihre eigene IP-Adresse und die IP-Adresse der Gegenstelle wissen. Dies ist leider oft nicht der Fall, wenn sie hinter einem NAT-Router sitzen, z.B. einer Fritzbox. Hier kennen die Geräte nur ihre netzinterne IP-Adresse, z.B. 192.168.1.52, aber nicht die offizielle IP-Adresse, die nur der Router kennt.

Dieses Problem lässt sich mit einem STUN-Server (Session Traversal Utilities for NAT) lösen. Bei dem STUN-Server melden sich die beteiligten Rechner, dabei lernt er ihre öffentlichen IP-Adressen kennen und kann sie an die Gesprächspartner weitergeben. Mit diesen Informationen können die Geräte dann direkt miteinander kommunizieren.

Der Betrieb eines STUN-Servers ist relativ problemlos, da nur sehr geringe Datenmengen anfallen. Es gibt daher auch öffentliche STUN-Server, z.B. bei Nextcloud stun.nextcloud.com:443 (Voreinstellung in Talk).

Leider langt der STUN-Server heutzutage nicht mehr. Ein Router, wie die Fritz!Box, macht nämlich nicht nur NAT, sondern stellt auch eine Firewall zur Verfügung. Verbindungen von außen, aus dem Internet, auf die Rechner innerhalb des lokalen Netzes sind so nicht möglich, ohne auf dem Router Ports freizugeben und auf den Zielrechner weiterzuleiten. Das wäre eine recht aufwändige Vorgehensweise. Es sind nur Verbindungen aus dem Inneren des jeweiligen Netzes zu öffentlich zugänglichen Rechnern möglich.

Hier kommt der TURN-Server ins Spiel (Traversal Using Relays around NAT), er ermöglicht es den Clients Daten ohne eine direkte Verbindung auszutauschen (Relay Server). Sämtlicher Datenverkehr läuft dann durch diesen Server.

Öffentliche TURN-Server wird man in der Regel nicht finden, da rechte hohe Datenvolumina anfallen. Für eine ordentliche Videoqualität werden 500 kbit/s angegeben. Bei 3600 Sekunden in einer Stunde macht das dann 500×3.600 = 1.800.000 kbit etwa 1.800 mbit, also schon ein erhebliches Datenvolumen.

 

Heute hatte ich ein blödes Problem zu lösen. Alle Anrufe auf die Familien-Festnetznummer landeten auf meinem Handy. In der Fritz!Box tauchten die Gespräche nicht auf, hier war auch keine entsprechende Weiterleitung eingerichtet. Nachdem ich auch alle Fritz!Apps deaktiviert hatte, war klar, es muss eine Einstellung bei O2 sein.

Leider konnte ich im Online-System keine Möglichkeit finden die Änderung vorzunehmen bzw. überhaupt zu prüfen.

Es geht auch im Festnetz über bestimmte Rufnummern bzw. Codes, die sich aber von den entsprechenden GSM-Codes unterscheiden.

Deaktivieren der sofortigen Rufumleitung geht bei o2-DSL über

  • *21*# für die Hauptrufnummer und mit
  • *21**# für alle Rufnummern.
  • Eine Rufumleitung auf einer bestimmten Rufnummer lässt sich mit *21**<Rufnummer># löschen.

Aktivieren kann man die Rufumleitung für die Hauptrufnummer übrigens mit

  • *21*<Zielrufnummer>#, vermutlich nur für die aktuelle Rufnummer
  • für alle Rufnummern mit *21*<Zielrufnummer>*#
  • und für eine bestimmte Rufnummer mit *21*<Zielrufnummer>*<Rufnummer>#

 

mit *#21*# oder *#21# soll man Informationen über den aktuellen Stand der Rufumleitung bekommen.

Eine umfangreiche Liste der Möglichkeiten ist auf folgender O2-Seite zu finden: https://static2.o9.de/blob/12926130/v=2/Binary/telefoniemerkmale-dsl-pdf-download.pdf

Hinweis: Die Codes unterscheiden sich leicht in unterschiedlichen Anleitungen, manchmal beginnen die Sequenzen mit **. Eine besondere Bedeutung kommt der Zahl zu, hier die 21:

  • 21 steht für ständige Rufumleitung
  • 61 für Rufumleitung bei Nichterreichen
  • 67 für Rufumleitung bei Besetzt

Ein zentraler Kalender im Netz, auf den man mit allen Endgeräten zugreifen kann ist eine sehr praktische Angelegenheit. Viele Menschen nutzen für derartige Zwecke kommerzielle Angebote, wie den Google-Kalender. Gerade die persönlichen Termine würde ich gern in der eigenen Hand behalten.

Ich nutze daher die Kalender-Erweiterung von Owncloud bzw. Nextcloud. Auf diesen Kalender greife ich dann per Thunderbird oder auch per App von meinem Android-Gerät aus zu. Dadurch sind die Kalender auf allen Systemen synchronisiert.

Achtung: Bitte den Nachtrag am Ende der Seite beachten!

Diese Konfiguration besteht aus mehreren Teilen.

Der Kalender von Owncloud/Nextcloud

Zuerst benötigt man einen Account auf einem aktuellen Cloud-System.

In diesem System muss das Kalender-Plugin installiert sein, das man mit einem Klick auf das entsprechende Icon aktiviert.

Testen kann man das Zusammenspiel der verschiedenen Anwendungen aber nur, wenn auch ein paar Termin eingetragen sind. Sollte das noch nicht geschehen sein, so würde ich das jetzt nachholen.

Nun benötigt man die zum Kalender zugehörige URL. Dazu dienst das „Mehr-Icon“ (das mit den drei Punkten) hinter dem Namen des Kalenders.

Es öffnet sich ein Kontextmenü mit den Punkten Bearbeiten, Link, Herunterladen, Löschen. Hier wählt man den Eintrag Link. Es öffnet sich dann eine Zeile mit der individuellen URL.

Diesen Link, hier https://owncloud.netthelp.de/remote.php/dav/calendars/test/personal/ muss man sich kopieren bzw. merken. Der letzte Teil der URL beinhaltet den Benutzernamen (hier test) und den Kalendernamen (hier personal). Wenn der Kalendername Umlaute enthält, dann sieht die URL aufgrund der Umschreibungen etwas komisch aus.

Damit hat man die notwendige Information über den Kalender.

 

Thunderbird

Thunderbird ist einfach mit Lieblings-Mailprogramm. Da ich sehr viel mit Mail arbeite ist es naheliegend auch den persönlichen Kalender mit diesem Programm zu verwalten. Dazu dient bei Thunderbird die Extension Lightning, die bei aktuellen Versionen meistens schon installiert ist. Ansonsten muss man sie als Addon hinzufügen.

Bei der folgenden Beschreibung gehe ich davon aus, dass Thunderbird als Mailprogramm erfolgreich konfiguriert wurde.

Kurz nach dem Start von Thunderbird hat man kurzzeitig zwei Möglichkeiten einen neuen Kalender zu erstellen.

Im mittleren Bereich findet sich der Menüpunkt „Einen neuen Kalender erstellen“. Dieser Bereich verschwindet aber nach kurzer Zeit und wird durch die Darstellung der Mails ersetzt.

Was aber bleibt ist das kleine Icon recht oben „Zum Kalender-Tab wechseln“. Egal welchen Weg man wählt, man landet im Kalender-Tab.

Normalerweise ist bereits ein Kalender vorhanden, der standardmäßig eingerichtet wurde. Diesen Kalender kann man nicht umkonfigurieren, sondern man legt einen neuen Kalender an.

Dazu klickt man mit der rechten Maustaste auf den Bereich unterhalb des Kalendernamens in der linken Spalte, darauf öffnet sich ein Kontextmenü.

Hier wählt man „Neuer Kalender“, worauf ein Assistent startet.

Wichtig ist, dass man hier „im Netzwerk“ auswählt, bevor man auf Weiter klickt.

In diesem Fenster wählt man CalDav als Protokoll und die Owncloud-URL vom ersten Abschnitt als Adresse. Im nächsten Schritt kann man noch ein paar Kleinigkeiten einstellen.

Man kann hier einen Namen für den Kalender angeben und für die Übersicht eine Hintergrundfarbe.

Im letzten Schritt muss man dann den Benutzernamen und das zugehörige Passwort angeben und kann entscheiden, ob die Daten im Programm gespeichert werden sollen.

Danach sollte der Kalender erscheinen, klickt man dann noch auf Monat, so hat man die gleiche Darstellung, wie im Owncloud.

 

Filelink

Eine Besonderheit bei Thunderbird ist die Möglichkeit große Dateianhänge in eine Cloud ausgliedern zu können, bevor die Mail verschickt wird. In der Mail taucht dann ein Link auf den Dateianhang auf.

Für die Zusammenarbeit mit Nextcloud existiert ein Addon. Ob dieses Addon auch mit Owncloud funktioniert habe ich nicht ausprobiert. Zur Installation gelangt man über den „Hamburger“ rechts auf der Seite, ein Klick darauf öffnet die Menüs, hier aktivieren wir den Punkt „Add-ons“.

In der Addon-Verwaltung gehen wir auf Erweiterungen und geben in dem Suchfenster den Begriff Filelink ein.

Für den Suchbegriff filelink gibt es eine Reihe von Treffern. Notwendig ist hier der Treffer auf „Nextcloud for Filelink“. Hier klicken wir auf Installieren.

Nach erfolgter Installation muss man Thunderbird einmal neu starten, damit das Add-on aktiv ist.

Nun muss das Add-on noch konfiguriert werden. Dazu geht man wieder ins Menü, entweder über das Hamburger-Icon, oder in dem man mit der Alt-Taste die Menüzeile einblendet. Auf alle Fälle wählt man Einstellungen. Es öffnet sich ein Fenster mit dem neuen Menüpunkt Anhänge. Klickt man diesen Menüpunkt an, so landet man in den filelink-Einstellungen. Hier sollte man die Dateigröße ruhig heruntersetzen, ich finde 1MB ganz passend und dann auf Hinzufügen klicken, um die Nextcloud-Einbindung zu aktivieren.

Klick man jetzt auf „Konto einrichten“, so werden die zugehörigen Daten abgefragt.

Nach dem Klick auf „Konto einrichten“ fragt das Programm nach dem Passwort und versucht dann eine Verbindung zu Nextcloud aufzunehmen. Wenn alles klappt, dann wird der in der Cloud verfügbare Speicherplatz angezeigt.

 

Erstellt man eine Nachricht mit einem Dateianhang von mehr als 1MB, so bietet einem Thunderbird an diese Datei per Filelink zu übertragen. Klickt man auf „Filelink verwenden“, so fragt Thunderbird nach dem zugehörigen Passwort und übertraägt dann die Datei in die Cloud und gibt sie dort zum anonymen Download frei.

Die Mail sieht dann etwas ander aus als vorher, der Link wird automatisch integriert.

 

Android

Bei den Android-Systemen ist leider das Problem, dass CalDAV normalerweise leider nicht eingebunden ist. Man muss hier also erst eine entsprechende Software istallieren, die in der Regel auch kostenpflichtig ist.

Wenn CalDAV eingebunden wurde, dann ist die weitere Einbindung des Kalenders nahezu automatisch.

 

 

Nachtrag Juni 2019

Es scheint im Zusammenspiel zwischen Nextcloud und Thunderbird 60.x ein Problem zu geben, welches die Nutzung des Kalenders unterbindet. Ich nutze aktuell Thunderbird 60.7.1 mit Lightning 6.2.5. Auf meinem Arbeitsplatzrechner mit einer alten Installation die inzwischen mehrfach aktualisiert wurde funktioniert alles, aber auf neuen Installationen klappt die Kalender-Synchronisation nicht.

Unter https://github.com/nextcloud/server/issues/10134#issuecomment-411322692 habe ich einen Beitrag von geogehrke gefunden, der mir geholfen hat.

Man muss nur in der Thunderbird Konfigurationsdatei network.cookie.same-site.enabled auf false setzen.

An die Konfigurationsdatei kommt man über:  Einstellungen -> Erweitert -> Allgemein -> Konfiguration bearbeiten

Sowie ich hier den Schalter umgelegt hatte, starteten die Zugriffe auf Nextcloud. Es scheint ein ungelöstes Problem zugrunde zu liegen, das irgendwo zwischen Nextcloud und Lightning liegt.

Seit einiger Zeit wird es immer schwieriger nach der Ubuntu-Installation phpmyadmin zu nutzen. Mir geht es darum vollen Zugriff auf die Datenbank zu bekommen.

Bei der aktuellen Version gibt es in der Datei /etc/mysql/debian.cnf einen Benutzeraccount:

 # Automatically generated for Debian scripts. DO NOT TOUCH!
 [client] 
 host = localhost
 user = debian-sys-maint
 password = CoitphsNFWH42dLg
 socket = /var/run/mysqld/mysqld.sock
 [mysql_upgrade]
 host = localhost
 user = debian-sys-maint
 password = CoitphsNFWH42dLg
 socket = /var/run/mysqld/mysqld.sock

Die hier angegebenen Zugangsdaten kann man von der Shell aus mittels:

mysql -u debian-sys-maint -p

nutzen. Man kann mit diesem Account auch phpmyadmin nutzen und von dort aus dann die gewünschten Änderungen vornehmen.

 

 

Veröffentlicht unter linux.

Meine Bank, die Hamburger Sparkasse (Haspa) hat leider das normale HBCI-Verfahren eingestellt. Eigentlich hatten die mir den Zugang schon im Frühjahr gekündigt, jetzt aber zu Weihnachten lief der Zugang wirklich aus. Normalerweise hätte ich eher die Bank geopfert, als das Verfahren, aber auch andere Banken haben HBCI abgekündigt. Also musste ich mich mit der Umstellung auf ein TAN-Verfahren beschäftigen.

 

Vorbereitung

Auf Seiten der Haspa muss man auf alle Fälle das Chip-TAN Verfahren aktiviert haben. Im einfachsten Fall geht das auf der Webseite https://banking.haspa.de/. Für den Zugriff auf die Website und später auch das Konto über Moneyplex benötigt man eine PIN. Wie ich die von Urzeiten einmal bekommen habe weiß ich nicht mehr, aber ohne die kann man sich nicht anmelden. In dem Online-Portal kann man dann die verschiedenen Verfahren freischalten, zumindest wenn man noch eine TAN zur Verfügung hat.

Den notwendigen Menüpunkt hat die Haspa wirklich gut versteckt, jedenfalls suche ich jedesmal wieder eine Ewigkeit, eventuell wird der Punkt auch immer wieder neu versteckt, eine Art EasterEgg. Momentan kann man ihn finden, indem man sich einloggt, auf ein Konto geht und dort im roten Menü auf mehr klickt. Es taucht dann oben ein Menübereich auf. Hier darf man nicht auf Sicherheit -> PIN/TAN & Verschlüsselung gehen, sondern auf Verwalten & Einrichten -> Sicherheitseinstellungen -> TAN Verwaltung. Also logisch ist das für mich nicht, hier verwaltet man die Verfahren und nicht die TANs.

Manchmal taucht der Punkt Verwalten & Einrichten auch unten im roten Menü auf.

 

Schritt 1

Schon vor Jahren hatte ich mir einen Kartenleser von ReinerSCT beschafft, den cyberJack RFID Standard. Das Gerät gab es anfangs mit dem Personalausweis vergünstigt. Für das Gerät habe ich mir dann im Frühjahr, nach dem Haspa-Schreiben,  ein Firmware-Update gekauft. Bei den aktuellen Versionen sollte das Update nicht notwendig sein.

Auch schon im Frühjahr habe ich mir von Moneyplex das Update auf Version 2018 gekauft, da erst diese Version mit dem TAN-Verfahren umgehen kann. Auf der Matrica-Homepage ist von der Version 2018 noch nichts zu sehen, aber der freundliche und immer hilfsbereite Support hatte mir die Informationen zur Software und dem Kartenleser-Update gegeben.

Dann habe ich gewartet, bis die Haspa das bequeme und sichere HBCI-Verfahren abstellt. Das war jetzt am 11. Dezember der Fall.

 

Schritt 2

Also habe ich erst einmal die Kartenleser-Software auf meinem Ubuntu 18.04 System installiert. Dazu bin ich nach folgenden Texten vorgegangen:

* http://wiki.matrica.com/index.php/CCID_Chipkartenleser_unter_Linux

* http://wiki.matrica.com/index.php/Cyberjack

Konkret waren das die folgenden Schritte:

  • aus der Ubutu-Software-Verwaltung installieren: libccid libpcsclite1 pcscd pcsc-tools
  • von der Reinert-Homepage  http://www.reiner-sct.com/support/  den passenden Treiber laden: Support → Produktfamile Chipkartenleser → Chipkartenleser wählen → Treiber-Downloads → Linux  (bei mir Ubuntu 18.04) und installieren.
  • mittels lsusb sollte der Kartenleser erkannt werden. Hier die Hersteller und Produkt-ID auslesen, bei mir 0c4b:0500
  • die Datei /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist öffnen und in den Bereichen
    • ifdVendorID (0x voranstellen)
    • ifdProductID (0x voranstellen)
    • ifdFriendlyName (ich habe die ganze lange Zeichenkette genommen)
      um die Ausgaben von lsusb erweitern. Ich habe dafür immer die erste Zeile der Rubrik benutzt.
  • nun die Datei /lib/systemd/system/pcscd.service editieren und –auto-exit entfernen
  • den Dienst neu starten mittels service pcscd restart
  • und aktivieren systemctl enable pcscd.service

Danach war der Kartenleser funktionsfähig und der Test aus den Einstellungen von Moneyplex hat Erfolg gemeldet.

 

 

 

 

 

 

Schritt 3

Nun konnte ich auf der Haspa-Seite meine Konto-Karte aktivieren und synchronisieren.

 

 

 

 

 

 

 

Dazu muss man im Kartenleser mit eingelegter Karte eine TAN erzeugen und den sogenannten ATC (Application Transaction Counter) ablesen. Dabei handelt es sich um einen Zähler für die Zahl der erzeugten TANs (startet vermutlich bei 1).

 

 

 

 

 

 

 

Wenn beide Zahlen korrekt eingetragen sind, dann ist die Karte aktiviert.

Schritt 4

Nun war nur noch das Konto umzustellen. Leider hat hier der Text http://wiki.matrica.com/index.php/ChipTAN_USB_Verfahren nicht weit geholfen, da die Einstellmöglichkeit für das Verfahren nicht auftauchte.

Eine Mail an den Matrica-Support hat dann die Lösung gebracht, u.a. einen Link auf http://wiki.matrica.com/index.php/Bankzugang_ersetzen_Konto_beibehalten . Nach dieser Anleitung konnte ich dann mein Konto umstellen.
Noch eine Anmerkung zum Matrica-Support. Die Mail mit der Anleitung kam um 20:28h, meine Anfrage hatte ich um 19:49h gestellt, nachdem mich die Haspa aus ihrer Telefon-Warteschlange geworfen hatte. Der Matrica-Service ist wirklich nicht zu schlagen.

 

Hinweis

Bei der Kontoführung wir jeweils einmalig die PIN benötigt, die auch auf der Internet-Seite gilt. Die Geldautomaten-PIN spielt hier nirgends eine Rolle. Man kann die Karte und damit die TAN-Erzeugung zusätzlich mit einer PIN für den Kartenleser sichern, das ist aber nicht vorgegeben und auch nur spärlich erwähnt.

 

Nachtrag Ostern 2019

Die Haspa will ihre Kunden geistig fit halten. Von daher war über Ostern die nächste Umstellung fällig. Die Haspa hat anscheinend wieder vom eigenen Rechenzentrum zum Rechenzentrum des Sparkassenverbundes gewechselt. Ich meine zu erinnern, dass die Haspa schon mehrfach Hin und Her gewechselt hat.

Jedenfalls ist jetzt wieder eine Änderung der Kontoeinstellungen fällig gewesen. Es wurden mindestens zwei Parameter verändert :

  • die HBCI-Adresse ist jetzt: https://banking-hh7.s-fints-pt-hh.de/fints30
  • die Benutzerkennung nennt die Haspa jetzt Anmeldename und ergänzt dazu die Kontonummer um eine Zeichenkette, die vom TAN-Verfahren abhängt. Wer nur ein TAN-Verfahren nutzt, der behält die Kontonummer als Anmeldenamen.

Bevor man irgendwelche Änderungen an Moneyplex vornimmt, bietet es sich an eine Aktualisierung durchzuführen. Außerdem musste ich meine Chip-Karte auf der Haspa-Seite neu aktivieren.

Ich habe dann mehrfach versucht die Änderungen nur bei Moneyplex unter Stammdaten -> Bankzugänge zu ändern. Hatte dann aber immer Fehlermeldungen beim Abrufen der Kontodaten. Daher habe ich dann das Verfahren aus http://wiki.matrica.com/index.php/Bankzugang_ersetzen_Konto_beibehalten benutzt und die Kontoverbindung erneut neu eingerichtet.

Das hat dann funktioniert, wobei die TAN-Erstellung auf manuell stand und von mir erst auf ChipTAN-USB geändert werden musste.

Der folgende Screenshot zeigt die aktuellen Einstellungen:

 

 

 

 

 

Auf die Kontonummer folgt hier ein c (für chipTAN) und eine vierstellige Ziffernkette, die bei mir mit einer 0 beginnt.

 

Nachtrag vom 17.09.2019

Nun hat auch die HASPA PSD2 scharf geschaltet. Mein Moneyplex 2018 hat dann leider so nicht mehr funktioniert. Eine Weile habe ich überlegt wieder auf Papierbelege zu setzen, dann habe ich aber doch auf die Matrica-Seiten geschaut.

Dort (http://wiki.matrica.com/index.php/PSD2_mit_älteren_Versionen_von_moneyplex) ist beschrieben, dass man ein Update auf Moneplex 20 benötigt, was ich mir auch sofort bestellt habe. Aktuelle hilft mir das aber nicht weiter, es wird ein paar Tage dauern bis ich die neue Lizenz habe. Als besonderen Service bietet Matrica auf seiner Seite aber einen freien Schlüssel an, der bis November gültig ist.

Mit folgenden Schritten bin ich also wieder online:

  • Info -> Benutzer die Seriennummer von der Matrica-Seite eingeben
  • Der Aufforderung zum Update folgen
  • Moneyplex neu starten, es ist jetzt Version 20.0 Beta.
  • Dann den Bankzugang prüfen, bei mir hat sich keine Veränderung ergeben gegenüber dem vorherigen Screenshot

Laut Anleitung soll man den Bankzugang prüfen:

  • Stammdaten
  • Bankzugänge
  • Hamburger Sparkasse
  • rechte Maustaste -> Bankparameter aktualisieren

Wichtig ist, dass folgende Einstellungen zu finden sind:

  • TAN-Verfahren: 912 – chipTAN-USB
  • TAN-Medium: Sparkassen-Card (Debitkarte)
  • bei Optionen anzeigen vor dem Ausführen würde ich das Häkchen entfernen.

Danach kann man loslegen, aber nur wenn die Kontokarte im USB-Lesegerät steckt. Das ist jetzt zukünftig eine furchtbare Klickerei, vor allem wenn man das Häkchen nicht entfernt hat, aber es funktioniert.

 

Meine Ausgabe von dmesg war unbrauchbar geworden, da hier nur noch Zeilen der Art:

 [38929.065531] [UFW BLOCK] IN=enp1s0 OUT= MAC=01:00:5e:00:00:01:00:24:c0:ff:ee:38:08:00 SRC=192.168.1.14 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0x00 TTL=1 ID=0 DF PROTO=2

zu finden waren.

Das sind abgelehnte Multicast-Pakete von meinem SAT>IP Receiver. An der Konsole habe ich eingegeben:

sudo ufw allow in proto udp to 224.0.0.0/4
sudo ufw allow in proto udp from 224.0.0.0/4

und dann die Datei /etc/ufw/before.rules  am Ende, vor der COMMIT-Zeile,  etwas ergänzt:

# allow IGMP
-A ufw-before-input -p igmp -d 224.0.0.0/4 -j ACCEPT
-A ufw-before-output -p igmp -d 224.0.0.0/4 -j ACCEPT

# don't delete the 'COMMIT' line or these rules won't be processed
COMMIT

Seit dem Neustart von UFW bleiben die Meldungen aus.

 

Schulen arbeiten meist mit Proxy-Servern. Einerseits um die Internetverbindung etwas schonen zu können, aber auch um die Internetzugriffe zu filtern.

In der Regel will man dafür aber nicht jeden Browser per Hand konfigurieren müssen. Daher gibt es Mechanismen, um die Konfigurationseinstellungen automatisch vornehmen zu können.

Dazu dient in der Regel eine Datei mit dem Namen wpad.dat (einige proprietäte Systeme erwarten den Namen proxy.pac).

Die Datei hat bei unserem IServ folgenden Inhalt:

function FindProxyForURL(url, host)
 {
  if (
   isPlainHostName(host)
   || dnsDomainIs(host, "local")
   || dnsDomainIs(host, "localhost")
   || dnsDomainIs(host, "schule-rlw.de")
   || isInNet(host, "127.0.0.1", "255.0.0.0")
   || isInNet(host, "10.0.0.0", "255.0.0.0")
  ) {
    return "DIRECT";
  } else {
   return "PROXY 172.27.16.2:3128"
  }
 }

Diese Datei kann man dem Client auf folgende Arten zukommen lassen:

1. Per DHCP

In der Konfigurationsdatei DES DHCP-Servers müssen sich die folgenden Zeilen finden:

option proxy-config code 252 = text;
option proxy-config "http://schule-rlw.de/wpad.dat";

Bei TFK-Boxen ist das im Schulrouter Plus unter Dienste -> DHCP-Server zu finden, dort erfolgt der Eintrag in das große Textfenster.

Der Bezeichner, hier proxy-config, ist frei wählbar, muss nur in beiden Zeilen gleich sein. Wesentlich ist die Code-Nummer.

2. Per DNS

Viele Systeme sind in der Lage Autokonfiguration aktiv zu suchen. Dazu rufen sie die URL http://wpad/wpad.dat auf. Es muss also nur ein entsprecchender Eintrag im Nameserver vorhanden sein und die wpad.dat im Wurzelverzeichnis des Webservers liegen. Als Port kommt übrigens nur 80 in Frage, ein Zugriff per https ist nicht konfigurierbar.

 

3. mozilla.cfg

Hat man Zugriff auf eine zentrale Konfigurationsdatei für den Mozilla firefox, so kann man hier die folgenden zeilen eintragen:

pref("network.proxy.autoconfig_url", "http://schule-rlw.de/wpad.dat");
pref("network.proxy.type",2);

Damit wird die automatische Konfiguration aktiviert und gleichzeitig auch der Pfad zur Konfigurationsdatei angegeben.

Hier nun eine verbesserte Version des Bootstrap Carousels. Diese Version zeigt alle Bilder an, die in den Seiten-Eigenschaften definiert sind. Zusätzlich werden die Metainformation des jeweiligen Bildes dargestellt. Ich habe mich dabei an der Vorlage unter Blog Teamgeist-Medien orientiert.

 lib.field_headerimage = COA

 lib.field_headerimage {
  wrap (
     <div id="skiplink">
       <a class="skip" title="Direkt zur Navigation springen" href="#navigation">Zur Navigation springen</a><br>
       <a class="skip" title="Direkt zum Content springen" href="#content">Zum Content springen</a>
     </div>
     <div id="blogo">
        <a href="/"><img src="fileadmin/user_upload/Logo_trans.png" /></a>
     </div>
     <div id="hslider" class="carousel slide carousel-fade" data-ride="carousel"  data-interval="5000">|</div>
  )
  #Hier hole ich die Bilder aus den Seiteneigenschaften(Ressourcen/Media) um die Navigation zu erstellen.
  10 = FILES
  10 {
    stdWrap.wrap = <ol class="carousel-indicators">|</ol>
    references {
      data = levelmedia:-1, slide
      treatIdAsReference = 1
    }
    renderObj = TEXT
    renderObj {
      wrap = <li data-target="#hslider" data-slide-to="|" class="active"></li>|*|<li data-target="#hslider" data-slide-to="|"></li>
      value = {register:FILE_NUM_CURRENT}
      insertData = 1
    } #Ende renderObj
  } #Ende 10

  #Hier nochmal das gleiche Spiel nur mit Ausgabe der Bilder
  20 = FILES
  20 {
    stdWrap.wrap = <div class="carousel-inner">|</div>
    references {
      data = levelmedia:-1, slide
      treatIdAsReference = 1
    }
    renderObj = COA
    renderObj {
      wrap = <div class="item active">|</div>|*|<div class="item">|</div>
      3 = IMAGE
      3 {
        stdWrap.wrap = |
        stdWrap.required = 1
        file.import.data = file:current:originalUid
        # Setze den Link der im Bild eingestellt ist um das Bild
        stdWrap.typolink.parameter.data = file:current:link
        altText.data = file:current:alternative
        titleText.data = file:current:alternative
      } #Ende 3
      # Hier Titel und Beschreibung für das Bild, wird auch vom Link umgeben.
      6 = COA
      6 {
        # alles nur, wenn Titel gesetzt ist
        if.isTrue.data = file:current:title
        wrap = <div class="carousel-caption">|</div>
        stdWrap.required = 1
        stdWrap.typolink.parameter.data = file:current:link
        4 = TEXT
        4.wrap = <h3>|</h3>
        4.data = file:current:title
         
        8 = TEXT
        8.wrap = <p>|</p>
        8.data = file:current:description 

      } #Ende 6
    } #Ende renderObj
  } #Ende 20
} #Ende headerimage

Letztendlich wird hier ein Carousel genau nach Beschreibung aufgebaut. Im Wrap ein paar vorbereitende Zeilen (inclusive überlagertem Logo) und dann der Kopf des Carousels mit der Geschwindigkeitsangabe und der Klasse zum Starten.

Danach wird dann unter 10 der Carousel-Indicator aufgebaut, dabei geht Typoscript durch alle Bilder. Wenn man den Indicator nicht haben möchte, dann kann man den ganzen 10er Block einfach weglassen.

Anschließend werden unter 20 die Bilder eingebunden und ggf. mit den Metadaten versehen.

Veröffentlicht unter typo3.

Für ein aktuelle Projekt brauchte ich einen Bilder-Slider im Header. Meine sonstigen Slider sind eher als Content-Elemente gedacht. Daher habe ich mich mit dem Bootstrap Carousel beschäftigt.

Der Slider soll mit dem Bildern aus der Seiteneigenschaft Resourcen arbeiten. Zur Vereinfachung gehe ich einfach davon aus, dass er die ersten drei Bilder benutzt. Bei Gelegenheit muss ich mir dann auch einmal Gedanken über eine Schleifenstruktur durch die vorhandenen Bilder machen.

Mit einer festen Zahl ist die Lösung recht einfach:

 lib.field_headerimage = COA
   lib.field_headerimage.10 = TEXT
   lib.field_headerimage.10.value (
     <div id="skiplink">
     <a class="skip" title="Direkt zur Navigation springen" href="#navigation">Zur Navigation springen</a><br>
     <a class="skip" title="Direkt zum Content springen" href="#content">Zum Content springen</a>
     </div>

    <div id="blogo">
     <a href="/"><img src="fileadmin/user_upload/Logo_trans.png" /></a>
    </div>
    <div id="hslider" class="carousel slide carousel-fade">
    <div class="carousel-inner">
   )

   lib.field_headerimage.20 = IMG_RESOURCE
   lib.field_headerimage.20 {
    file.import.data = levelmedia:2, slide
    file.treatIdAsReference = 1
    file.import.listNum = 0
    stdWrap.wrap = <div class='item active'><a href='/'><img src='|' style='width: 100%;' /></a></div>
   }

   lib.field_headerimage.30 = IMG_RESOURCE
   lib.field_headerimage.30 {
     file.import.data = levelmedia:2, slide
     file.treatIdAsReference = 1
     file.import.listNum = 1
     stdWrap.wrap = <div class='item'><a href='/'><img src='|' style='width: 100%;' /></a></div>
   }

   lib.field_headerimage.40 < lib.field_headerimage.30 
   lib.field_headerimage.40.file.import.listNum = 2
 
   lib.field_headerimage.90 = TEXT
   lib.field_headerimage.90 {
   value = {$styles.content.hspeed}
   wrap (
     </div></div>
     <script type='text/javascript'>$(document).ready(function(){
     $("#hslider").carousel({interval: |});
    });</script>
  )
}

Im ersten Textbereich werden ein paar Standars-Zeilen generiert und dann der Kopf des Carousels definiert. Über das Javascript im letzten Block wird das Carousel aktiviert. Grundsätzlich kann man das Carousel über Javascript oder folgenden Datenblock aktivieren:

<div id="hslider" class="carousel slide carousel-fade" data-ride="carousel" data-interval="5000">

Ich habe die Version per Javascript benutzt, einfach weil sich das aus meiner Vorlage so ergab und mir nicht klar war, ob das auch mit dem Fade funktioniert. Bei Gelegenheit werde ich aber auf die andere Variante ohne Javascript umstellen.

Normalerweise scrollen die Bilder, mit dem Fade-Effekt kommt es zu einer weicheren Überblendung.

 

Veröffentlicht unter typo3.

Für meine Typo3-Erweiterung nettgrids habe ich ein Accordion-Element (Bootstrap Collapse) erstellt. Für ein Projekte wollte ich jetzt erreichen, dass über einen Link jeweils der passende Tab geöffnet wird.

Nach etwas Experimentieren mit Anregung von https://stackoverflow.com/questions/22254248/bootstrap-3-expand-accordion-from-url#answer-33444574 bin ich zu folgendem Javascript gekommen:

<script type="text/javascript"> $("a").click(function () {     
  function show_tab(){
   if(location.hash != null && location.hash != "")
   {         $('.collapse').removeClass('in');
             $(location.hash + '.collapse').collapse('show');     
   }
    }
    window.setTimeout(show_tab, 100);
  }); 
</script>

Das Script kann man einfach in ein HTML-Element vor dem Accordion packen.

Im vorliegenden Listing wird die Javascript-Funktion gestartet, wenn auf einen Link auf der Seite geklickt wird. Man könnte es auch an andere Ereignisse koppeln.

In der Funktion show_tab wird überprüft, ob ein Anker-Links vorhanden ist. Wenn ja, dann wird der aktuelle Tab geschlossen und der Zieltab geöffnet. Um die Funktion herum liegt eine Funktion zur Verzögerung. Ohne Verzögerung wäre der neun Link mit dem Anker-Ziel noch aktuell und der Aufruf käme zu früh. Die Verzögerung ist hier auf 0,1 Sekunden eingestellt.

Veröffentlicht unter typo3.