Azure Functions im Docker Container
Im vergangenen Jahr habe ich zusammen mit meinen Arbeitskollegen Thomas und Robert immer mal wieder über Azure Functions berichtet. Diese haben wir immer über Microsoft Azure betrieben und vorgeführt, da die Integration zwischen diesen beiden Produkten hervorragend ist. Damit ist die Funktionalität aber auch auf den Servern von Microsoft vorhanden und technisch weltweit abruf- und verwendbar. Ich habe dann mal geschaut, wie man vielleicht eine Azure Function auch ohne Microsoft Azure betreiben kann und bin dann bei einem Docker-Container hängen geblieben. Bei Docker handelt es sich um eine Software, welche die Bereitstellung einer Anwendung vereinfachen möchte. Hierzu werden Container verwendet, welche bereits alle notwendigen Pakete beinhalten und daher leicht in Form von Dateien transportiert und installiert werden können. Als Basis dient hierbei ein Image, welches alle nötigen Komponenten beinhaltet und aus dem dann später ein Container erstellt werden kann. Ich möchte jetzt einmal aufzeigen, wie wir mit wenig Aufwand ein Azure Function Projekt in einem Docker Container laufen lassen können, so dass wir dies auch ohne Probleme auf den eigenen Servern laufen lassen können.
Zunächst öffnen wir Visual Studio und legen eine neues Azure Functions Projekt an.
Mail vom AWS IoT Button senden in C#
Ich habe ja bereits in einem meiner letzten Beiträge gezeigt, wie ihr euch euren AWS IoT Button einrichten könnt. Ebenso habe ich euch beispielhaft gezeigt, wie ihr eine vorgefertigte NodeJS Lambda-Funktion zum Senden einer eMail-Nachricht als Standardfunktion festlegen könnt, welche dann beim Drücken des Buttons ausgeführt wird. In dem heutigen Beitrag möchte ich euch nun zeigen, wie ihr diese Funktion selbst schreiben könnt und zwar in C# mit der Hilfe von Visual Studio.
AWS IoT Button einrichten
Die meisten von euch haben bestimmt schon einmal von den Dash-Buttons von Amazon gehört. Dabei handelt es sich um kleine Buttons, welche direkt eine Bestellung bei Amazon für ein bestimmtes Produkt durchführen können, welches ihr über eine App konfigurieren könnt. Dabei ist man jedoch sehr limitiert und es stehen nur ein paar Produkte zur Auswahl und jeder Button unterstützt auch nur eine von Amazon definierte Produktpalette. Aber neben diesen Dash-Buttons gibt es auch noch den AWS IoT Button, welcher (frei) programmierbar ist. Beim Drücken des Buttons wird eine AWS Lambda Funktion getriggert, welche dann beliebige Aufgaben übernehmen kann. Der Button unterscheidet auch noch, ob der Button einmal, zweimal oder einmal lang gedrückt wurde, so dass man technisch drei verschiedene Aktionen durchführen kann. In diesem Beitrag möchte ich euch nun aufzeigen, wie man seinen AWS IoT Button einrichten kann.
Alexa-Skill über VSTS auf AWS veröffentlichen
Der eine oder andere wird es ja bereits sicherlich gemerkt haben, aber ich beschäftige mich in letzter Zeit immer öfters mit der Entwicklung von Skills für Alexa. In diesem Beitrag möchte ich nun zeigen, wie man VSTS als Code-Verwaltung verwenden kann und anschließend automatisch die Lambda-Funktion auf AWS veröffentlicht werden kann. Zwar gibt es ja die AWS Tools für Visual Studio, welche das Publishen direkt aus Visual Studio ermöglichen, aber trotzdem ist so eine automatische Build-Pipeline auch für Alexa-Skills interessant.