Files
databasus/notifier-teams.html
Rostislav Dugin 042e10c49c Revert "FEATURE (ssr): Migrate to NextJS"
This reverts commit b06e6043f9.
2025-11-09 17:53:59 +03:00

365 lines
14 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- Minified TailwindCSS -->
<link rel="stylesheet" href="styles.min.css" />
<!-- Primary Meta Tags -->
<title>How to send notifications from Postgresus to Teams | Postgresus</title>
<meta name="title" content="How to send notifications from Postgresus to Teams | Postgresus" />
<meta
name="description"
content="Step-by-step guide to configure Microsoft Teams notifications for PostgreSQL backups with Postgresus using Power Automate. Create an HTTP-triggered flow in Teams and copy its URL."
/>
<meta
name="keywords"
content="Postgresus, Microsoft Teams notifications, Power Automate, HTTP request trigger, PostgreSQL backup, Teams channel notifications, database backup"
/>
<link rel="canonical" href="https://postgresus.com/notifier-teams" />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website" />
<meta property="og:url" content="https://postgresus.com/notifier-teams" />
<meta property="og:title" content="How to send notifications from Postgresus to Teams | Postgresus" />
<meta
property="og:description"
content="Step-by-step guide to configure Microsoft Teams notifications for PostgreSQL backups with Postgresus using Power Automate. Create an HTTP-triggered flow in Teams and copy its URL."
/>
<meta property="og:image" content="https://postgresus.com/logo.svg" />
<!-- Twitter -->
<meta property="twitter:card" content="summary" />
<meta property="twitter:url" content="https://postgresus.com/notifier-teams" />
<meta property="twitter:title" content="How to send notifications from Postgresus to Teams | Postgresus" />
<meta
property="twitter:description"
content="Step-by-step guide to configure Microsoft Teams notifications for PostgreSQL backups with Postgresus using Power Automate. Create an HTTP-triggered flow in Teams and copy its URL."
/>
<meta property="twitter:image" content="https://postgresus.com/logo.svg" />
<!-- Favicons -->
<link rel="icon" type="image/x-icon" href="favicon.ico" />
<link rel="icon" type="image/svg+xml" href="favicon.svg" />
<link rel="apple-touch-icon" href="favicon.svg" />
<link rel="shortcut icon" href="favicon.ico" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap"
rel="stylesheet"
/>
<link rel="stylesheet" href="index.css" />
<script async src="https://www.googletagmanager.com/gtag/js?id=G-GE01THYR9X"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'G-GE01THYR9X');
</script>
</head>
<body>
<!------------------ NAVBAR ------------------------->
<nav
class="fixed left-0 right-0 top-0 z-50 flex h-[60px] justify-center bg-white px-4 sm:h-[70px] md:h-[80px]"
>
<div
class="flex w-[320px] min-w-0 max-w-[320px] grow items-center border-b sm:w-[640px] sm:max-w-[640px] lg:w-[1200px] lg:max-w-[1200px]"
>
<a href="/" class="flex items-center">
<img
src="logo.svg"
loading="eager"
alt="Postgresus logo"
width="35"
height="35"
class="flex-shrink-0 sm:h-[40px] sm:w-[40px] md:h-[50px] md:w-[50px]"
/>
<div class="ml-2 text-lg font-bold sm:ml-3 sm:text-xl md:ml-4 md:text-2xl">
Postgresus
</div>
</a>
</div>
</nav>
<!------------------ END OF NAVBAR ------------------>
<!------------------ MAIN CONTENT ------------------------->
<div class="flex justify-center py-[50px] pt-[110px] md:py-[100px] md:pt-[180px]">
<main
class="w-[320px] max-w-[320px] sm:w-[640px] sm:max-w-[640px] lg:w-[1200px] lg:max-w-[1200px]"
>
<div class="max-w-[800px]">
<h1 class="mb-6 max-w-[650px] text-2xl font-bold sm:text-4xl">
How to send notifications from Postgresus to Microsoft Teams
</h1>
<p class="mb-8 max-w-[600px] text-lg text-gray-700">
To send notifications to Microsoft Teams you will:
</p>
<div class="space-y-8">
<!-- How to create Power Automate URL -->
<div class="pl-6">
<h2 class="mb-4 text-2xl font-semibold">How to create a Power Automate URL (inside Teams)</h2>
<div class="space-y-4">
<!-- Step 1 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>1</span
>
Open Teams and go to the Teams section on the left side
</h3>
<div class="space-y-2">
<p class="text-gray-700">
If you don't have a group yet, create it as shown in the screenshot, if it already exists, then go to section #2
</p>
<img
src="images/notifier-teams/image-01.png"
alt="Open Power Automate app in Microsoft Teams"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
</div>
<!-- Step 2 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>2</span
>
Creation of flow
</h3>
<p class="mb-2 text-gray-700">
Select the desired channel and click on the three dots. Then select Workflows
</p>
<img
src="images/notifier-teams/image-02.png"
alt="Select environment in Power Automate"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Step 3 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>3</span
>
Create the flow (HTTP trigger)
</h3>
<p class="text-gray-700">
In the new window, select the flow type - Send webhook alerts to a channel.
</p>
<img
src="images/notifier-teams/image-03.png"
alt="Create Automated cloud flow with HTTP trigger"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Step 4 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>4</span
>
(Optional) If necessary, you can change the name of the Flow (optional)
</h3>
<p class="mb-2 text-gray-700">
The name Flow does not affect its operation.
</p>
<img
src="images/notifier-teams/image-04.png"
alt="Create Automated cloud flow with HTTP trigger"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Step 5 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>5</span
>
(Optional)You can choose which channel to send Flow to.
</h3>
<img
src="images/notifier-teams/image-05.png"
alt="Add Teams action: Post a message in a chat or channel"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Step 6 -->
<div class="border-l-4 border-green-500 pl-6">
<h3 class="mb-3 flex items-center text-xl font-semibold">
<span
class="mr-3 flex h-8 w-8 items-center justify-center rounded-full bg-green-500 text-sm text-white"
>6</span
>
Save and copy the HTTP URL
</h3>
<p class="text-gray-700">
At the bottom of the window you will have a url that you need to copy and paste into the Postgresus settings.
</p>
<img
src="images/notifier-teams/image-06.png"
alt="Copy HTTP POST URL from the trigger"
class="mb-4 mt-3 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Connect in Postgresus -->
<div class="pl-6">
<h2 class="mb-4 text-2xl font-semibold">Connect the URL in Postgresus</h2>
<ol class="ml-2 list-inside list-decimal space-y-2 text-gray-700">
<li>Open <strong>Postgresus</strong>.</li>
<li>Go to <strong>Settings</strong><strong>Notifiers</strong><strong>Teams</strong>.</li>
<li>Paste the <strong>URL</strong> you copied from Teams.</li>
<li>Click <strong>Send test notification</strong> in Postgresus and check the chosen Teams channel for the message.</li>
</ol>
<img
src="images/notifier-teams/image-07.png"
alt="Paste the flow URL into Postgresus"
class="mb-8 mt-5 max-w-[600px] rounded-lg border border-gray-200 shadow-lg"
loading="lazy"
/>
</div>
<!-- Final Step -->
<div class="max-w-[600px] rounded-lg border border-green-200 bg-green-50 p-6">
<h2 class="mb-3 text-xl font-semibold text-green-800">🎉 Setup Complete!</h2>
<p class="text-green-700">
Your Power Automate flow is connected. Postgresus can now send backup notifications
directly to your selected Microsoft Teams chat or channel.
</p>
</div>
</div>
<!-- Navigation -->
<div class="mt-12 border-t border-gray-200 pt-8">
<a
href="/"
class="inline-flex items-center font-semibold text-blue-600 hover:text-blue-800"
>
← Back to main page
</a>
</div>
</div>
</main>
</div>
<!------------------ END OF MAIN CONTENT ------------------>
<!------------------ FOOTER SECTION -------------------------------->
<div id="footer" class="flex justify-center bg-blue-600 py-[50px] md:py-[50px]">
<div
class="w-[320px] max-w-[320px] sm:w-[640px] sm:max-w-[640px] lg:w-[1200px] lg:max-w-[1200px]"
>
<div class="flex flex-col items-center space-y-4">
<div class="flex flex-wrap justify-center gap-6 text-white">
<a
href="https://github.com/RostislavDugin/postgresus"
target="_blank"
class="transition-colors hover:text-blue-200"
>
GitHub
</a>
<a
href="https://t.me/postgresus_community"
target="_blank"
class="transition-colors hover:text-blue-200"
>
Community
</a>
<a
href="https://rostislav-dugin.com"
target="_blank"
class="transition-colors hover:text-blue-200"
>
Developer
</a>
</div>
<p class="text-center text-sm text-white">&copy; 2025 Postgresus. All rights reserved.</p>
</div>
</div>
</div>
<!------------------ END OF FOOTER SECTION ------------------------->
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (m, e, t, r, i, k, a) {
m[i] =
m[i] ||
function () {
(m[i].a = m[i].a || []).push(arguments);
};
m[i].l = 1 * new Date();
for (var j = 0; j < document.scripts.length; j++) {
if (document.scripts[j].src === r) {
return;
}
}
((k = e.createElement(t)),
(a = e.getElementsByTagName(t)[0]),
(k.async = 1),
(k.src = r),
a.parentNode.insertBefore(k, a));
})(window, document, 'script', 'https://mc.yandex.ru/metrika/tag.js?id=103482608', 'ym');
ym(103482608, 'init', {
ssr: true,
clickmap: true,
ecommerce: 'dataLayer',
accurateTrackBounce: true,
trackLinks: true,
});
</script>
<noscript
><div>
<img
src="https://mc.yandex.ru/watch/103482608"
style="position: absolute; left: -9999px"
alt=""
/></div
></noscript>
<!-- /Yandex.Metrika counter -->
</body>
</html>