Social-Networks:
Facebook
Instagram
Tumblr

Blog: Latest Entries (15):


Modules und der Composer-Autoloader

Man kann nicht nur über die composer.json den Autoloader befüllen. Wenn man z.B. Module hat die nicht über den Composer installiert werden sondern aus einem Verzeichnis geladen werden, müsste man die Einträge per Hand vornehmen, was aber nicht wirklich ideal ist.


$autoloader = require_once("../vendor/autoload.php");

foreach(ModuleFactory->getModuleList("modules/") as $module){
if(is_dir($module->getPath() . "/deploy/classes")){
$autoloader->addPsr4($module->getName()."\", $module->getPath() . "/deploy/classes");
}
}


Damit kann schnell und einfach alle Klassen des Modules hinzufügen und muss keinen eigenen ClassLoader schreiben.

Es ist natürlich langsamer als die über "dump-autoload" angelegten Mappings, aber dafür auch sehr viel flexibler.

AVM DVB-C Repeater als DVB-T Ersatz

DVB-T wird abgeschaltet. Das ist nicht schön, weil doch viele es nutzen. Nicht dass es besonders gut funktioniert hätte oder eine gute Bildqualität geliefert hätte. Viele hatten doch eher öfters Empfangsprobleme, wenn die Wände mal stabiler waren. Aber es war doch besser als Kabel für DVB-C oder DVB-S durch die Wohnung zu verlegen. Gerade wenn man zur Miete wohnt, kann man nicht vernünftig in jeden Raum so ein Kabel legen.

DVB-T2 ist an sich keine alternative, weil hier für die privaten Sender eine monatliche Gebühr fällig wird, was
sich wohl im Jahr auf so 70 Euro aufsummieren wird. Meiner Erfahrung nach setzen die wenigstens Haushalte rein auf DVB-T und es sind zu meist nur 2. oder 3. Geräte, die keinen direkten anderen Anschluss finden, die über DVB-T betrieben werden.

Bei mir war es ein DBV-T Stick an dem PC meiner Frau, der in paar Monaten nutzlos sein würde. Ein Kabel für DVB-C oder überhaupt ein weiteres Kabel dahin zu legen ist sehr suboptimal. LAN geht über das Stromkabel und ansonsten wird für alles so weit wie möglich nur WLAN verwendet. Nur im Arbeitszimmer intern gibt es richtiges LAN mit einem Switch und vielen Kabeln.

Ich kam dann auch die Idee das TV-Signal zu streamen. Es gibt mehrere fertige Lösungen dafür, so dass ich keinen Streaming Server selbst zusammen bauen musste. Die scheinbar beste Lösung kam von AVM. Der AVM FRITZ!WLAN Repeater DVB-C kann zwei Streams liefern und integriert sich direkt in das WLAN als Repeater so dass man ihn nur an die Steckdose stecken muss das Kabel für das TV-Signal verbinden muss. Ein T-Adapter ist auch gleich dabei.

bbcode-image

bbcode-image

bbcode-image


Also so einen bestellt. Die Installation ging sehr einfach. Hardware war innerhalb von 2 Minuten installiert.

bbcode-image


Dann mit dem WLAN des Repeater verbunden und http://fritz.repeater aufgerufen.

bbcode-image


Über das Menü kann man das Gerät dann in das vorhandene WLAN integrieren (man könnte auch ein LAN-Kabel verwenden oder ein weiteres WLAN nur damit einrichten).
Dann lief der Sendersuchlauf und kurz darauf waren alle Sender gefunden.

Dann folgte der komplexe Teil. Nämlich den Stream zu den Geräten zu bekommen. In der Senderübersicht des Gerätes kann man sich eine Senderliste als m3u-Datei erzeugen lassen und diese im VLC laden. Der listet dann alle Sender auf und man kann die jeweiligen Streams öffnen. Funktionierte gleich sehr gut und stabil. Die Qualität ist auf jeden Fall besser als DVB-T.

bbcode-image


Im Schlafzimmer steht noch ein TV-Gerät, das zwar über DVB-C angeschlossen war, aber dort immer Aussetzer im Stream hatte während die Streams über den Amazon Fire TV Stick problemlos liefen. Apps für TV-Streams der Pro7/Sat.1 Sender gibt es, aber die ganzen anderen Sender würden fehlen. VLC für den Fire Stick kann zwar auf alle möglichen Netzwerk und NAS Freigaben zugreifen, aber nichts mit der m3u-Datei anfangen.

bbcode-image


AVM bietet die FritzAppTV an, die aber erstmal nur über den Google Play-Store und iTunes zu bekommen ist. Aber zum Glück gibt es die APK direkt von AVM auch direkt als Download auf dieser Seite.

Jetzt muss man diese APK nur noch auf dem Fire TV Stick installieren. Das ist zum Glück auch sehr einfach. Bei den Einstellungen des Sticks die beiden Optionen in den Entwicklereinstellungen aktivieren. Dann habe ich mit Hilfe dieser Anleitung und der dort angebotenen Programme zum Download angebotenen Programme (Bei der Installation auf Addware achten! und es wird dann nur eine FTV.zip Datei "installiert") die APK auf dem Stick installiert. Die App tauchte dort direkt auf und lies sich ohne Probleme starten.

bbcode-image


bbcode-image


Streams laufen gut und auch hier stimmt die Bildqualität.

Damit kann DVB-T jetzt abgeschaltet werden ohne dass es uns noch irgendwie interessieren würde und als Nebeneffekt ist die Bildqualität und die Stabilität der Streams sehr viel besser geworden.

Postfix für Weiterleitungen

Meine meisten Email-Adressen sind ja nur Weiterleitungen. Beim Umzug meiner Domains auf meinen Server habe ich auch erst einmal alle umgezogen, die keine Email-Adressen haben. Das waren ein paar, aber dann war ich schnell bei denen mit Email-Adressen.
Damit ich nun auch hier einen sehr weichen Umzug hinbekomme, waren nun alle dran, die nur Weiterleitungen hatten.

bbcode-image


Weiterleitungen sind mit Postfix wirklich einfach umgesetzt. Die DNS Einträge hat Netcup bei mir immer gleich schon mit eingerichtet, so dass ich dort nichts weiter machen musste.

Zu erst muss natürlich Postfix instaliert werden.


sudo apt-get install postfix


Danach einfach die Config-Datei von Postfix editieren. Die Datei findet man jeden Falls unter Ubuntu
hier:


/etc/postfix/main.cf


Ans Ende der Datei wird etwas eingefügt:


virtual_alias_domains = mydomain.com, myotherdomain.com
virtual_alias_maps = hash:/etc/postfix/virtual.cf


In die virtual.cf kommen die Weiterleitungen:


test@mydomian.com redirect@othermailprovider.com
test2@mydomian.com redirect@othermailprovider.com


und dann holgt das typische Neuladen der Dienste


postmap /etc/postfix/virtual.cf
sudo service postfix reload


ich hatte mich an diesem Artikel orientiert http://www.binarytides.com/postfix-mail-forwarding-debian/


RXTXComm in Eclipse

Um RXTXComm für Java in Eclipse verwenden zu können muss man auch die DLLs Eclipse bekannt machen.
Im Buildpath muss man die JAR finden und dann ausklappen. Bei der Native Library Location muss man Edit wählen.

bbcode-image


Ich hatte die DLLs einfach mit im lib-Folder abgelegt.

bbcode-image


Danach lief auch die Suche von SMSlib.

bbcode-image


Leider funktioniert mein alter Huawei E1750 unter Windows 10 wohl nicht mehr so einfach. Ich habe mir mal den 4G Systems XS Stick P10 bestellt und hoffe, dass dieser gleich und ohne Probleme funktioniert.

Und dann mal die Beispiele zum SMS-Empfang von SMSlib testen.

Rewrite meines PHP-Frameworks

Zum 10. Geburtstag meines PHP-Frameworks wird sich da viel ändern und es damit dann wieder etwas mehr zu anderen Frameworks aufschließen können.

Mein eigener Class-Loader fliegt raus und es wird noch der ClassLoader vom Composer verwendet. Meiner kann zwar auch mit PSR4 umgehen, aber nach dem Umstieg muss ich dann auch alles darauf umstellen und habe keine Ausrede mehr, weil die Kompatibilität weg fällt.

Es gibt nun ein public-Verzeichnis so dass alle Config-Dateien und Classes außerhalb des Bereiches liegen, auf dem Benutzer zugreifen können. Das sorgt für mehr Sicherheit, macht das Laden von CSS und Bildern aus dem Theme-Verzeichnis aber komplizierter. Ich überlege hier auf Assetic umzusteigen. Momentan läuft meine Lösung aber sehr gut.

Und das Beste und wichtigste was aber auch am meisten Arbeit machen wird (darum habe ich ganz viele alte Module erst einmal gelöscht und lasse auch die alten PHP-Pages drin) ist, dass Module-Pages nun wirklich mit Controller und Twig-Template gerendert werden. Die Twig-Templates könenn vom Theme und von eigenes Templates in der Instance überschrieben werden und so kann man nun endlich das Aussehen der Module leicht und schnell anpassen.
Smarty war schon länger drin, wurde aber nie benutzt und ist jetzt raus geflogen.

bbcode-image


Mein erstes Projekt damit wird sein, die Zeiterfassung für Kunden-Projekte neu zu schreiben und für alle brauchbar zu machen. Das wird wohl am Ende nur 1-2 Tage dauern. Also nichts im Vergleich zum Umbau des Frameworks.

King Pigeon RTU5023 Anleitung

Das King Pigeon RTU5023 ist ein Gerät zum Messen von Temperatur und Luftfeuchtigkeit. Der Vorteil ist, dass das Gerät diese Messungen dann auch über das Handy-Netz (Quad-Band) per SMS verschicken kann. Mit dem sehr stabilen Gehäuse und dem Anschluss für den Senor kann man damit also ohne Probleme Transporte mit LKWs oder Zügen von einem Standort aus überwachen. Mit einer SMS-Flat entstehen auch kaum zusätzliche Kosten. Die SIM-Karte darf keinen PIN haben, da man an dem Gerät keine PIN eingeben kann und die Programmierung rein über Commands erfolgt, die man dem Gerät per SMS schickt. Antworten tut das Gerät auch über SMS.

bbcode-image


Ich habe das Gerät von der Switch GmbH bekommen, um mal heraus zu finden wie es funktioniert und wie man es in vorhandene Systeme integrieren kann.

Das Problem ist, erst einmal etwas über das Gerät heraus zu finden. Bei chinesischen Geräten ist das ja immer das Problem, dass man zwar viele Seiten findet wo man das Gerät kaufen kann, aber kaum Seiten vom Hersteller oder mit Anleitungen. Das ist auch hier so. Die Infos zu den SMS Commands ist schwer zu finden und auch nicht gerade übersichtlich oder gut erklärt.

ABER es gibt einen Vorteil und dieser ist die Android-App im Google Play-Store. Diese macht an sich nichts andere als Eingaben in die App per SMS zu verschicken. Antworten kommen per SMS und werden dort wieder eingetragen.

bbcode-image


Also einfach das Gerät anschließen und die App installieren. Als erstes muss man das Gerät anmelden. Nummer eingeben, das default Passwort ist 1234 und den Rest nach belieben ausfüllen und speichern.

bbcode-image


Ich wurde erst einmal mit SMS voll gespamt. Meistens dass die Report-Time auf 999 stehen würde. Also diese erst einmal auf 1h gestellt und schon hörte es auf. Man kann sich stündlich Reports der Messungen zusenden lassen oder Alarm SMS, falls die Tempartur- oder Luftfeuchtigkeit-Range über oder unter schritten wird.

bbcode-image


Das Tolle ist, dass die SMS natürlich auch einfach im Handy vorliegen. Da kann man dann anhand der Zuordnungen von Befehl und Antwort sich die meistens Commands einfach so erarbeiten.


1234DT001


Das setzt die Report-Time auf 1h.

bbcode-image


Als nächstes geht es nun darum SMS zu empfangen und deren Inhalt auszuwerten. Davon ist wohl das Empfangen das Problem, wobei ich noch einen UMTS-Stick rumliegen habe und es da wohl entsprechende Java-Libs gibt.
Damit kann man sich dann ein SMS-Gate bauen und die eingehenden SMS parsen und weiterleiten. Aber das kommt dann nächste Woche.

Microsoft Surface und Micro SD Karte

Eine der Eigenschaften des Microsoft Surface Pro 4 mit Core m3 CPU ist der doch sehr geringe Speicher in Form einer 128GB SSD. Im Vergleich zu den Speichergrößen von Android Tablet ist 128GB schon wirklich groß und scheint erst einmal ausreichend.
Der Unterschied zu einem Android-Tablet ist aber, dass man mit dem Surface richtig arbeitet und entsprechend viele und auch komplexe Programme installiert. Allein die Grundaustattung mit XAMP, Java, IDE, GITKraken und vielen kleinen Tools spreng leicht den Rahmen an dem was auf einem Android Tablet vom Benutzer an Daten und Apps zu finden ist. Beim Surface kommen dann noch die Daten des Benutzers hinzu.

Mit paar Bildern in RAW+JPEG und paar MP4s in FullHD von der DSLR wäre der noch freie Speicher der 128GB sehr schnell voll. Musik, Videos, ISOs oder VMs sind zu viel für die 128GB.

bbcode-image


Zum Glück kann man eine Micro SD-Karte nachrüsten. Die Geschwindigkeit einer normalen SD-Karte ist natürlich nicht vergleichbar mit der SSD, aber für einfaches ablegen von Daten reicht eine einfache SD-Karte. Für etwas über 10 Euro bekommt man 64GB. Für mehr Geld würde man auch eine schnelle 128GB Karte bekommen, die dann auch schnell genug sind, um mal ein portables Programm darauf ablegen zu können ohne ewig lange Ladezeiten riskieren zu müssen.

bbcode-image

Der Surface Pen

Ich hatte den Surface Pen als etwas Bezeichnet was ein nettes Gimmick wäre, aber auch nicht so viel mehr.
Nun habe ich ihn zusammen mit FreshPaint doch einige Stunden verwendet und muss sagen, dass er für Zeichnungen doch ganz gut geeignet ist. Nicht wirklich zum Malen, aber für einfache kleine Skizzen-Zeichnungen ist es ein tollen Gerät.

Kann man damit ultra genau zeichnen? Nein. Sind die Druckstufen gut zu kontrollieren und genau zu verwenden? Nein.
Es gibt verschiedene Spitzen, aber die habe ich genau wie bei meinem alten Wacom Intuos 3 nicht ausprobiert.

bbcode-image


Also revidiere ich ich meine Ausgabe zum Pen etwas: Für schnelle Skizzen mit den richtigen Programmen ist der Pen wirklich toll. Aber man sollte trotzdem nicht zu viel erwarten.

Beim Surface Pro 4 kann es auch mal passieren, dass man wenn man die Handfläche auf dem Display beim Zeichnen ablegt, damit doch mal einen diagonalen Strich auf das Canvas damit zeichnet. Aber mit Undo ist das Problem dann schnell wieder gelöst.


Falsches Zertifikat bei https auf eine Domain

Ich hatte eben das Problem, dass das Zertifikat auf https://www.superseriousllama.de/ ungültig sein und eigentlich für https://www.mp4togif.com ausgestellt wurde.


SSL_ERROR_BAD_CERT_DOMAIN


Das Problem war nach längerer Suche, dass ich einfach vergessen hatte die llama-ssl.conf mit


sudo a2ensite llama-ssl


zu aktivieren.

bbcode-image


Da muss man erst einmal drauf kommen, dass dann das Zertifikat einer anderen Seite verwendet wird.

Bastelzeit mit 1366 Kühlern

Bald ist mal wieder Bastelzeit. CPU, Mainboard, RAM, Festplatte und Netzteil liegen breit. Heute kamen dann die Kühler an. Kühler für Socket 1366 Server-/Workstation-Mainboards zu bekommen ist nicht ganz so günstig wie für Desktop-PCs. Aber sie sind katzen-geprüft und von Supermicro. Es kann also nicht so viel schief gehen und mit BeQuiet-Lüftern drauf kühlen die dann auch gut.

bbcode-image


Nur ein gutes und günstiges Gehäuse fehlt mir noch. Ich hätte gern ein Intergraph TDZ Gehäuse, aber die scheint es seit Jahren nicht mehr zu geben.

Automatisch Farb-Array erzeugen

Wählt möglichst weit aus einander liegende Farben aus der Auswahl aller Farben, wobei die Enden (Schwarz und Weiß) ausgelassen werden. Da bei wenigen Farben nur Grautöne heraus kommen, werden bei weniger als 8 Farben die Abstände zwischen den Farben geringer als möglich gewählt.


function ColorGeneratorService(){
this.generateColorList = function(neededColorCount){
var minColorsfactor = 1;
if(neededColorCount < 8){
minColorsfactor = 3;
}
var result = [];
var end = parseInt(0xFFFFFF);
var step = Math.round(end / ((neededColorCount * minColorsfactor) + 1));
for(var i = 1; i <= neededColorCount; i++){
result[result.length] = "#"+(step * (i * minColorsfactor)).toString(16);
}
return result;
};
}

Database und User schnell in MySQL

Das hier ist jetzt nicht wirklich neues oder besonderes, aber da ich es in den letzten Tagen sehr oft eingeben musste, hier mal nieder geschrieben.

bbcode-image


Eine Datenbank in MySQL erstellen, einen User anlegen und dann dem alle Rechte auf die DB geben.


CREATE DATABASE example;
CREATE USER 'exam'@'localhost' IDENTIFIED BY '3x4m';
GRANT ALL ON example.* TO 'exam'@'localhost';

https mit Let's Encrypt ganz einfach

Ich bin jetzt auch mit MP4toGIF.com auf meinen Server bei netcup umgezogen. Einer der Hauptgründe von dem Hostingpacket von 1&1 auf einen eigenen Server umzuziehen war neben den günstigeren Betriebskosten für Server und Domains auch die Möglichkeit SSL-Zertifikate von Let's Encrypt verwenden zu können. Also keine 2,99 mehr pro Domain, um https nutzen zu können.

Let's Encrypt ist auch sehr einfach zu verwenden. Hier ist eine Anleitung für Ubuntu 16.04 LTS.

Zu erst, um nicht erst in kryptische Fehler zu laufen, aktivieren wir SSL für den Apache.


sudo a2enmod ssl


bbcode-image


Dann wird der Let's Encrypt Client installiert.


sudo apt-get update
sudo apt-get install python-letsencrypt-apache


bbcode-image


Nun steht der Client zur Verfügung und wir können uns ein Zertifikat erstellen. Das geht auch mit nur einem Befehl.


sudo letsencrypt --apache -d mp4togif.com -d www.mp4togif.com


Dann startet der Client und man muss den Anweisungen folgen. Bei mir brach er mitten drin ab weil 'sudo apache2ctl configtest'
einen Fehler meldete, der wohl auf das bei mir noch nicht aktive SSL-Module zurück zu führen war.

ABER es ist sehr einfach den Rest per Hand einzurichten.

Zuerst die conf-Datei in sites-available mit dem Zusatz "-ssl" doppeln. Also zum Beispiel mp4togif.conf in mp4togif-ssl.conf doppel.
Dann in der neuen Datei den Port von 80 auf 443 ändern und dies hier einfügen.


Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/mp4togif.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mp4togif.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/mp4togif.com/fullchain.pem


Nun nur die site aktivieren mit


sudo a2ensite mp4togif-ssl


und den Apache neuladen


sudo service apache2 reload


und schon sind wir fertig und https sollte funktionieren.

bbcode-image

Older posts: