Erstellen einer neuen Schnittstelle
Schnittstellenwerden von derRegisterkarte Prozess/ SchnittstelleninSelligent
Um eines neues Plugin-Schnittstelle zu erstellen, wählen Sie die Option 'Neue Plugin-Schnittstelle' in der Werkzeugliste der Registerkarte 'Schnittstelle'.
Das folgende Fenster wird angezeigt:
Bitte bedenken Sie, dass nicht alle Eigenschaften an dieser Stelle konfiguriert werden können. Manche Eigenschaften sind im ausgewählten Plugin definiert und können nur dort angezeigt werden.
Allgemein
- Name
- Beschreibung
- Interface Module: Wahl des Moduls, das zur Ausführung dieser Schnittstelle eingesetzt werden soll. DieVersion und Typwerden automatischausgefüllt, wenn einPluginaktiviert ist.
-
Planung: Einstellen des Intervalls zwischen 2 Durchführungen und der maximalen Batchgröße.
Technische Anmerkung
Alle in dieser tabelle zur Auswahl stehenden Module werden von Selligent erstellt. Diese Module sind im Grunde genommen, Dll’s. Sie enthalten die zur Interaktion zwischen SELLIGENT und einer externen Anwendung notwendigen Daten. Wenn kein Modul ausgewählt wird, besteht keine direkte Interaktion der externen Anwendung. Es werden jedoch in speziellen Schnittstellentabellen Daten gespeichert, die von der externen Anwendung abgefragt werden können, nachdem diesen Tabellen Zugriffsrechte zugeordnet wurden.
Beim Erstellen einer neuen Plugin-Schnittstelle können bestimmte Parameter innerhalb des Plugins durch Anklicken der Schaltfläche 'Konfigurieren' eingestellt werden:
Beispiel für das Direktnachrichten-Plugin 'X' (ehemals Twitter):
Der im Fenster angezeigte Content hängt von der internen Definition des Plugins ab. Hier ein Beispiel basierend auf dem 'X' (ehemals Twitter)-Modul:
Alle für die Plugin-Konfiguration festgelegten Daten werden in den Eigenschaften der Schnittstelle gespeichert. So kann dasselbe Plugin für mehrere Schnittstellen genutzt werden, wobei für jede Schnittstelle unterschiedliche Parameterwerte eingesetzt werden.
Über die Schaltfläche 'Validierung' wird die Validierung der Konfiguration getriggert.
Technical note: the Validate button triggers the function ValidateConfig on the interface.
Aus technischer Sicht wird bei der Validierung ein neuer Datensatz in der Tabelle ‘INTERFACE_PLUGIN_REQUESTS’ erstellt. Der CampaignAgent fragt diese Tabelle ab und führt die gewünschten Aktionen durch. Die Validierung ist also ein asynchroner Prozess.
Felder
In der Registerkarte 'Felder' können zusätzliche Parameter spezifiziert werden. Diese Parameter können verwendet werden, um Informationen zu speichern, die nicht direkt im Profil des Kontakts gespeichert werden.
Die meisten Plugins legen die Felder fest, die in der Schnittstellen-Tabelle verwendet werden sollen; in diesem Fall ist die Schnittstellen-Definition nicht dynamisch und nicht konfigurierbar. Der Benutzer kann die Felder nicht verändern, und die Kennung 'Statische Definition' erscheint.
Im Folgenden finden Sie ein Beispiel von Feldern, die mit dem SMS-Modul in der DLL definiert sind. Diese Felder können nicht bearbeitet werden.
Hinweis: Hier können Parameter nur festgelegt werden, wenn unter der Registerkarte "General" "No module" ausgewählt wurde. Wenn ein spezifisches Modul ausgewählt wird, werden die Parameter innerhalb der entsprechenden DLL definiert.
Ist die Felddefinition nicht in der DLL vorgegeben, stehen zwei Alternativen zur Verfügung:
- Konfigurierbar: Der Benutzer kann der Schnittstelle nach Belieben mit der Schaltfläche"Parameter hinzufügen"Felder hinzufügen.
- Dynamisch: Alle Felder sind abhängig von der festgelegten Konfiguration. In diesem Fall wird nach der Konfiguration zum Abruf der Feldertabelle vom externen System eine zusätzliche Rückfrage durchgeführt.
Bitte beachten Sie: Plugin-Schnittstellen verwenden so wie Datei-basierte Schnittstellen zur Kennzeichnung von Datensätzen das "CQID"-Feld. Da dieses Feld vom Selligent-System verwaltet wird, wird es in der Schnittstellen-Konfiguration nicht angezeigt.
Unter der Registerkarte für Parameterverwaltung finden Sie Standard-Funktionen
- Löschen
- Parameter hinzufügen
- Eigenschaften: Einen ausgewählten Parameter ansehen/bearbeiten
Eine Schnittstelle kann auch auf eine spezifische Zielgruppe begrenzt werden. Die Dropdown-tabelle im unteren Bereich des Fensters ermöglicht die Auswahl der benötigten tabelle.
Bei Erstellung oder Bearbeitung eines Parameters wird dessen Eigenschaften-(„Properties“) Fenster angezeigt:
- Name
- Typ: Parameter-Typ (Text, langer Text, numerisch, Datum, Zeitpunkt)
- Länge: Länge des Parameter-Feldes
- Beschreibung
- Richtung: Datenrichtung (Ausgabe, Feedback, beides)
- Required: Pflichtfeld oder nicht
- Feld Optionen: Wählen sie eine bestehende Optionstabelle (Optionlist
Ereignisse
Bevor Sie Ereignisse erstellen können, müssen Sie zuerst die Schnittstelle erstellen!
Definieren Sie Feedback-Ereignisse und weisen Sie eine Kennung zu. Diese Ereignisse können in der Journey nach einer Schnittstellenkomponente verwendet werden. Legen Sie Constraints fest und spezifizieren Sie die Aktivierungsmethode.
- Zum Hinzufügen eines neuen Feedback-Ereignisses, betätigen Sie die Schaltfläche "Neu" (New):

- Geben Sie einen Namen und eine Beschreibung für dieses Feedback-Ereignis ein..
- Wählen Sie das Ereignis, welches das Feedback auslöst. Die folgenden Optionen sind verfügbar::
- Auftrag für diesen Kanal ausgeführt
- Fehler bei Ausführung des Auftrags für diesen Kanal
- Feedback ist eingegangen
- Kein Feedback eingegangen (Zeitraum für Journey konfigurierbar))
-
Wählen Sie das Symbol, das vor dem Feedback angezeigt werden soll
-
Validieren Sie die Erstellung schließlich durch Anklicken der Schaltfläche "OK". Das neue Feedback wird der tabelle hinzugefügt:
Die Plugin-Schnittstelle in einer Journey verwenden
Ein Plugin besteht aus einem Satz an C# Klassenbibliotheken, die in DLL-Dateien neu gruppiert werden. Diese DLL-Dateien können in einer oder mehreren Schnittstellen verwendet werden.
Jedes Plugin ist anders. Abhängig vom Typ des Plugins müssen unterschiedliche Eigenschaften definiert werden, wenn die Plugin-basierte Schnittstelle in einer Journey verwendet wird.
Nachfolgend ein Beispiel für eine 'SMS out'-Schnittstelle, verwendet in einer Journey
:
Die 'SMS out'-Schnittstelle wird mit der Drag&Drop-Methode aus dem Schnittstellen-Ordner in der Baumansicht auf der linken Seite eingefügt. Mit einem Doppelklick auf die Komponente können Sie die Eigenschaften festlegen:
- Handynummer & Mobilfunkbetreiber: Wählen Sie die Werte für Handynummer und Mobilfunkbetreiber aus der Zielgruppentabelle bzw. verknüpften Tabelle aus. Der Mobilfunkbetreiber ist eine optionale Angabe.
- Nachricht: Beinhaltet die Daten für die SMS, einschließlich des Nachrichtentextes in der SMS. Beachten Sie, dass jeweils auch Personalisierungsfelder beinhaltet sein können. Die Schaltfläche neben dem Feld 'Nachricht' bietet Zugang zum Editor, über den Sie die Struktur der Nachricht festlegen können. Außerdem bietet der Editor eine Vorschau der Nachricht.
In der Nachricht können auch Personalisierungsfelder verwendet werden, genau wie in einer Mail. Die Nummer, an die Antwortnachrichten geschickt werden können, hängt vom jeweiligen Mobilfunkanbieter ab.
- Planungsmethode: Es können zwei Planungsmethoden verwendet werden: Sofortige Nachricht und Geplante Nachricht. Das Verhalten entspricht dem Verhalten beim Versenden von Mails.
- Feedback: Informationen zu jeder versendeten SMS, die in der Sitzungstabelle gespeichert werden. Wird eine Inbound-SMS empfangen, wird die Tabelle durchsucht, um den Kontakt zu identifizieren, der diese Antwort verschickt hat. (Genauere Informationen zur Verwaltung von Inbound-SMS finden Sie unter 'SMS-Dialog'.)
(Genauere Informationen zur Konfiguration finden Sie unter 'SMS-Komponente'.)
- Reiter 'Erweitert': Werden mehrere 'SMS out'-Schnittstellen definiert, ist es möglich, von einer Schnittstelle zur anderen zu wechseln.
Wird die oben beschriebene Journey ausgeführt, wird pro Kontakt in der Selektion ein Datensatz in die Schnittstellentabelle eingefügt. Die Verarbeitung der Datensätze in der Schnittstellentabelle hängt dann von den Einstellungen für diese Schnittstelle ab.
Hier ein Beispiel-Code, mit dem ein Plugin definiert wird:
publicboolWriteData(StringConfig,refStringXml,outStringErrorStr)
{
ErrorStr ="";
StringServer, Login, Pwd;
if(ParseConfig(Config,outServer,outLogin,outPwd,refErrorStr) ==false)
returnfalse;
m_Host.WriteLog("SmsGateway: Server ["+ Server +"], Login["+ Login +"], Pwd ["+ Pwd +"]",false);
NetXmlDoc iDoc =newNetXmlDoc();
if(iDoc.LoadXml(Xml) ==false)
{
ErrorStr ="Unable to parse instruction xml";
returnfalse;
}
NetXmlNode RecordsNode = iDoc.GetRootNode();
for(inti = 0; i < RecordsNode.GetChildCount(); i++)
{
NetXmlNode RecordNode = RecordsNode.GetChild(i);
StringNumber ="", Network ="", Content ="";
for(intn = 0; n < RecordNode.GetChildCount(); n++)
{
NetXmlNode ValueNode = RecordNode.GetChild(n);
StringName = ValueNode.GetAttribute("NAME");
StringValue = ValueNode.GetContent();
if(Name =="NUMBER") Number = Value;
if(Name =="NETWORK")Network = Value;
if(Name =="CONTENT")Content = Value;
}
m_Host.WriteLog("Sending: Network ["+ Network +"], Number ["+ Number +"], Content ["+ Content +"]",false);
RecordNode.SetAttribute("EXTID","1");
}
Xml = iDoc.GetXml();
returntrue;
}
