Script d'exemple

Le script suivant est fourni comme exemple pour le plug-in Script Lookup. Il est écrit en langage Python 2.6. Le but de ce script est de fournir un exemple de fonctionnement de base pour enregistrer des scripts en langage Python qui peut être utilisé pour des plug-ins de consultation de script.
Ce script contient la clé de paramètre de consultation
date-sent
et renvoie la "valeur de script" pour l'attribut personnalisé
Script-attribute
.
Python étant strict concernant les conditions de renfoncement, si vous copiez/collez ce script d'exemple, vous devrez vraisemblablement le reformater de sorte qu'il apparaisse exactement comme affiché ici.
__name__="__main__" import sys, os, traceback import commands # Switch this to 0 when in production mode. debugMode = 1 def main(args): try: attributeMap = parseInput(args) # This is the lookup parameter key. # Comment-out this line for testing the script standalone. dateSent = attributeMap["date-sent"] # "Script-attribute" is the custom attribute. # "script value" is the return value. # You cannot have a space between the custom attribute and the # attribute value. For example, "Script-attribute = script value" # Does not work for Script Lookup Plugins. print "Script-attribute=script value" return except: error() print "something went wrong!" return "something went wrong!" def parseInput(args): # Input data is a list of key value pairs seperated by carraige return # Create a python dictionary to create the attribute map attributeMap = {} delimiter = "=" for item in args: if delimiter in item: tuple = item.split(delimiter) attributeMap[tuple[0]] = tuple[1] return attributeMap def error(): # "SCRIPT PROCESSING ERROR" if(debugMode): #print "Script Processing Error" traceback.print_exc(file=sys.stdout) return "" #----------------------------------------------------------------- # DOS-style shells (for DOS, NT, OS/2): #----------------------------------------------------------------- def getstatusoutput(cmd): """ Return (status, output) of executing cmd in a shell.""" pipe = os.popen(cmd + ' 2>&1', 'r') text = pipe.read() sts = pipe.close() if sts is None: sts = 0 if text[-1:] == '\n': text = text[:-1] return sts, text #----------------------------------------------------------------- # Entry Point #----------------------------------------------------------------- if __name__ == "__main__": if(len(sys.argv) == 0): error() else: main(sys.argv)