Die Syntax von SMOC-Ausdrücken in Entscheidungselementen verstehen

Studio
Die Syntax von SMOC-Ausdrücken in Entscheidungselementen verstehen

Ausdrücke

Der Bot unterstützt derzeit zwei Arten von Ausdrücken:

  • Smoc-Ausdrücke: Werden in Entscheidungselementen verwendet, um zu bestimmen, wohin als Nächstes verzweigt wird. Smoc-Ausdrücke geben immer Zahlen zurück.
  • ICU-Ausdrücke: Werden in Nachrichten (Text, Buttons usw.) für dynamische Inhalte verwendet. ICU-Ausdrücke geben immer Zeichenketten zurück.

Smoc-Ausdrücke in Entscheidungselementen

Wenn die SMOC Bot-Engine entscheidet, welcher Pfad als Nächstes verfolgt wird,
verwendet sie Smoc-Ausdrücke, um jeder möglichen Verbindung einen numerischen Score zuzuweisen.

Dann wird eine Verbindung ausgewählt:

  • Wenn keine Verbindung einen positiven Score hat, wird keine Verbindung verfolgt.
    • WICHTIG: Fügen Sie immer eine Standardverbindung mit einem Score von 0.5 hinzu, damit der Bot nicht stecken bleibt.
  • Wenn eine Verbindung einen höheren Score als alle anderen hat, wird diese verfolgt.
  • Wenn mehrere Verbindungen den höchsten Score haben, wird zufällig eine davon gewählt.

Smoc-Ausdrücke sind infix arithmetische Ausdrücke.

Gültige Operatoren sind +, -, * und /. Sie können auch ( und ) verwenden, um Teilausdrücke zu gruppieren.

Jeder Operand ist entweder eine Zahl oder eine Variable. Die meisten Variablen erwarten ein Argument (unabhängig von Groß-/Kleinschreibung) nach dem =-Zeichen.

Beispiel:

2 * ${answer=34}

In diesem Beispiel ist der erste Operand 2 (eine Zahl), und der zweite Operand ist ${answer=34} (eine Variable).

Eine Variable ergibt entweder 0 oder 1. Die Variable ${answer=34} ergibt 1 nur wenn der Besucher
eine Umfragefrage mit der ID 34 beantwortet hat.

Es gibt viele Smoc-Ausdrucksvariablen zur Auswahl, und die meisten davon repräsentieren Fakten, die wir über den Besucher wissen, bevor
er mit dem Bot interagiert (wie Geolokalisierung, Gerätetyp, utm_-Variablen usw.).

ICU-Ausdrücke in Nachrichten

ICU-Ausdrücke werden verwendet, um Nachrichten zu formatieren. Sie können Kontextvariablen aus dem laufenden Gespräch referenzieren.

Beispiel:

Hello from {country_name}!

Wenn die Variable country_name "Norway" ist, wird die Nachricht wie folgt formatiert:

Hello from Norway!

ICU-Ausdrücke unterstützen auch die Anzeige unterschiedlicher Texte basierend auf dem Wert einer Variablen:

{country_name,select,
  Norway {Hello from Norway!}
	other {Hello from another country!}
}

In diesem Beispiel, wenn die Variable country_name "Norway" ist, wird die Nachricht als Hello from Norway! formatiert. Andernfalls wird sie als Hello from another country! formatiert.

Fallbacks für Kontaktfelder gehören in Nachrichten-ICU, nicht in ${…=}-Entscheidungsausdrücke. Fehlende {linkedin_company} oder {company} werden zu einem leeren String, sofern Sie nicht {linkedin_company, fallback, company {your team}} schreiben. Diese beiden Felder sind unterschiedlich: LinkedIn-Profil-Unternehmen vs. Kontakt-Datensatz-Unternehmen.

Diese Ausdrücke können miteinander verkettet werden, um dynamische Nachrichten basierend auf mehreren Variablen zu erstellen:

Nehmen wir folgendes Preismodell:

Woher kommen Sie? Sind Sie Student? Preis
Norwegen Ja 100
Norwegen Nein 200
Schweden Ja 300
Schweden Nein 400
andere andere 500

Der entsprechende ICU-Ausdruck wäre:

{country, select,
  Norway {
    {student, select,
      Yes {Your price is 100}
      No {Your price is 200}
      other {Your price is 500}
    }
  }
  Sweden {
    {student, select,
      Yes {Your price is 300}
      No {Your price is 400}
      other {Your price is 500}
    }
  }
  other {Your price is 500}
}

Wenn der Nutzer diese Fragen im Ablauf beantwortet hat, wird die Nachricht mit dem richtigen Preis formatiert.

Wie bei Smoc-Ausdrücken müssen die Fragen und Antworten die id der Frage/Antwort sein:

question_1 question_2 Preis
answer_3 answer_5 100
answer_3 answer_6 200
answer_4 answer_5 300
answer_4 answer_6 400
other other 500

Der entsprechende ICU-Ausdruck wäre:

{question_1, select,
  answer_3 {
    {question_2, select,
      answer_5 {Your price is 100}
      answer_6 {Your price is 200}
      other {Your price is 500}
    }
  }
  answer_4 {
    {question_2, select,
      answer_5 {Your price is 300}
      answer_6 {Your price is 400}
      other {Your price is 500}
    }
  }
  other {Your price is 500}
}

Tools

Das Erstellen von ICU-Ausdrücken kann etwas knifflig sein, daher empfiehlt es sich, Tools dafür zu verwenden:

Variablen

Die folgende Tabelle listet alle verfügbaren Smoc-Ausdrucksvariablen auf.

Name Smoc-Ausdruck-Beispiel ICU-Ausdruck-Beispiel Beschreibung
accept_language ${accept_language=some_accept_language} {accept_language} Eine Zeichenkette
browser ${browser=115} {browser} Browser-Kennung. Siehe vollständige Liste für alle unterstützten Werte (100+ Optionen)
city ${city=some_city} {city} Eine Zeichenkette
conversation_url ${conversation_url=some_conversation_url} {conversation_url} Eine Zeichenkette
country_name ${country_name=some_country_name} {country_name} Eine Zeichenkette
device_type ${device_type=console} {device_type} Gerätetyp. Siehe vollständige Liste für alle unterstützten Werte
lang ${lang=da-DK} {lang} Sprachcode. Siehe vollständige Liste für alle unterstützten Werte
os ${os=AIX} {os} Betriebssystem. Siehe vollständige Liste für alle unterstützten Werte (100+ Optionen)
os_version ${os_version=some_os_version} {os_version} Eine Zeichenkette
referrer ${referrer=some_referrer} {referrer} Eine Zeichenkette
referring_domain ${referring_domain=some_referring_domain} {referring_domain} Eine Zeichenkette
region ${region=some_region} {region} Eine Zeichenkette
user_agent ${user_agent=some_user_agent} {user_agent} Eine Zeichenkette
utm_campaign ${utm_campaign=some_utm_campaign} {utm_campaign} Eine Zeichenkette
utm_content ${utm_content=some_utm_content} {utm_content} Eine Zeichenkette
utm_medium ${utm_medium=some_utm_medium} {utm_medium} Eine Zeichenkette
utm_source ${utm_source=some_utm_source} {utm_source} Eine Zeichenkette
utm_term ${utm_term=some_utm_term} {utm_term} Eine Zeichenkette

Browser-Werte

115 / 2345 / 360 / Alipay / Amaya / Android Browser / Arora / Avant / Avast Secure Browser / AVG Secure Browser / Baidu Browser / Basilisk / Blazer / Bolt / Bowser / Brave / Camino / Chimera / Chrome / Chrome Headless / Chrome WebView / Chromium / Cobalt / Coc Coc / Conkeror / Dillo / Dolphin / Doris / Dragon / DuckDuckGo / Edge / Epiphany / Facebook / Falkon / Fennec / Firebird / Firefox / Firefox Focus / Firefox Reality / Flock / Flow / GoBrowser / GSA / Helio / HeyTap / Honor / Huawei Browser / iCab / ICE Browser / IceApe / IceCat / IceDragon / IceWeasel / IE / Instagram / Iridium / Iron / Jasmine / K-Meleon / KakaoTalk / KHTML / Kindle / Klar / Klarna / Konqueror / LBBROWSER / LibreWolf / Line / LinkedIn / Links / Lunascape / Lynx / Maemo Browser / Maxthon / Midori / Minimo / MIUI Browser / Mobile Chrome / Mobile Firefox / Mobile Safari / Mosaic / Mozilla / Naver / NetFront / Netscape / Netsurf / Nokia Browser / Obigo / Oculus Browser / OmniWeb / Opera / Opera Coast / Opera Mini / Opera Mobi / Opera Tablet / Opera Touch / OviBrowser / PaleMoon / PhantomJS / Phoenix / Pico Browser / Polaris / Puffin / QQBrowser / QQBrowserLite / Quark / QupZilla / rekonq / Rockmelt / Safari / Sailfish Browser / Samsung Internet / SeaMonkey / Silk / Skyfire / Sleipnir / SlimBoat / SlimBrowser / Slimjet / Smart Lenovo Browser / Snapchat / Sogou Explorer / Sogou Mobile / Swiftfox / Tesla / TikTok / Tizen Browser / Twitter / UCBrowser / UP.Browser / Vivaldi / Vivo Browser / w3m / Waterfox / WebKit / WeChat / Weibo / Whale / Wolvic / Yandex

Gerätetyp-Werte

console / desktop / embedded / mobile / smarttv / tablet / wearable / xr

Sprachwerte

da-DK / en-GB / es-ES / fi-FI / nb-NO / sv-SE

Betriebssystem-Werte

AIX / Amiga OS / Android / Android-x86 / Arch / Bada / BeOS / BlackBerry / CentOS / Chrome OS / Chromecast / Chromecast Android / Chromecast Fuchsia / Chromecast Linux / Chromecast SmartSpeaker / Contiki / Debian / Deepin / DragonFly / elementary OS / Fedora / Firefox OS / FreeBSD / Fuchsia / Gentoo / GhostBSD / GNU / Haiku / HarmonyOS / HP-UX / Hurd / iOS / Joli / KaiOS / Linpus / Linspire / Linux / macOS / Maemo / Mageia / Mandriva / Manjaro / MeeGo / Minix / Mint / Morph OS / NetBSD / NetRange / NetTV / Nintendo / OpenBSD / OpenHarmony / OpenVMS / OS/2 / Palm / PC-BSD / PCLinuxOS / Pico / Plan9 / PlayStation / QNX / Raspbian / RedHat / RIM Tablet OS / RISC OS / Sabayon / Sailfish / SerenityOS / Series40 / Slackware / Solaris / SUSE / Symbian / Tizen / Ubuntu / Unix / VectorLinux / watchOS / WebOS / Windows / Windows Mobile / Windows Phone / Xbox / Zenwalk

Wo die KI läuft

Die KI übernimmt die Arbeit. Sie prüfen es.

Website-Chat, Card-Flows und LinkedIn teilen ein System. KI übernimmt jede Aufgabe unten. Die Zeile unter dem Titel sagt, wo diese Aufgabe läuft.

Jeder Agent

KI durchsucht die Website und schreibt Angebot, Zielgruppe, Stimme und Marke. Website-Chat, Kartenabläufe und LinkedIn starten davon.

Dashboard · Lead-Strategie

Setzen Sie Ihr Lead-Ziel. KI simuliert Tausende von Kanalmixen, ordnet sie nach Effizienz und zeigt den kosteneffizientesten Plan. Ihre Daten und Vorgaben bestimmen die Rechnung.

Jeder Agent · Thema im Web · Liste auf LinkedIn

KI schreibt den Ablauf. Das Thema läuft im Website-Chat und auf Karten. Die Übersetzung läuft auf jedem Agenten. KI findet die Interessentenliste auf LinkedIn.

Pfad in jedem Ablauf · Web und LinkedIn getrennt

Reinforcement Learning auf dem Ablaufpfad läuft auf jedem Agenten. Empfehlungen laufen im Web. Der richtige Zeitpunkt und das Lesen von Antworten laufen auf LinkedIn.

Jeder Agent

KI schlägt eine Variante vor, nutzt Ihre Prüfung im nächsten Entwurf und startet von einem Beispiel, das schon funktioniert. Sie übernehmen die Änderung.

Bleiben Sie nah am Wandel im KI-Vertrieb

Erhalten Sie Produktupdates und Einordnung zu proaktiven KI-Agenten, Multichannel-Orchestrierung und Conversion – ohne Lärm.

Produkt des Jahres Wöchentliches Signal zu proaktiver KI-Vertrieb
Newsletter abonnieren