Skip to content

Commit

Permalink
Improving by adding full name
Browse files Browse the repository at this point in the history
  • Loading branch information
cmpsoares91 committed Jan 11, 2024
1 parent 922fbb5 commit b89a7e5
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions src/notify_webhook.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,10 @@ def create_message_for_teams(action, target_team_name, event_type, html_url, tit
]
}

def create_message_for_slack(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at):
def create_message_for_slack(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at, creator_full_name):
# Creating a message for Slack
return {
"text": f"{target_team_name} {action} in GitHub ({event_type}): {html_url}\nTitle: {title}\nCreated by: {creator} on {datetime.strptime(event_created_at, '%Y-%m-%dT%H:%M:%SZ').strftime('%Y-%m-%d %H:%M:%S')}\n![Avatar]({creator_avatar})"
"text": f"{target_team_name} {action} in GitHub ({event_type}): {html_url}\nTitle: {title}\nCreated by: {creator} ({creator_full_name}) on {datetime.strptime(event_created_at, '%Y-%m-%dT%H:%M:%SZ').strftime('%Y-%m-%d %H:%M:%S')}\n![Avatar]({creator_avatar})"
}

def main():
Expand All @@ -106,27 +106,30 @@ def main():
debug_log(f"Event type: {event_type}")

# Extract relevant data based on the type of event
comment_body, html_url, title, creator, creator_avatar, event_created_at = '', '', '', '', '', ''
comment_body, html_url, title, creator, creator_avatar, event_created_at, creator_full_name = '', '', '', '', '', ''
if 'comment' in event:
comment_body = event['comment']['body']
html_url = event['comment']['html_url']
creator = event['comment']['user']['login']
creator_avatar = event['comment']['user']['avatar_url']
event_created_at = event['comment']['created_at']
creator_full_name = event['comment']['user']['name']
elif 'pull_request' in event:
comment_body = event['pull_request']['body']
html_url = event['pull_request']['html_url']
title = event['pull_request']['title']
creator = event['pull_request']['user']['login']
creator_avatar = event['pull_request']['user']['avatar_url']
event_created_at = event['pull_request']['created_at']
creator_full_name = event['pull_request']['user']['name']
elif 'issue' in event:
comment_body = event['issue']['body']
html_url = event['issue']['html_url']
title = event['issue']['title']
creator = event['issue']['user']['login']
creator_avatar = event['issue']['user']['avatar_url']
event_created_at = event['issue']['created_at']
creator_full_name = event['issue']['user']['name']

# Load the team secrets configuration
if not os.path.exists(config_path):
Expand Down Expand Up @@ -167,11 +170,11 @@ def main():
action = "mentioned" if is_mentioned else "assigned" if is_assigned else "requested for review"
# Determine the payload based on the webhook URL
if 'office.com' in webhook_url:
payload = create_message_for_teams(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at)
payload = create_message_for_teams(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at, creator_full_name)
elif 'slack.com' in webhook_url:
payload = create_message_for_slack(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at)
payload = create_message_for_slack(action, target_team_name, event_type, html_url, title, creator, creator_avatar, event_created_at, creator_full_name)
else:
payload = {"text": f"{target_team_name} {action} in GitHub ({event_type}): {html_url}\nTitle: {title}\nCreated by: {creator} on {datetime.strptime(event_created_at, '%Y-%m-%dT%H:%M:%SZ').strftime('%Y-%m-%d %H:%M:%S')}\n![Avatar]({creator_avatar})"}
payload = {"text": f"{target_team_name} {action} in GitHub ({event_type}): {html_url}\nTitle: {title}\nCreated by: {creator} ({creator_full_name}) on {datetime.strptime(event_created_at, '%Y-%m-%dT%H:%M:%SZ').strftime('%Y-%m-%d %H:%M:%S')}\n![Avatar]({creator_avatar})"}

response = requests.post(webhook_url, json=payload)
if response.status_code == 200:
Expand Down

0 comments on commit b89a7e5

Please sign in to comment.