def handler(event, context): process_name = os.environ["process_name"] if (not process_name): response = { "statusCode": 200, "body": json.dumps({"message": _("process_name not found")}) } return response activities = json.loads(event["body"]) if isinstance(activities, dict): activities = [activities] issues = [] for activity in activities: issues.append({ "project_id": activity["project"]["id"], "issue_id": activity["id"], "type_id": activity["type"] }) if len(issues) == 0: response = { "statusCode": 200, "body": json.dumps({"message": _("This webhook was ignored")}) } return response message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": json.dumps({"message": message})} return response
def handler(event, context): process_name = os.environ["process_name"] if (not process_name): response = { "statusCode": 200, "body": json.dumps({"message": _("process_name not found")}) } return response if os.environ["secret"] or "X-Hub-Signature" in event["headers"]: secret = os.environ["secret"] digest, signature = event["headers"]["X-Hub-Signature"].split("=") msg = str(event["body"]) if not verify_signature(secret, msg, signature, digest): response = { "statusCode": 403, "body": json.dumps({"error": _("Secret and Signature mismatch")}) } return response event_type = event['headers']['X-GitHub-Event'] payload = json.loads(event["body"]) message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": json.dumps({"message": message})} return response
def handler(event, context): params = parse_qs(event["body"]) token = params["token"][0] if token != os.environ["verification_token"]: message = _("Request token does not match") response = {"statusCode": 403, "error": message} return response process_name = None if "text" in params: process_name = params["text"][0] available_processes = [ s.strip() for s in os.environ["available_processes"].split(',') ] if (not process_name or process_name not in available_processes): message = _("Available process name are {}").format( ", ".join(available_processes)) response = {"statusCode": 200, "body": message} return response message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": message} return response
def handler(event, context): languages = [os.environ["language"]] if "Accept-Language" in event["headers"]: languages = [ s.split(";")[0] for s in event["headers"]["Accept-Language"].split(',') ] trans = gettext.translation('messages', localedir='locale', languages=languages, fallback=True) trans.install() env = jinja2.Environment(loader=jinja2.FileSystemLoader('./templates', encoding='utf8'), extensions=['jinja2.ext.i18n']) env.install_gettext_translations(trans) process_name = None if event["body"] is not None: params = parse_qs(event["body"]) if "process_name" in params: process_name = params["process_name"][0] elif event["queryStringParameters"] is not None: params = event["queryStringParameters"] if "process_name" in params: process_name = params["process_name"] available_processes = [ s.strip() for s in os.environ["available_processes"].split(',') ] if (not process_name or process_name not in available_processes): tpl = env.get_template('request.tpl.html') url = "https://" + event["requestContext"]["domainName"] + event[ "requestContext"]["path"] response = { "statusCode": 200, "headers": { 'Content-Type': 'text/html;charset=UTF-8' }, "body": tpl.render({ "available_processes": available_processes, "url": url }) } return response message = uipath.start_jobs(process_name) tpl = env.get_template('response.tpl.html') response = { "statusCode": 200, "headers": { 'Content-Type': 'text/html;charset=UTF-8' }, "body": tpl.render({"message": message}) } return response
def handler(event, context): process_name = None if "process_name" in event["placementInfo"]["attributes"]: process_name = event["placementInfo"]["attributes"]["process_name"] if (not process_name): response = { "statusCode": 200, "body": json.dumps({ "message": _("process_name not found") }) } return response message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": json.dumps({"message": message})} return response
def handler(event, context): process_name = os.environ["process_name"] if (not process_name): response = { "statusCode": 200, "body": json.dumps({"message": _("process_name not found")}) } return response if os.environ["secret"] or "X-Hook-Secret" in event["headers"]: secret = os.environ["secret"] signature = event["headers"]["X-Hook-Secret"] msg = str(event["body"]) if not verify_signature(secret, msg, signature): response = { "statusCode": 403, "body": json.dumps({"error": _("Secret and Signature mismatch")}) } return response events = json.loads(event["body"]) if isinstance(events, dict): events = [events] accepted_events = [] for event in events: if event["eventType"] in valid_events: accepted_events.append({ "webhookId": event["webhookId"], "eventType": event["eventType"] }) if len(accepted_events) == 0: response = { "statusCode": 200, "body": json.dumps({"message": _("This webhook was ignored")}) } return response message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": json.dumps({"message": message})} return response
def handler(event, context): body = json.loads(event["body"]) token = body["token"] if token != os.environ["verification_token"]: response = { "statusCode": 403, "error": json.dumps({"text": _("Request token does not match")}) } return response if body["type"] != "MESSAGE": response = { "statusCode": 200, "body": json.dumps({"message": _("This webhook was ignored")}) } return response process_name = body["message"]["argumentText"].strip() available_processes = [ s.strip() for s in os.environ["available_processes"].split(',') ] if (not process_name or process_name not in available_processes): response = { "statusCode": 200, "body": json.dumps({ "text": _("Available process name are {}").format( ", ".join(available_processes)) }) } return response message = uipath.start_jobs(process_name) response = {"statusCode": 200, "body": json.dumps({"text": message})} return response