
Teilen Sie:
Benjamin Aronov ist ein Entwickler-Befürworter bei Vonage. Er ist ein bewährter Community Builder mit einem Hintergrund in Ruby on Rails. Benjamin genießt die Strände von Tel Aviv, das er sein Zuhause nennt. Von Tel Aviv aus kann er einige der besten Startup-Gründer der Welt treffen und von ihnen lernen. Außerhalb der Tech-Branche reist Benjamin gerne um die Welt auf der Suche nach dem perfekten Pain au Chocolat.
Senden von SMS aus Google Sheets
Lesedauer: 5 Minuten
Ich vergesse oft, meinen geliebten Freunden und meiner Familie zum Geburtstag zu gratulieren. Es ist nicht so, dass ich es absichtlich tue, aber bei meinem vollen Terminkalender und den großen Entfernungen, die uns trennen, scheine ich immer öfter zu vergessen, rechtzeitig eine Nachricht zu schicken.
Nun, ich habe gerade die perfekte Lösung gefunden! Ich habe eine Google Sheets-Tabelle mit meinen geliebten Kontakten, ihren Geburtstagen und herzlichen Nachrichten erstellt. Mit Google Apps Scripts und AI Studio von Vonage habe ich eine Integration zum automatischen Versenden von SMS aus Google Sheets erstellt. Und das alles ist Low-Code!
In diesem Tutorial lernen Sie, wie Sie SMS zu versenden von Google Sheets und nie wieder einen Geburtstag verpassen!
Example of Outbound SMS
Vonage API-Konto
Um dieses Tutorial durchzuführen, benötigen Sie ein Vonage API-Konto. Wenn Sie noch keines haben, können Sie sich noch heute anmelden und mit einem kostenlosen Guthaben beginnen. Sobald Sie ein Konto haben, finden Sie Ihren API-Schlüssel und Ihr API-Geheimnis oben auf dem Vonage-API-Dashboard.
Voraussetzungen
Vonage Developer Account
Vonage Virtuelle Nummer - Mieten Sie eine Nummer für Ihren virtuellen Agenten
Google-Konto für den Zugriff auf Google Sheets
Wie man einen Outbound SMS Chatbot erstellt
Um Ihren Agenten zu erstellen, folgen Sie den Anweisungen in der AI Studio Dokumentation hier. Es gibt drei wichtige Optionen für unseren Agenten:
Art: SMS
Vorlage: Von Grund auf neu beginnen
Veranstaltung: Ausgehend von
Die Funktion Ihres Agenten ist ganz einfach: Sie senden eine einzige SMS mit Ihren Geburtstagsglückwünschen. Sie verwenden einen einzigen Knoten zum Senden von Nachrichten und einen Konversationsende-Knoten. Den Inhalt der Nachricht finden Sie im nächsten Schritt.
So erstellen Sie benutzerdefinierte Parameter in AI Studio
In Ihrem Send Message Node benötigen Sie zwei Parameter. Öffnen Sie also das Fenster Eigenschaften auf der linken Seite und wählen Sie Parameter. Unter Benutzerdefinierte Parameter, erstellen Sie die folgenden Einträge:
Name -
@sys.anyNachricht -
@sys.any
Speichern Sie die Parameter und öffnen Sie den Knoten "Nachricht senden". Fügen Sie innerhalb des Knotens die folgende Nachricht ein. Um Ihre Parameter zu verwenden, geben Sie $ gefolgt von dem Parameternamen ein. Um zum Beispiel Ihren Namenswert zu verwenden, geben Sie $name ein.
Dear $name,
$messageKlicken Sie auf Speichern & Beenden.
So verbinden Sie Ihren virtuellen Agenten mit einer virtuellen Nummer
Der letzte Schritt besteht darin, Ihren Agenten mit einer virtuellen Nummer zu verbinden und die Anwendung zu veröffentlichen. Dieser Leitfaden erklärt, wie Sie Ihren Agenten bereitstellen über das öffentliche Internet zugänglich ist.
Wie man eine Google Sheets-Datenbank erstellt
Öffnen Sie Google Tabellen und klicken Sie auf Blank Spreadsheet. Geben Sie Ihrem Arbeitsblatt einen schönen Titel wie Geburtstagsnachrichten. Benennen Sie außerdem Ihr Blatt Geburtstage wie unten gezeigt.
Example of Google Sheet DataIhr Blatt wird 4 Spaltenüberschriften haben:
namephone_numberbirthdaymessage
Fügen Sie die Daten von zehn Freunden hinzu.
Für
phone_numberfügen Sie Ihre Nummer oder eine andere Telefonnummer ein, die Sie für den Empfang von SMS zu Testzwecken nutzen können. Telefonnummern sollten im internationalen Format ohne + oder 00 angegeben werden. Eine US-Nummer wäre zum Beispiel15552345678Stellen Sie sicher, dass Ihre
phone_numberSpalte auf "Klartext" formatiert ist, sonst werden Sie später Probleme mit den Daten haben.Stellen Sie sicher, dass
birthdayso formatiert ist, dass es vomDateTyp. Z.B. 26.9.2008.
Plain Text Formatting in Google Sheets
Wie Sie Ihr Google Sheet in JSON konvertieren
Jetzt verwandeln Sie Ihr Google Spreadsheet in eine programmierbare App! Öffnen Sie die Registerkarte Erweiterungen und wählen Sie Apps Scripts. Mit Apps Scripts können Sie Code auf Google Workspace-Anwendungen wie Google Sheets oder Google Docs schreiben, um deren Funktionen zu automatisieren und zu erweitern.
Apps Script Tab in Google SheetsGeben Sie Ihrem neuen Projekt zunächst einen schönen Titel wie Birthday Messages API. Löschen Sie den Code in code.gs und ersetzen Sie ihn durch den folgenden:
function sendBirthdaySMS() {
// Open the spreadsheet by name
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("birthdays");
// Get today's date
var today = new Date();
var todayDay = today.getDate();
var todayMonth = today.getMonth() + 1;
// Get all the data from the sheet
var data = sheet.getDataRange().getValues();
// Iterate through each row to check for birthdays
for (var i = 1; i < data.length; i++) {
var name = data[i][0];
var phoneNumber = data[i][1];
var birthday = new Date(data[i][2]);
var birthdayDay = birthday.getDate();
var birthdayMonth = birthday.getMonth() + 1;
var message = data[i][3];
// Check if today is the person's birthday
if (birthdayDay === todayDay && birthdayMonth === todayMonth) {
// Prepare the JSON payload
var payload = {
"name": name,
"phone_number": phoneNumber,
"birthday": birthday.toISOString(),
"message": message
};
const payload_string = JSON.stringify(payload)
// Send POST request to AI Studio
sendRequest(payload);
}
}
}Dieser Code erzeugt eine sendBirthdaySMS Funktion, die unser Arbeitsblatt nach dem birthdays Blatt. Sie durchläuft dann jede Zeile und prüft, ob die Person heute Geburtstag hat, indem sie die Werte für Tag und Monat vergleicht. Ist dies der Fall, wird das Payload-Objekt erstellt, das die Daten der Person enthält. Diese Informationen werden dann an die Funktion sendRequest Funktion weiter, die die Geburtstagsdaten an AI Studio sendet.
So senden Sie eine Apps Script POST-Anfrage
Sie erstellen nun Ihre sendRequest Funktion zum zur Auslösung Ihres Outbound Virtual Agent. Sie können den folgenden Code unterhalb des sendBirthdaySMS() Abschnitt ein.
Damit dieser Code funktioniert, müssen Sie 3 Werte aktualisieren:
aiStudioUrl
Der Endpunkt hängt von der Region ab, die Sie für Ihren Agenten ausgewählt haben:
Für EU-Bedienstete → https://studio-api-eu.ai.vonage.com/messaging/conversation Für US-Agenten --> https://studio-api-us.ai.vonage.com/messaging/conversation
X-Vgai-Key
Fügen Sie Ihren AI Studio API Schlüssel hinzu. Sie finden den
X-Vgai-Keyoben rechts in Ihrem AI Studio Canvas. Klicken Sie auf das Symbol "Benutzer" und dann auf "API-Schlüssel generieren".
agent_id
Fügen Sie die
idIhres Vonage AI Studio Agenten hinzu. Diese finden Sie unter Agentendetails.
function sendRequest(payload) {
// Add your URL depending if using EU or US agent
// check point #2 above for URL to add in the ''
var aiStudioUrl = ''
// Define headers for the POST request
var headers = {
'Content-Type': 'application/json',
'X-Vgai-Key': '' // Replace with your AI Studio key
};
// Define the body for the POST request
var body = {
"to": payload.phone_number,
"agent_id": "", // Replace with your agent ID
"channel": "sms",
"session_parameters": [
{
"name": "name",
"value": payload.name
},
{
"name": "message",
"value": payload.message
}
]
};
// Define the options for the POST request (e.g., headers, authentication)
var options = {
'method': 'post',
'headers': headers,
'payload': JSON.stringify(body)
};
// Send the POST request
var response = UrlFetchApp.fetch(aiStudioUrl, options);
// Add a two-second delay before sending the next request
Utilities.sleep(2000);
// Log the response (you can do more error handling here)
Logger.log(response.getContentText());
}Was macht dieser Code also? Er erstellt eine POST-Anfrage, indem er die URL, die Kopfzeilen und den Textkörper vorbereitet. In den Kopfzeilen stellt der X-Vgai-Key sicher, dass dieser Agent zu Ihnen gehört. Im Body teilen Sie AI Studio mit, welchen Agenten es auslösen und an wen es die Nachrichten senden soll. Sie geben die Werte für den Namen und die Nachricht in AI Studio weiter, die Sie zuvor vorbereitet haben. All dies wird in Optionen gebündelt, und mit UrlFetchApp stellen Sie die Anfrage.
Kürzlich hat AI Studio Ratenbeschränkungen hinzugefügt für Anfragen hinzugefügt. Um dies zu berücksichtigen, wird mit Utilities.sleep(2000) eine 2-Sekunden-Verzögerung zwischen den Anfragen eingefügt;
Und das war's! Sie können nun testen, ob Ihr Code funktioniert, indem Sie auf Ausführen klicken.
Vergewissern Sie sich zum Testen, dass mindestens drei der Kontakte am aktuellen Tag Geburtstag haben und über eine Telefonnummer verfügen, die Sie erreichen können.
Wie cool war das!
Wie man einen Cron Job in Apps Script erstellt, der täglich läuft
Die Anwendung soll täglich laufen und prüfen, ob jemand Geburtstag hat. Sie können dies ganz einfach in Apps Script tun, indem Sie:
Wählen Sie in der linken Leiste "Auslöser".
Klicken Sie auf "Auslöser hinzufügen".
Wählen Sie die folgenden Einstellungen:
Wählen Sie, welche Funktion ausgeführt werden soll:
sendBirthdaySMSWählen Sie, welche Verteilung ausgeführt werden soll:
HEADWählen Sie die Ereignisquelle:
Time-drivenWählen Sie den Typ des zeitbasierten Triggers:
Day timerTageszeit wählen: Bestimmen Sie, wann Ihre Nachrichten gesendet werden sollen.
Klicken Sie auf "Speichern".
Schlussfolgerung
Nun, da Sie Ihren AI Studio SMS Agent mit Google Sheets verbunden haben, wie geht es weiter?
Vielleicht können Sie eine Geburtstags-E-Mail mit AI Studio's E-Mail-Knoten. Sie könnten einen Voice-Agent erstellen, der Ihren Freunden ein Geburtstagslied singt. Oder Sie könnten die Generative KI-Integration um Ihren Freunden ein lustiges Geburtstagsbild zu schicken.
Was auch immer Sie tun wollen, wir wollen davon hören! Bitte kontaktieren Sie uns in unserer Entwickler-Community Slack oder auf X, früher bekannt als Twitter.
Zusätzliche Ressourcen
Teilen Sie:
Benjamin Aronov ist ein Entwickler-Befürworter bei Vonage. Er ist ein bewährter Community Builder mit einem Hintergrund in Ruby on Rails. Benjamin genießt die Strände von Tel Aviv, das er sein Zuhause nennt. Von Tel Aviv aus kann er einige der besten Startup-Gründer der Welt treffen und von ihnen lernen. Außerhalb der Tech-Branche reist Benjamin gerne um die Welt auf der Suche nach dem perfekten Pain au Chocolat.
