Hoe e-mail een krachtig onderdeel van uw webtoepassing te maken

Mijn favoriete populaire productiviteitstools, iDoneThis en TeamSnippets, geven me een eenvoudige manier om taken die ik elke dag met mijn teamleden heb voltooid, op te nemen en te delen. Elke dag sturen de diensten me een e-mail met de vraag wat ik vandaag heb afgerond. Vanuit mijn e-mailaccount kan ik gemakkelijk antwoorden met mijn voltooide taken zonder me aan te melden bij de website. Opmerkelijk is dat een meerderheid van mijn teamgenoten de meeste van hun website-updates voltooit door een e-mail te beantwoorden. 

U kunt ook dezelfde krachtige functionaliteit maken met opmerkingen, ontvangen van inhoud via e-mail en antwoorden inschakelen voor het maken, doorgaan en oplossen van ondersteuningskaarten. Met de Inbound Parse Webhook, van de SMTP-service van SendGrid, kunt u uw toepassingen interactief maken door reacties uit te nodigen en op gebruikers te reageren via hun e-mail. 

Met de SendGrid Parse Webhook kunt u e-mailinhoud en bijlagen van binnenkomende e-mails ontleden en de gegevens via JSON naar uw applicatie verzenden. Met de mogelijkheid kunt u het volgende bereiken, van e-mailantwoorden op uw websitetoepassing:

  • Plaats blogberichten
  • Gebruik e-mailantwoorden om uw mailinglijst of database bij te werken
  • Upload foto's en video's
  • Begin en los aanvragen voor ondersteuningstickets op

Ermee beginnen

De onderstaande instructies zijn bedoeld om de Inbound Parse Webhook lokaal beschikbaar te maken. Begin met het klonen van deze GitHub-repository en cd in zijn directory:

$ git clone https://github.com/scottmotte/sendgrid-parse-api-example.git $ cd sendgrid-parse-api-example

Stel uw legitimeringen in

$ mv .env.example .env 

Wijzig de inhoud van .env in uw SendGrid gebruikersnaam en wachtwoord

SENDGRID_USERNAME = your_sendgrid_username SENDGRID_PASSWORD = your_sendgrid_password 

Start de applicatie

$ npm installeer $ node app.js 

Als npm install niet voor u werkt, kunt u proberen het via MacPorts te installeren: 

$ sudo port npm install

Als u fouten ontvangt die erop wijzen dat u een module mist, betekent dit dat u deze moet installeren. Ik heb bijvoorbeeld een fout ontvangen app.js kan het. niet instantiëren dotenv variabele en na installatie dotenv, het loste het probleem helemaal op.

$ npm install dotenv

Stel een tunnel in

Gebruik een lokale tunnel zoals ngrok om lokaal en snel te testen in plaats van code te implementeren op een live server. 

Met Ngrok kunt u een lokale webserver veilig op internet zetten en verkeer vastleggen voor gedetailleerde inspectie en opnieuw afspelen. Downloaden, unzippen en het ngrokproces starten. Nadat u het proces hebt gestart, geeft ngrok u een unieke URL om lokaal te inspecteren. 

De onderstaande instructies zijn bedoeld om ngrok lokaal op een Mac te laten werken. Ga naar ngrok.com om een ​​lokale installatie voor andere besturingssystemen te installeren. 

$ wget https://dl.ngrok.com/darwin_amd64/ngrok.zip $ unzip ngrok.zip -d / usr / local / bin $ ngrok 3000

Stel SendGrid en MX-records in

Merk op dat dit tot 48 uur kan duren. 

Nadat uw MX-records volledig zijn gepropageerd, kunt u binnen 48 uur e-mails over productie verzenden. 

Ten eerste, nadat uw SendGrid-account is ingericht, kunt u uw SendGrid Parsing Incoming Emails-instelling instellen. Klik op het tabblad 'Ontwikkelaars' voor de link 'Inkomende e-mails parseren'. Geef uw naam op in het veld Hostnaamhostnaam (dat wil zeggen uwdomein.com) die u zou willen. Voer in het veld URL de unieke URL in die ngrok u geeft. 

Configureer een MX-record op de hostnaam die u hierboven hebt ingesteld om te wijzen naar mx.sendgrid.net. Het zou er ongeveer zo uit moeten zien als het volgende. 

Over twee dagen zullen uw MX-records volledig worden verspreid. 

Verzend een e-mail van uw persoonlijke e-mailaccount

Als u een e-mail stuurt naar [email protected],binnen een paar minuten zal de app die je gebruikt de inhoud analyseren en de inhoud aan jou leveren in JSON-formaat.

Test en speel met de API

Gefeliciteerd, je hebt een eenvoudige manier ingesteld om je e-mails efficiënt te analyseren! Nu bent u klaar om de API te verkennen en te bellen. 

Inspecteren van de inhoud van de payload

Als u alleen een snelle manier nodig hebt om de payload-inhoud van de Parse Webhook te inspecteren, kunt u RequestBin, een gratis tool, gebruiken nadat u uw MX-records hebt ingesteld.

Posten vanaf de command-line

Als je je handen vies wilt maken van de opdrachtregel, kun je de gratis webhook-foutopsporingshulpprogramma van SendGrid proberen, wat een snelle manier is om te zien hoe gebeurtenissen verschijnen. 

De kern van de tool is een URL die u kunt instellen als uw Parse Webhook-eindpunt. Elke keer dat u de URL laadt, krijgt u een uniek ID binnen de URL. 

Hieronder staan ​​twee voorbeelden om aan de slag te gaan met uw webhook. De KRIJGEN voorbeeld begint met luisteren naar nieuwe gegevens. Vanaf de opdrachtregelterminal plakt u het volgende KRIJGEN voorbeeld: 

$ curl -X GET \ http://hookdebug.sendgrid.com/v1/events/e6a20fffc9c1968dd64684f0b11b9c29 

Om in te voegen of uw Parse Webhook gegevens ontvangt, typt u de Krul commando van de POST voorbeeld in een tweede terminalscherm:

$ curl -X POST \ -d "foo = bar" \ -d "alice = bob" \ http://hookdebug.sendgrid.com/v1/events/e6a20fffc9c1968dd64684f0b11b9c29

Het antwoord op uw terminalvenster zou nu nieuwe inhoud moeten hebben:

"Event_id": "e6a20fffc9c1968dd64684f0b11b9c29"

Stuur vervolgens een e-mail naar het domein of subdomein dat u gebruikt voor het inkomende parseren. Binnen een paar minuten zou u de geparseerde e-mail als JSON in uw terminalvenster moeten zien. 

Pas uw parser aan

Zoals u ziet, worden de details van de scheiding van e-mailgegevens en de routering van een binnenkomend bericht naar het SendGrid-script achter de schermen voor u gedaan. Vanaf nul begint de Parse Webhook op vele creatieve manieren. U bent nu klaar om echte e-mailgegevens te plaatsen via die webhook! 

Als u uw e-mails op maat wilt parseren, kunt u beginnen met het aanpassen van de code in routes / inbound.js.

U kunt bijvoorbeeld het bestand inbound.js herschrijven om bijlagen op te slaan op een manier die past bij uw toepassing en database of zelfs een actie voltooien als de inhoud van de e-mail een woord bevat. 

Conclusie

Voor gebruiksgevallen, casestudy's en voorbeelden, download de Parse Webhook Guide of bekijk de Parse Webhook API-bibliotheek. 

Wanneer u de voorbeelden van Parse Webhook bekijkt, zult u merken dat de twee meest gebruikte manieren om het te gebruiken zijn: interactie met uw gebruikers en het verzamelen van gegevens binnen uw toepassingen via e-mail.

Met de webhook kunt u functies ontwikkelen die frequente taken productiever maken voor uw gebruikers zonder dat ze hun e-mailinbox hoeven te verlaten. Het verzamelen van inzichten en het interactief maken van je e-mails was nog nooit zo eenvoudig.