Hourly
Keep a live status message in a Teams channel
One message in your channel always shows the latest status, instead of a new post every hour.
- Runs
- Hourly
- Apps
- Microsoft Teams
- AI
- Not needed
- Access
- write (ChannelMessage.Send)
Send this to your assistant
Create a ClickRuntime automation: post a status message to our Release channel in Teams, then every hour update that same message with the current text from https://status.example.com/release.txt.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A deployment dashboard, an incident war room or a shared project board in Teams all share one problem: the status changes, and the channel fills with a long trail of messages saying so. People scroll to find the latest one, trust an old message that is no longer true, or ask in chat whether the system is back up. During an incident, being wrong about the current state wastes real time and money.
On the first run, ClickRuntime posts a status message in your Teams channel and stores its ID. On each later run, hourly by default, it edits that same message with the latest status instead of posting a new one. There is always one message to read, and it is current.
Operations teams, project managers and support leads use it to keep a single live status in a place everyone already looks.
What you get out of it
One message that is always right
People do not have to scroll through twenty updates to find the current one. Whatever they read at the top of the channel is the latest state, which avoids decisions based on stale information.
The channel stays readable
Editing in place keeps the channel clear of repeated status posts. Conversation and the status line do not drown each other, and people can still discuss what is happening below it.
Fewer questions in chat
If everyone can see that the status is up to date, nobody needs to ask whether things are back to normal. That frees the incident lead to work on the problem instead of answering the same question.
Pinning makes it a dashboard
A message that is always current can be pinned at the top of the channel. New members and busy managers find it immediately, without learning where status is kept. Everyone learns where to look.
The update rhythm is steady
Refreshing hourly means the message never gets more than an hour old. People learn they can rely on it, and stop checking other sources for the same information. That trust saves effort during incidents.
Fewer duplicate posts to clean up
Without this, teams end up deleting old updates or arguing about which post is final. A single edited message avoids the clutter and the confusion. The channel stays easy to scan afterwards for later review.
How it works
What happens, step by step
Every hour ClickRuntime reads the latest status from your status page, such as a release in progress.
The first time, it posts the status as a message in your Microsoft Teams channel.
After that it edits the same message instead of posting a new one, so the channel always shows one up-to-date status.
Before it runs live
- Connect Microsoft Teams
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Microsoft Teams steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http, state
GRAPH = "https://graph.microsoft.com/v1.0"
TEAM_ID, CHANNEL_ID = "your-team-id", "19:release-channel-id@thread.tacv2"
STATUS_URL = "https://status.example.com/release.txt"
@on_trigger
def run(event):
text = http.get(STATUS_URL).text.strip()[:2000]
headers = {"Authorization": f"Bearer {credentials.connection('microsoft', 'work')}"}
base = f"{GRAPH}/teams/{TEAM_ID}/channels/{CHANNEL_ID}/messages"
message_id = state.get("message_id")
if message_id is None:
resp = http.post(base, headers=headers, json={"body": {"content": text}})
resp.raise_for_status()
state.set("message_id", resp.json()["id"])
elif text != state.get("last_text"):
http.patch(f"{base}/{message_id}", headers=headers, json={"body": {"content": text}}).raise_for_status()
state.set("last_text", text)
return {"status": text[:80]}FAQ
Common questions
What happens if someone deletes the status message?
Can the update include a timestamp?
Can I update it more often than hourly?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Post a scheduled reminder in Teams
Your channel gets the same reminder at the same time, without anyone having to remember to post it.
See how it worksGet a monthly list of inactive Teams guests
Each month you see the guest accounts that haven't signed in for 90 days, so you can remove them.
See how it worksGet a weekly summary of a Teams channel
Each Friday you get a short report of what each person discussed in the channel that week.
See how it worksKeep exploring
Set up “Keep a live status message in a Teams channel” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.