#!/usr/bin/python import SocketServer import re status="down" class FenceHandler(SocketServer.BaseRequestHandler): def handle(self): global status self.data = self.request.recv(4096) re_get_name = re.compile("GET /api/vms/\?search=name%3D(.*) HTTP/1.1",re.IGNORECASE) result_name = re_get_name.search(self.data) #If there is no Get, it's a posted action if result_name == None: self.request.send("HTTP/1.1 200 OK\r\nContent-Type: application/xml\r\n\r\n\r\n") status="up" return #Else it's a normal request, answer ... name = "none" if result_name != None: name = result_name.group(1) self.request.send("HTTP/1.1 200 OK\r\nContent-Type: application/xml\r\n\r\n"+name+"server"+status+"\r\n") status = "down" if __name__ == "__main__": HOST, PORT = "0.0.0.0", 9999 server = SocketServer.TCPServer((HOST, PORT), FenceHandler) server.serve_forever()