Integrieren Sie benutzerdefinierte Steuerungen
Implementieren und nutzen Sie benutzerdefinierte Steuerungen, die mit dem benutzerdefinierten Steuerungs-Framework in Ihrer Integration erstellt wurden.
Vorbereitungen
Erforderliche Rolle: virtual_agent_admin oder admin
Warum und wann dieser Vorgang ausgeführt wird
Ordnen Sie einem Provider-Kanal benutzerdefinierte Steuerungen zu.
- Implementieren Sie benutzerdefinierte Steuerungen, die in erstellt wurden Flow Designer
- Verwenden Sie das Beispielskript, um benutzerdefinierte Steuerungen zu implementieren, die in Flow Designererstellt wurden.Beispiel: Unterstützung für benutzerdefinierte Steuerungen
{ uiType: "CustomControl", group: "DefaultCustomControl", name: "The name of the Custom Control (sys_cs_custom_control.name)", required: true/false, uxComponentDefinitionSysId: "seismicComponentId" // or null if not isInput: true/false, // whether to wait for a response value or if just output serializedControlData: "User defined JSON from generateControlData function"; }Beispiel: Skript für benutzerdefinierte Steuerungen(function execute(inputs, outputs) { var rich_controls = inputs.rich_control; //this is the data returned from the 'serialized control data function' defind in designer var serializedControlData = rich_control['serializedControlData']; // if this rich control will require a response to move forward in topic flow var isInput = rich_control['isInput']; // if the component is suggesting using a Seismic control (web) that handles this var uxComponentDefinitionId = rich_control['uxComponentDefinitionSysId']; // the name of the custom control var name - rich_control['name']; // 1) now perform some logic to transform this data into a custom ui (slack/facebook/sms ascii art/html/etc) // 2) attach to outputs, i.e. outputs.text_message='foo :)'; for sms twillio // basic flow is to take the serializedControlData/Name/compId(optional) and create a custom UI component here // that your client understands (i.e. a slack rich form payload) })(inputs, outputs); - Implementieren Sie eine providerspezifische Transformation eines benutzerdefinierten Steuerelements
- Sie können eine providerspezifische Transformation für jedes benutzerdefinierte Steuerelement implementieren, indem Sie das Feld Untertyp in der Tabelle „Benutzerdefinierte Adapterkonfiguration“ [ sys_cs_custom_adapter_config ] verwenden. Bei Bedarf können Sie eine neuere Version eines benutzerdefinierten Steuerelements oder ein vorgefertigtes ServiceNow benutzerdefiniertes Steuerelement veröffentlichen, das auch als benutzerdefiniertes Standardsteuerelement bezeichnet wird. Dies umfasst die Veröffentlichung der entsprechenden eingehenden und ausgehenden Flow Designer-Aktionsskripts und die Aktualisierung der Konfiguration in der Tabelle „Benutzerdefinierte Adapterkonfiguration“ [sys_cs_custom_adapter_config].
- Wenn Sie Ihre eigene Version eines benutzerdefinierten Steuerelements ServiceNow veröffentlichen, überschreiben Sie den benutzerdefinierten Steuerungsdatensatz in der Tabelle „Benutzerdefinierte Adapterkonfiguration“ mit Ihren eigenen eingehenden und ausgehenden Aktionsskriptnamen.
- Es ist nur ein Datensatz mit demselben Untertyp zulässig. Wenn dieselbe benutzerdefinierte Steuerung von zwei verschiedenen Parteien implementiert wird, kann nur eine den vorhandenen Datensatz mit neuen eingehenden und ausgehenden Umwandlern aktualisieren.
Hinweis:Sobald Sie einen vorhandenen benutzerdefinierten Steuerungsdatensatz überschrieben haben, verwendet das System die neue Version der benutzerdefinierten Steuerung. Beispielsweise können Transformationsskripts mehrere benutzerdefinierte Steuerelemente wie Zeitauswahl und Auth umwandeln. Wenn Sie ein Zeitauswahl-Steuerelement mit unterschiedlichen eingehenden und ausgehenden Transformationen hinzufügen, wird das neuere Zeitauswahl-Steuerelement verwendet. Sie können die ursprüngliche Version der benutzerdefinierten Steuerung nicht wiederherstellen.