Du betrachtest gerade Zoho Catalyst, WorkDrive & OpenAI API: KI-Telefonprotokolle automatisieren

Zoho Catalyst, WorkDrive & OpenAI API: KI-Telefonprotokolle automatisieren

  • Beitrags-Autor:

Zoho am Limit? So erweiterst Du das Ökosystem mit APIs, Catalyst und KI

Du kennst Zoho als ein unglaublich mächtiges Werkzeug, um Geschäftsprozesse zu digitalisieren. Doch was passiert, wenn Deine Anforderungen so spezifisch werden, dass die Standardfunktionen nicht mehr ausreichen? Viele stehen dann vor der Wahl: einen komplizierten Workaround bauen oder das System wechseln. Es gibt jedoch einen dritten, weitaus besseren Weg: die gezielte Erweiterung von Zoho durch die intelligente Kombination von Zoho-Apps, externen APIs und Low-Code- bzw. Pro-Code-Plattformen wie Zoho Catalyst. In diesem Artikel zeigen wir Dir, wie Du die Grenzen von Standardkonfigurationen sprengst und eine maßgeschneiderte Lösung baust, die exakt auf Deine Bedürfnisse zugeschnitten ist – praxisnah, technisch fundiert und ohne Marketing-Blabla.

Die Herausforderung: Wenn Standard-Prozesse nicht mehr passen

Stell Dir ein mittelständisches Dienstleistungsunternehmen vor. Es nutzt eine Kombination aus Zoho Books für die Buchhaltung, Zoho Inventory für die Lagerverwaltung und Zoho FSM (Field Service Management) für die Einsatzplanung der Techniker. Im Grunde eine solide Basis. Doch das Unternehmen hat einen sehr spezifischen Abrechnungsprozess, der von der Dauer des Einsatzes, den verbrauchten Materialien und komplexen Vertragskonditionen abhängt. Die Standard-Integration zwischen diesen drei Apps stößt hier an ihre Grenzen.

Die Frustration wächst. Das Team überlegt sogar, Zoho zu verlassen und eine komplett eigene Lösung zu entwickeln, vielleicht sogar mithilfe von KI-Tools wie Anthropic’s Claude oder OpenAI’s GPT-4, die in der Lage sind, Code zu generieren. Das ist der Moment, in dem klassische Berater oft nur noch komplexe Workarounds vorschlagen. Wir zeigen Dir stattdessen, wie Du die Herausforderung annimmst und eine leistungsstarke, integrierte Lösung innerhalb des Zoho-Ökosystems schaffst.

Schritt-für-Schritt zur maßgeschneiderten Lösung: Ein KI-gestützter Service-Prozess

Anstatt uns auf das exakte Abrechnungsproblem zu konzentrieren, nehmen wir ein anderes, ebenso relevantes Praxisbeispiel, das die Leistungsfähigkeit der Integrationen demonstriert: die automatische Transkription und Analyse von Service-Telefonaten. Dieses Szenario zeigt perfekt, wie man interne Zoho-Daten mit externen KI-Diensten verbindet.

Das Ziel: Ein aufgezeichnetes Kundengespräch (z.B. aus Zoho Voice) wird automatisch transkribiert, mit KI zusammengefasst, im richtigen Zoho CRM-Kontakt oder Zoho Desk-Ticket gespeichert und das zuständige Team per Zoho Cliq benachrichtigt.

Schritt 1: Der Auslöser – Die neue Aufnahme

Jeder automatisierte Prozess braucht einen Startpunkt. In unserem Fall ist das eine neue Audio-Datei, die nach einem Telefonat gespeichert wird. Ein einfacher Weg ist, alle Aufnahmen in einem bestimmten Ordner in Zoho WorkDrive abzulegen. Wir können dann eine Workflow-Regel in WorkDrive erstellen, die bei jeder neuen Datei in diesem Ordner eine Custom Function auslöst.

Schritt 2: Die Schaltzentrale – Zoho Catalyst

Für Aufgaben, die externe APIs aufrufen und komplexe Logik erfordern, ist Zoho Catalyst die ideale Wahl. Catalyst ist Zoho’s serverlose Entwicklerplattform, auf der Du Code (z.B. in Node.js, Java oder Python) ausführen kannst, ohne Dich um Server kümmern zu müssen. Die WorkDrive-Funktion ruft einen Catalyst-Endpunkt auf und übergibt die ID der neuen Audiodatei.

Die Catalyst-Funktion führt nun folgende Schritte aus:

  1. Sie holt sich die Audiodatei aus WorkDrive mithilfe der Zoho-API.
  2. Sie sendet die Datei an einen externen Transkriptionsdienst.

Für die Transkription gibt es exzellente Anbieter wie AssemblyAI, Deepgram oder Google Speech-to-Text. Diese Dienste nehmen eine Audiodatei entgegen und geben den gesprochenen Text zurück, oft sogar mit Sprechererkennung.

Ein API-Aufruf an AssemblyAI mit Node.js könnte vereinfacht so aussehen:


// Dies ist ein Beispiel in Node.js für eine Zoho Catalyst Funktion

const axios = require('axios');
const API_KEY = process.env.ASSEMBLYAI_API_KEY; // Sicher als Umgebungsvariable speichern

async function transcribeAudio(audioUrl) {
    const response = await axios.post('https://api.assemblyai.com/v2/transcript', {
        audio_url: audioUrl
    }, {
        headers: {
            'authorization': API_KEY,
            'content-type': 'application/json'
        }
    });

    // Der Prozess ist asynchron, wir müssen auf das Ergebnis warten
    const transcriptId = response.data.id;
    let status = 'processing';
    let transcriptData;

    while (status !== 'completed' && status !== 'error') {
        await new Promise(resolve => setTimeout(resolve, 3000)); // 3 Sekunden warten
        const pollResponse = await axios.get(`https://api.assemblyai.com/v2/transcript/${transcriptId}`, {
            headers: { 'authorization': API_KEY }
        });
        transcriptData = pollResponse.data;
        status = transcriptData.status;
    }

    return transcriptData.text;
}

Schritt 3: Intelligenz hinzufügen – KI-Zusammenfassung

Ein langes Transkript ist gut, aber eine prägnante Zusammenfassung ist besser. Jetzt kommt der nächste externe API-Aufruf ins Spiel. Wir senden das erhaltene Transkript an ein großes Sprachmodell (LLM) wie OpenAI’s GPT-4 oder Claude 3 von Anthropic mit der Anweisung, eine Zusammenfassung zu erstellen und die wichtigsten Action-Items zu extrahieren.

Der API-Aufruf an OpenAI könnte so aussehen:


// Weiter in unserer Catalyst Node.js Funktion

const { OpenAI } = require('openai');
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

async function summarizeText(textToSummarize) {
    const completion = await openai.chat.completions.create({
        model: "gpt-4-turbo-preview",
        messages: [
            {
                "role": "system",
                "content": "Du bist ein effizienter Assistent. Fasse den folgenden Text zusammen und liste alle konkreten Aufgaben oder Action-Items in einer Bullet-Point-Liste am Ende auf."
            },
            {
                "role": "user",
                "content": textToSummarize
            }
        ],
    });

    return completion.choices[0].message.content;
}

Schritt 4: Daten zurück ins Zoho-System

Mit dem Transkript und der KI-Zusammenfassung in der Hand, schließt sich der Kreis. Die Catalyst-Funktion nutzt nun die Zoho-API, um diese Informationen an der richtigen Stelle zu speichern. Wir könnten:

  • Eine Notiz zum entsprechenden Kontakt in Zoho CRM hinzufügen.
  • Ein mehrzeiliges Textfeld im CRM-Datensatz füllen.
  • Einen Kommentar zu einem Ticket in Zoho Desk posten.
  • Basierend auf den extrahierten Action-Items automatisch eine Aufgabe in Zoho Projects erstellen.

Hierfür kann man innerhalb von Catalyst die Zoho-SDKs nutzen oder eine Deluge-Funktion aufrufen. Ein Beispiel in Deluge, um eine Notiz in Zoho CRM zu erstellen, wäre:


// Deluge-Code, der von Catalyst aufgerufen werden kann

void addTranscriptionNoteToContact(int contactId, string transcript, string summary)
{
    noteContent = "--- KI-Zusammenfassung ---n" + summary + "nn--- Vollständiges Transkript ---n" + transcript;

    noteMap = Map();
    noteMap.put("Note_Title", "Automatische Anrufanalyse");
    noteMap.put("Note_Content", noteContent);
    noteMap.put("Parent_Id", contactId);
    noteMap.put("se_module", "Contacts");

    createResponse = zoho.crm.createRecord("Notes", noteMap);
    info createResponse;
}

Schritt 5: Das Team informieren

Damit die neuen Informationen nicht unbemerkt bleiben, senden wir eine Benachrichtigung an den zuständigen Mitarbeiter oder einen Team-Kanal in Zoho Cliq. Dies ist der letzte Schritt, um den Prozess abzuschließen und die Effizienz zu maximieren.


// Deluge-Code zum Posten in einem Cliq-Kanal

contactDetails = zoho.crm.getRecordById("Contacts", contactId);
contactName = contactDetails.get("Full_Name");
contactOwner = contactDetails.get("Owner").get("name");

message = {
    "text": "Neues Anrufprotokoll für Kontakt *" + contactName + "* wurde automatisch erstellt. Verantwortlich: " + contactOwner,
    "card": {
        "title": "KI-Anrufanalyse",
        "theme": "modern-blue"
    },
    "buttons": [
        {
            "label": "Zum Kontakt im CRM",
            "type": "+",
            "action": {
                "type": "open.url",
                "url": "https://crm.zoho.eu/crm/org.../tab/Contacts/" + contactId
            }
        }
    ]
};

zoho.cliq.postToChannel("servicedesk_channel", message);

Tipps und Best Practices

  • Sicherheit geht vor: Speichere API-Schlüssel niemals direkt im Code. Nutze die Umgebungsvariablen in Zoho Catalyst oder verwalte sie sicher mit Zoho Vault.
  • Fehlerbehandlung: Was passiert, wenn eine externe API nicht erreichbar ist? Implementiere eine robuste Fehlerbehandlung (Try-Catch-Blöcke) und Logging, um Probleme schnell zu identifizieren. Du könntest sogar eine Benachrichtigung an einen Admin-Kanal in Cliq senden, wenn ein Prozess fehlschlägt.
  • Kosten im Blick behalten: API-Aufrufe bei Diensten wie OpenAI oder AssemblyAI sind nicht kostenlos. Überwache Deinen Verbrauch und optimiere die Prozesse, um unnötige Kosten zu vermeiden.
  • Skalierbarkeit: Der große Vorteil von Zoho Catalyst ist die automatische Skalierung. Du musst Dir keine Sorgen machen, ob Dein Server 10 oder 10.000 Anfragen pro Tag verarbeiten kann.

Weitere Möglichkeiten und Integrationen

Dieses Beispiel ist nur die Spitze des Eisbergs. Einmal etabliert, lässt sich dieser Prozess beliebig erweitern:

  • Datenvisualisierung: Leite die extrahierten Daten (z.B. Anrufdauer, Stimmung, häufige Themen) an Zoho Analytics weiter. Erstelle Dashboards, die Dir tiefe Einblicke in die Qualität Deines Kundenservice geben.
  • Verbesserte Benutzeroberfläche: Statt die Daten nur in einer Notiz zu speichern, könntest Du ein Widget direkt in der Zoho CRM-Detailansicht erstellen. Dieses Widget könnte das Transkript durchsuchbar machen, die Zusammenfassung anzeigen und vielleicht sogar das Audio direkt abspielen.
  • Wissensmanagement: Poste besonders aufschlussreiche Zusammenfassungen in einem relevanten Kanal in Zoho Connect, um das Wissen im gesamten Unternehmen zu teilen.

Fazit: Baue die Lösung, die Du wirklich brauchst

Die wahre Stärke des Zoho-Ökosystems liegt nicht nur in den einzelnen Apps, sondern in ihrer unbegrenzten Kombinierbarkeit – untereinander und mit der Außenwelt. Anstatt Zoho als ein starres Produkt zu sehen, betrachte es als eine Plattform. Wenn Du an eine Grenze stößt, ist das kein Stoppschild, sondern eine Einladung, kreativ zu werden.

Indem Du Werkzeuge wie Zoho Catalyst, APIs und Webhooks nutzt, kannst Du hochgradig individuelle und automatisierte Prozesse schaffen, die weit über das hinausgehen, was mit Standardkonfigurationen möglich ist. Du kannst externe KI-Dienste, branchenspezifische Software oder beliebige andere Online-Services nahtlos integrieren. Der Lohn ist ein System, das nicht nur arbeitet, sondern für Dich und Dein Unternehmen intelligent mitdenkt.

Verwendete Zoho Apps in diesem Beispiel: