def main(event): # Slack Error if reason := jmespath.search('headers."X-Slack-Retry-Reason"', event): print(reason) return Slack.server_response(500, headers={'X-Slack-No-Retry': 1})
def lambda_handler(event, context): body = parse_qs(event['body']) print(body) # TODO: timeout control return Slack.server_response(200, body=command_main(body))
Payload=json.dumps(event).encode()) @classmethod def bot_message(cls, event): lambda_client = boto3.client('lambda') lambda_client.invoke(FunctionName='event_bot_message', InvocationType='Event', Payload=json.dumps(event).encode()) def dispatcher(cls, event, query): body = json.loads(event.get('body')) query_diverge = getattr(cls, jmespath.search(query, body) or '', None) if callable(query_diverge): return query_diverge(event) def main(event): # Slack Error if reason := jmespath.search('headers."X-Slack-Retry-Reason"', event): print(reason) return Slack.server_response(500, headers={'X-Slack-No-Retry': 1}) result = dispatcher(TypeDiverge, event, 'type') return Slack.server_response(200, body=result) def lambda_handler(event, context): print(event.get('body')) return main(event)