# Who Came > Review who attended a meeting and for how long. Paste an attendance report - a Google Meet attendance sheet, a Zoom > participants export, a Microsoft Teams attendance report, or plain lines like "Name 10:02-10:41, 10:45-11:00" - and > the invite list, with a star before anyone the meeting needed. The page merges each person's rejoins, clips them to > the scheduled slot and lays the meeting out as a roll-call register with a headcount curve: who was late, who left > early, who dropped out and when, who never joined. A metered run decides each flagged person's follow-up - send the > recap, check in, or nothing - says whether the meeting had the people it needed, and drafts the recap message. It > never guesses why anyone was late. Built on the SkillSafe skill @googleworkspace/recipe-review-meet-participants. https://who-came.skillsafe.ai/ ## What is free - Reading reports: the header row is found by its columns (a name or first and last name, a join time, a leave time or a duration); with several tables, as in a Teams report, the one with a row per session is used. Times can be 24-hour or AM/PM, with or without dates; a time-zone suffix is ignored. Without a header, lines with a name and pairs of times are read. - Merging: rows are joined per person by email, else by name; a gap of a minute or more is a drop-out. A Meet sheet's total shorter than its first-to-last span is time away the report does not place. - The invite list: one per line or comma separated, a name and/or an email; matched by email, name, or an email like first.last@. Invitees who never joined get an empty row; people who joined without an invite are marked. - Flags: late or early by five minutes or more, any drop-out, five minutes or more away, under half the slot, or absent. - The register (PNG, SVG), the headcount curve, and a CSV with one row per person. - Three samples (Meet, Zoom, Teams) replay their saved follow-ups at no cost. ## The metered task One task, `attendance`, on gpt-terra, metered per run. Input string fields: `task`, `goal`, `meeting` (the slot, the counts, the most at once, who was needed), `people` (one line per person, `p1.` ...: joined, left, minutes present and the share, drop-outs, time away, minutes missed) and `flagged` (the ids to follow up). The reply is one JSON object: `verdict` (`covered` or `gaps`), `follow_up` (each `person`, `action` - `check_in`, `recap` or `none` - and `why`), `message` (the recap message) and `note`. The page checks each follow-up against its own rule (check in with a needed person who was absent or under half, or anyone who dropped out twice; a recap for anyone else who missed ten minutes or more), the verdict against its own count, every time and number against the report, and warns when the reply guesses a reason or uses a gendered pronoun. ## Links - API tutorial: https://who-came.skillsafe.ai/api.html - Source skill: https://skillsafe.ai/skill/@googleworkspace/recipe-review-meet-participants