In diesem Artikel möchte ich euch zeigen, wie ihr in eurem Azure Projekt eine Mail über SendGrid verschickt. SendGrid ist ein cloudbasierter Mailprovider, der mit dem Azure Portal verbunden werden kann. SendGrid ist grundsätzlich kein kostenloses Produkt. Allerdings gibt es in der Kombination mit Azure ein kostenloses Abonnement, bei dem 25.000 E-Mails pro Monat verschickt werden können. Bei höheren Mailzahlen muss normal gezahlt werden.
Beginnen wir mit dem Aufsetzten der verschiedenen Bestandteile. Eine Function App besitzen wir bereits. Falls ihr mehr Informationen über das Erstellen einer Function App braucht, schaut euch den Beitrag „Azure Functions – Simple JavaScript Tutorial“ an. Uns fehlt ein SendGrid Account. Um diesen zu erstellen, erzeugen wir im Portal eine neue Ressource (siehe Abb. 1). Anschließend füllen wir die notwendigen Felder aus, wählen ein monatliches Maillimit und bestimmen damit gleichzeitig die Bezahlung. In diesem Fall entscheide ich mich für die kostenlose Variante (siehe Abb. 2).
Um SendGrid verwenden zu können, müssen wir den Account freischalten. Dazu gehen wir über Manage (im Untermenü der Ressource, siehe Abb. 3) auf die Website von SendGrid. Dort werden wir aufgefordert unseren Account über die vorher angegebene E-Mail-Adresse freizuschalten. Als letzten Schritt erstellen wir auf der SendGrid Website einen API-Key. Dieser dient der Verknüpfung zwischen SendGrid und unserer Funktion und ist vergleichbar mit dem Connectionstring einer Queue. Um einen API-Key zu erstellen, gehen wir unter Settings und wählen dort API-Key. Hier können wir unsere Keys erstellen, und verwalten. Zu beachten ist, dass der API-Key nur bei der Erstellung angezeigt wird. Im Anschluss haben wir keine Möglichkeit mehr diesen auszulesen. Sichert den Key daher gut!
Jetzt können wir unsere Function einrichten und beginnen mit der Verbindung zum SendGrid. Im Bereich Integrieren unserer Function fügen wir eine neue Ausgabe hinzu und wählen dabei SendGrid aus. Nun geben wir die Defaultwerte für den Mailversand an. Außerdem erstellen wir eine neue App-Einstellung und verwenden dazu den API-Key aus dem vorigen Teil. Nun können wir mit dem Schreiben der Funktion beginnen. Als Beispiel habe ich bereits eine kleine Function geschrieben (siehe Abb. 4), die eine Message aus einer Service Bus Queue ausliest und den Text anschließend als Mail verschickt. Wenn wir die Funktion nun testen indem wir eine Nachricht in die Service Bus Queue schicken, erhalten wir eine Mail mit den angegebenen Informationen.
Ihr habt jetzt gesehen, wie ihr eine Mail mittels SendGrid versenden könnt. Abschließend möchte ich sagen, dass bei der Arbeit das SendGrid Portal mit seinen Monitoring-Möglichkeiten sehr hilfreich war. Es kann also nicht schaden, sich diesen Bereich einmal anzusehen.