AngularJS in Enterprise Architekturen

Mittlerweile konnten wir AngularJS in mehreren Projekten einsetzen, um die Kommunikation eines (Web-)Systems mit dem Nutzer zu steuern und dabei die Geschwindigkeit und Ergonomie der Gesamtarchitektur merklich zu verbessern.

Es ist beeindruckend, wie “leichtgewichtig” AngularJS zusammen mit HTML und zum Beispiel Twitter Bootstrap (als CSS-Basis) sich als Frontend einer Webarchitektur im Geschäftsumfeld einsetzen lässt. Dabei verzichten wir nicht auf Java mit Spring MVC oder Spring Data REST auf der Serverseite.

Im Rahmen eines größeren Enterprise Portals ist es uns vielmehr in kürzester Zeit gelungen, sämtliche funktionale und nicht-funktionalte Architekturaspekte wie Login, Session Handling, Serverkommunikation und Fehlerbehandlung erfolgreich und effizient abzudecken. Das kam in der Vergangenheit zwar auch vor – aber in der Regel mit wesentlich größeren Schmerzen und Problemen. Klasse.

Von daher können wir jedem nur empfehlen, sich einmal AngularJS näher anzusehen. Gerne kommen wir auch zu Workshops zu Ihnen ins Unternehmen oder führen Onlinepräsentationen durch!

Was man noch über Fritz!Box und VoIP wissen sollte!

Nachdem wir neulich schon mal über die Fritzboxen und deren internen Kopplung mit VoIP-Geräten (beziehungsweise Fax mit T.38) geschireben haben, sollte man ergänzend hinzufügen, dass die Geräte laut Support-Aussage von AVM und eigenen Recherchen derzeit NICHT in der Lage sind, mit DTMF-Tönen wie * und # umzugehen.
Das hat natürlich harte Konsequenzen, wenn man im T-Net den Anrufbeantworter abfragen möchte oder Rufumleitungen etc. setzen will.
Hier bleibt momentan nur der Umweg über die Weboberfläche oder Telefone an den analogen Anschlüssen der Box.
Leider. Wann das Feature endlich mal implementiert wird im “SIP-Standard” der Fritz-Geräte ist noch unklar.

AngularJS wird auf dem deutschen Markt prominenter

Wir nutzen AngularJS als JavaScript-Engine für einige Kunden schon länger auf der Web-Client-Seite. AngularJS ist ein Javascript-Framework aus dem Hause Google und besticht durch seine Einfachheit und gute Übersichtlichkeit.

Unsere Homepage conserata.com beinhaltet ebenso einige AngularJS-Elemente – z.B. im Kontaktformular. Jetzt hat sich auch der Heise-Verlag im Rahmen seines Developer-Channels mit einem längeren Artikel dem Thema AngularJS gewidmet. Für alle Anfänger und Quereinsteiger ein netter Artikel. Zu finden hier: http://www.heise.de/developer/artikel/Webanwendungen-mit-AngularJS-1955101.html

Ansonsten empfiehlt es sich, der Google Plus Community beizutreten oder im IRC-Channel auf Freenode teilzunehmen. Wir sind derzeit auch dabei, einen deutschsprachigen IRC-Kanal unter freenode mit Namen #angularjs.de zu gründen.

 

Was ist eine Cloud?

Viele Kunden und Freunde fragen immer wieder “Was ist eigentlich die Cloud oder eine Cloud?”. Mit diesem kleinen Artikel möchte ich probieren, ein wenig Licht für Anfänger in das Dunkel zu bringen.

Zum einen ist der Begriff Cloud (Wolke) vielleicht etwas unverständlich ausgedrückt. Im Zusammenhang mit “Cloud Computing”, “Clouddaten” oder “Cloud Apps” wird im Regelfall lediglich beschrieben, dass ein Computer oder Rechner nicht exklusiv vom Kunden angemietet oder gekauft wird. Zusätzlich steht dieser auch nicht im eigenen Rechenzentrum bzw. Rechenzentrumsschrank oder daheim unter dem Bürotisch / im Abstellraum.

Clouddienste funktionieren so, dass ein Anbieter ein Rechenzentrum betreibt, in dem gegebenenfalls ein weiterer Dienstleister Kapazitäten anmietet. Der eigentliche Kunde bekommt nicht mit, wo er nun physisch landet. Das hat allerdings auch früher den normalen Internetnutzer schon nicht interessiert. Ob das Rechenzentrum in München, Nürnberg oder Hamburg steht war und ist völlig irrelevant. Heute stehen die Server in der Cloud dann z.B. in Amazon-Rechenzentrum, die über die Welt verteilt sind.

Auf den Servern laufen die sogenannten “Apps” – in der Regel sind dieses schlicht und ergreifen Webseiten, die heutzutage Funktionalitäten haben, die früher nur Programme auf dem lokalen Windows-PC oder dem Mac erfüllen konnten. Dank der Weiterentwicklung von Browserprogrammen wie Internet Explorer, Google Chrome oder Mozilla Firefox und der dort integrierten “Programmiersprache” JavaScript ist es jedoch für Softwareanbieter heutzutage möglich, diese Programme als bzw. über Webseiten anzubieten, ohne dass als Endkunde die Software an seinem Arbeitsplatz installiert werden muss!

Daher beschreibt der Begriff “Webapps” oder “Webmail” oder “Webspeicher” bzw. “Cloudspeicher”, “Cloudapps” die Gattung der “Programme, die auf Servern, deren Standort man nicht kennt und die im Normalfall über Webseiten aufgerufen werden”.

Über Sicherheits- und Autorisierungsmechanismen können diese Programme heute auch miteinander verknüpft werden. So ist es problemlos möglich, Google Drive um etliche Funktionalitäten für CRM, Projektmanagement etc. zu erweitern. Den Softwareanbietern sind häufig kaum inhaltliche Grenzen gesetzt.

Was ist noch charakteristisch für eine Cloud?

Nun, eine ganz wichtige Information ist: Alle Daten, die Sie in einer Cloud ablegen, sind auch NUR in der Cloud bzw. bei Ihrem Anbieter vorhanden. Das heisst im Umkehrschluß: Kündigen Sie den Vertrag (z.B. bei monatlicher Abrechnung) mit Ihrem Dienstleister, so können Sie im Normalfall danach nicht mehr auf Ihre Daten zugreifen. Eventuell ist es möglich, aus der Webapp die Daten zu exportieren, jedoch ist das nicht der Regelfall. Sie sollten also immer darüber nachdenken, ob und wann es Sinn macht, eine Software zu nutzen, die nur auf fremden Servern läuft und wann es vielleicht vorteilhafter ist, eine Software einzusetzen, die auf dem heimischen PC oder auf dem Büroserver läuft.

Ein Vorteil ist: Programme “aus der Cloud” sind betriebssystemunabhängig. Daher ist es völlig egal, ob Sie daheim Linux, Windows oder Mac OS X am heimischen PC oder Arbeitsplatz nutzen. Solange der von Ihnen genutzte Browser “aktuell” ist, sollten die Webapplikationen / Webapps auch funktionieren.

Sollten Sie schon Webapps nutzen oder bald nutzen wollen: Achten Sie mindestens auf die Seriosität des Anbieters und auf die verschlüsselte Datenübertragung mit https. Auch die Vertragsbedingungen und die groben Standorte der Server (Europa, USA, Asien, Südamerika) sind mitunter relevant. Gerne beraten wir bei conserata Sie für den geschäftlichen Einsatz und erarbeiten zusammen mit Ihnen die Cloud-Einsatz-Szenarien und App-Nutzungen.

Anbindung eines CISCO SPA112 Telefonadapters als VoIP-Client an einer Fritzbox 7270/7390 für Fax

[update, 2017] Bitte unbedingt auch die Kommentare lesen!! Zum Beispiel sollte beim Codec eher g.711a statt g.711u eingestellt werden – das ist im Screenshot leider falsch abgebildet.

Im Rahmen eines Kundenprojekts benötigten wir eine Möglichkeit, ein analoges Faxgerät über VoIP an eine Fritzbox anzubinden, da das Gerät in einem weit entfernten Raum stehen sollte, zu dem bisher keine analoge Datenleitung gelegt wurde.

Aufgrund der bestehenden Standards bietet es sich an, das Gerät via T.38 auch intern mit der FritzBox zu verbinden. Dabei fungiert die FritzBox als SIP-Proxy bzw. SIP Provider gegenüber dem Faxgerät. So muss kein SIP-Provider als Dienstleister mit Extragebühren angebunden werden. Die ganze Konfiguration ist in Minuten erledigt und auch von angstfreien Laien zu bedienen.

Man benötigt im Normalfall (unser Testsetup ist Cisco SPA112, HP Officejet 5610 AIO und FritzBox 7390) folgende Komponenten:

  • Telefonkabel mit 4poligem “RJ10”-Stecker auf beiden Seiten (Achtung, wird nicht von Cisco oder HP mitgeliefert!) Eventuell muss man diese selbst basteln oder alternativ natürlich bei uns bestellen
  • Cisco SPA112 – Box
  • Netzwerkkabel zur Anbindung der Cisco-Box an die FritzBox (alternativ geht das ganze natürlich auch mit entsprechender, zusätzlicher WLAN-Infrastruktur – dazu in einem separaten Artikel mehr)

Nun muss zuerst der SPA112-Adapter in Betrieb genommen werden. Der Adapter von Cisco hat 2 Ports für analoge Telefone oder Faxgeräte. Diese müssen nun – soll ein Faxgerät angeschlossen werden – minimal angepasst werden. Dazu sollte man sich erst einmal am Adapter anmelden. Soweit das lokale Netz mit einem DHCP-Server auf der Fritzbox betrieben wird, sollte der Adapter automatisch eine dynamische IP-Adresse zugewiesen bekommen. Diese bitte in der Fritzbox nachschlagen. Das Gerät hat sich hier als SPA112 per DHCP angemeldet und kann dementsprechend aufgefunden werden. Bei korrekter Namensauflösung klappt eventuell auch ein Zugriff über http://spa112.

Standardzugangsdaten sind Username admin und Passwort admin

cisco1

Bitte prüfen Sie, ob die Firmware schon auf dem aktuellen Stand ist. Im Regelfall ist das nicht so, da die Absatzmengen dieses Geräts in Deutschland wohl eher niedrig sind.
Aktuell ist die Firmware: 1.3.5p. Sollte Ihre Version kleiner sein – der Download der neuen Firmware-Version hilft. Die XU-Variante vom Juli 2013 beinhaltet keine SRTP-Implementierung mehr. Wer darauf verzichten möchte, kann auch diese nehmen.

Der eigentliche Firmwareupload (die BIN-Datei innerhalb des ZIP-Archivs von Cisco) findet statt über Administration > Firmware Upgrade. “Datei auswählen” anklicken, BIN-Datei auswählen, Upgrade anklicken. Nach einem Boot steht der Adapter mit der aktuellen Firmware zur Verfügung.

admin-cisco5

Nun gleich noch im Administration-Bereich das Web Access Management mal von HTTP auf HTTPS ändern. Sicher ist sicher! (Anschließend ist der Adapter nur noch per https://… erreichbar)

admin-cisco6

Wenn nun der Adapter neu gestartet wurde, können Sie sich anmelden und die Einstellungen für den 1. Port für Faxversand und -empfang konfigurieren und anpassen. Sämtliche “echten” Rufnummerninformationen werden auf der Fritzbox konfiguriert.

Im Punkt “Quick Setup” lassen sich die SIP-Zugangsdaten für den Fritzbox SIP-Proxy eintragen (Standardnamen vorausgesetzt):

Proxy: fritz.box
Display Name: <beliebiger Name>
User ID: <Benutzername des auf der Fritzbox konfigurierten IP-Telefonanschlusses>
Password: <Auf der Fritzbox konfiguriertes Passwort für den IP-Telefonanschluss>

Dial Plan kann erst einmal so bleiben. Sollte es zu Problemen bei der Durchwahl kommen, so muss eventuell mal ein Techniker diesen Ausdruck analysieren :-).

cisco2

Nun muss für Fax T.38 noch aktiviert werden. Dazu in Voice > Line 1 diesen Modus aktivieren unter “FAX Enable T.38”. Die anderen Einstellungen sind wie im Screenshot zu treffen. Bei unseren Adaptern waren das aber alles Standardeinstellungen.

cisco3

Speichern. Fertig. Nun können Sie mit dem Cisco-Adapter und einem anzuschließenden, analogen Faxgerät über Port 1 faxen machen.

Sollte Ihnen die Fritzbox-Konfiguration auch unbekannt sein – hier noch kurz in Bildern die dortige Konfiguration anhand einer Fritz!Box 7390 mit Freetz-Erweiterungen:

fritzboxcisco1 fritzcisco2 fritzcisco3 fritzcisco4

Den hier eingetragenen Benutzernamen und das gewählte Passwort benötigen Sie beim Cisco-Adapter!

fritzcisco5 Fritz-Konfiguration für VoIP-Telefonie intern