Both live under Settings, which owners and admins can open from the sidebar. Only owners and admins can connect or change them.
Slack: hear about client activity
Settings → Slack posts to Slack when a client does something on the portal. Your own team's activity is never posted.
- Choose Connect Slack and approve the app in Slack.
- Under Channel, choose where messages go and choose Save channel. Nothing is sent until you pick a channel. For a private channel, invite the app to it in Slack first, or it won't appear in the list.
- Under What gets posted, all three are on by default:
- Client raised a ticket
- Client commented
- Client approved or rejected
- Optionally, under Per service desk, send a particular client's desk to its own channel. Anything not set there uses the default channel.
Each message names the client, the ticket and what they said, and has an Open ticket button.
Disconnect stops the messages and clears any per-desk channels. To remove the app from Slack as well, uninstall it there. If someone uninstalls it from Slack first, Timelint notices and disconnects itself.
GitHub: commits and pull requests on tickets
Settings → GitHub works through a webhook. Timelint asks for no access to your code and stores no GitHub credentials.
- Choose Create webhook details.
- In GitHub, open your organisation's (or a single repository's) Settings → Webhooks → Add webhook, and copy across:
- Payload URL: the address shown, which only your workspace has.
- Content type:
application/json. - Secret: reveal and copy it.
- Choose Let me select individual events and tick Pushes, Pull requests and Pull request reviews.
- Save the webhook. GitHub sends a test ping, and the status changes from "Waiting for GitHub" to "Receiving".
- Under Repositories, choose Link projects next to each repository and tick the projects it belongs to. A repository appears here the first time GitHub sends something for it. Nothing is stored for a repository until it's linked.
How activity finds its ticket
Put the ticket key in the branch name, the pull request title or the commit message, for example fix/HCS-12-checkout-crash. Timelint looks for the key of any project linked to that repository, in either case, and tries the branch first, then the title or commit subject, then the message or PR description.
Matching activity appears in a Code card on the ticket: commits, pull requests opened, merged and closed, and reviews, each linking back to GitHub.
New secret issues a fresh signing secret, which you then paste into GitHub. Disconnect stops new activity arriving and keeps what's already on tickets.