The handler or web hook described here processes callbacks from the GrabzIt screenshot web service. The URL of this handler is passed to GrabzIt in the callBackURL
parameter of the Save method.
However this technique will only work if the handler is accessible via the Internet.
The following parameters are passed to the handler as GET parameters.
If you want to block all access to the handler, except from GrabzIt then use this security technique.
This example shows how the GrabzIt Python handler can be implemented. This captures six parameters passed to it from the GrabzIt service, including the unique id of the screenshot which is passed to the GetResult method.
This method then returns the screenshot, which is saved in the results directory. However if a null
value is returned from the GetResult method this indicates that an error has occured.
import os import cgi from GrabzIt import GrabzItClient from ConfigParser import SafeConfigParser form = cgi.FieldStorage() message = form.getvalue("message") customId = form.getvalue("customid") id = form.getvalue("id") filename = form.getvalue("filename") format = form.getvalue("format") targeterror = form.getvalue("targeterror") # Custom id can be used to store user ids or whatever is needed for the later processing of the # resulting screenshot grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")%>") result = grabzIt.GetResult(id) if result != None: # Ensure that the application has the correct rights for this directory. fo = open("results" + os.sep + filename, "wb") fo.write(result) fo.close() print "Status: 200 OK" print