invoke() Function (SLAX and XSLT)
Namespaces
http://xml.juniper.net/junos/commit-scripts/1.0
SLAX-Syntax
var $result = jcs:invoke(rpc, "no-login-logout");
XSLT-Syntax
<xsl:variable name="result" select="jcs:invoke(rpc)"/>
Beschreibung
Rufen Sie einen Remoteprozeduraufruf (Remote Procedure Call , RPC) auf dem lokalen Gerät auf. Für die Funktion ist ein Argument erforderlich, entweder eine Zeichenfolge, die einen Junos XML API RPC enthält, oder eine Struktur, die einen RPC enthält. Das Ergebnis enthält den Inhalt des <rpc-reply>
Elements, ohne das <rpc-reply>
Tag. Mit einem RPC können Sie Funktionen ausführen, die den Befehlen im Betriebsmodus von Junos OS entsprechen.
Python-Automatisierungsskripts können Junos PyEZ-APIs verwenden, um RPCs auf einem lokalen oder Remote-Gerät auszuführen.
Parameter
rpc |
Zeichenfolge, die einen Junos XML API RPC oder eine Struktur mit einem RPC enthält. |
no-login-logout |
(Optional) Unterdrücken Sie in SLAX-Commit- und Ereignisskripts UI_LOGIN_EVENT und UI_LOGOUT_EVENT Meldungen in Systemprotokolldateien, wenn sich das Skript als root anmeldet, um den RPC auszuführen. |
Rückgabewert
result |
Ergebnisse des ausgeführten RPC, die den Inhalt des |
Anwendungsbeispiele
Im folgenden Beispiel wird getestet, ob das interface
Argument in der Befehlszeile enthalten ist, wenn das Skript ausgeführt wird. Wenn das Argument angegeben wird, wird die Ausgabe des Befehls für den show interfaces terse
Betriebsmodus so eingeschränkt, dass sie nur Informationen über die angegebene Schnittstelle enthält.
<xsl:param name="interface"/> <xsl:variable name="rpc"> <get-interface-information> <terse/> <xsl:if test="$interface"> <interface-name> <xsl:value-of select="$interface"/> </interface-name> </xsl:if> </get-interface-information> </xsl:variable> <xsl:variable name="out" select="jcs:invoke($rpc)"/>
In diesem Beispiel ruft die jcs:invoke()
Funktion den Junos XML API RPC get-software-information
auf und speichert die unveränderte Ausgabe in der Variablen sw
:
<xsl:variable name="sw" select="jcs:invoke('get-software-information')"/>
Informationen zur Veröffentlichung
Diese Funktion wurde in Junos OS Version 7.6 eingeführt.
no-login-logout
Parameter wurde in Junos OS Version 21.1R1 für Commit- und Ereignisskripte hinzugefügt.