notify

tauri-plugin-notification を使って OS レベルの通知 (macOS は通知センター、Windows はアクションセンター) を投稿します。

インポート

import { notify } from "@fluxlay/react";

シグネチャ

interface NotifyOptions {
  title: string;
  body?: string;
}
 
function notify(options: NotifyOptions): Promise<void>;

引数

フィールド説明
titlestring必須。通知タイトルとして表示される。空文字を渡すと 400 になる。
bodystring任意。通知本文として表示される。

使い方

import { notify } from "@fluxlay/react";
 
await notify({
  title: "Pomodoro 完了",
  body: "5 分間の休憩を取りましょう。"
});

用途

壁紙 webview からブラウザの Notification API は使えません。Notification.requestPermission() のプロンプトを表示する UI surface が壁紙 origin に存在しないため、許可を取得できないためです。代わりにホストプロセスが OS の通知権限を所有し、壁紙の代わりに通知を投稿します。

備考

  • インストール直後の Fluxlay アプリで初回 notify を呼ぶと、Fluxlay プロセスに対する OS の通知許可ダイアログが出ることがある。ユーザが拒否しても以降の notify は成功扱いで resolve するが、通知は表示されない。
  • macOS では署名・notarize 済みの本番ビルドでないと通知が表示されないことがある。開発ビルドではローカルの code-sign 設定によって挙動が変わる。
  • SDK 側にレート制限はない。連投を防ぐために、壁紙側で意味のある状態変化に絞って呼ぶこと (1 イベントにつき 1 通知が目安)。
  • 通知クリック時のハンドラやアクションボタンは現バージョンでは未対応。titlebody のみサポート。