簡単にスマホに通知を送れるツール「ntfy」

管理人は普段、PCで自動処理を実行することが多く、処理が完了したとき等にスマートフォンへ通知を送っています。

これまでは通知を送る方法として、Line Notifyを利用していたのですが、2024年10月にサービスが終了することが発表され、代替手段を探す必要が出てきました。

色々と代替サービスを探していたのですが、その中で「ntfy」というオープンソースの通知サービスがあることを知りました。

セットアップが簡単で、使い方もシンプルそうだったので、Line Notifyの代替として使ってみることにしました。

ntfyとは

ntfyは、プッシュ通知を送受信できるシンプルなサービスで、主な特徴は以下の通りです。

  • セットアップが簡単で、すぐに利用開始可能
  • ユーザー登録が不要
  • スマートフォンアプリ(iOS/Android)が提供されている
  • オープンソースで、必要に応じて自前でホストできる
  • 無料で利用可能

セットアップ方法

ntfyを利用するためには、まず以下のセットアップを行います。

1.スマートフォンアプリのインストール

まずは、自分のスマートフォンに ntfy アプリをインストールします。

2.アプリの初期設定

アプリを起動し、右下の+ボタンから、通知を受け取るためのトピックを作成します。

トピック名は何でも良いですが、ntfyのデフォルトのサーバーを使用する場合は、他の人と同じトピック名を設定してしまうと、通知内容が流出してしまうため、他の人と被らないオリジナル性の高い名前を設定しましょう。

なお、自前でホストする場合は、このような問題は起こりません。その場合、トピック作成画面で、「他のサーバーを使用」にチェックを入れましょう。

また、スマホアプリ以外にも、Webアプリでの受信も可能となっています。

使用方法

実際にPCから通知を送信する方法として、Pythonでの実装例を紹介します。


import requests

# 通知を送信
url = "https://ntfy.sh/my-topic"  # 設定したトピック名を設定
title = "テスト"
message = "テストメッセージ"

response = requests.post(url, data=message.encode('utf-8'), headers={"Title": title.encode('utf-8')})

# 通知が成功したか確認
if response.status_code == 200:
    print("通知を送信しました。")
else:
    print("通知の送信に失敗しました。")

送信内容には、優先度、絵文字、添付ファイルなども付加できます。

注意事項

上述しましたが、トピック名は、他の人と被ってしまうと通知内容が漏れてしまうため、推測されにくい名前を使用することをおすすめします。

また、パスワード等機密性の高い情報は、そもそも送信しないように注意しましょう。

まとめ

ntfyは、非常に手軽にスマートフォン等のデバイスに通知を送れるツールです。

セットアップも簡単で、使い方も直感的であり、Line Notifyの代替ツールとして、とても優秀だと思います。

個人利用からビジネス利用まで、幅広いニーズに対応できる柔軟なツールとして、おすすめできます。