A skill that automatically invites people who reacted with an emoji to a Slack message to a Google Calendar event.
Step 1: Collect links
Receive two links from the user.
- Slack message link: the link of the message that received emoji reactions
- In Slack, right-click the message → "Copy link"
- 예:
https://eo2019.slack.com/archives/C01N15328HG/p1772186298231169
- Google Calendar event link: the edit URL of the event to invite to
- In Calendar, click the event → pencil (edit) icon → copy the URL from the address bar
- 예:
https://calendar.google.com/calendar/u/0/r/eventedit/NGhwY3Y4...
If the two links have not yet been received, request them with AskUserQuestion:
AskUserQuestion({
"questions": [
{
"question": "이모지 반응을 받은 Slack 메시지 링크를 붙여넣으세요.",
"header": "Slack 링크",
"options": [
{"label": "링크 준비됨", "description": "다음 단계로 진행"},
{"label": "링크 찾는 중", "description": "메시지 우클릭 → 링크 복사"}
],
"multiSelect": false
}
]
})
Step 2: Run the script
Once the two links are received, run the command below.
cd C:\Users\ash\ash
printf 'y\n' | PYTHONIOENCODING=utf-8 python scripts/tools/slack_to_gcal.py \
--slack "[SLACK_링크]" \
--cal "[CALENDAR_링크]"
[SLACK_링크]와[CALENDAR_링크]with the actual links provided by the usertoken_calendar.jsonIf present, it runs immediately without Google login
Step 3: Summarize results
Organize and show the script output in a readable way:
✅ 완료!
이벤트: [이벤트 제목]
일시: [날짜/시간]
이모지 반응자 총 N명
├── 새로 초대됨 (N명): 이름, 이름, 이름
└── 이미 초대됨 (N명): 이름, 이름
Notes
- Script location:
scripts/tools/slack_to_gcal.py - Google Calendar token:
token_calendar.json(requires browser login once initially) - Slack bot token:
.env의SLACK_BOT_TOKEN - Required scopes:
reactions:read,users:read,users:read.email