よくある質問・用語集

  • もっと調べる
  • どうやって使う?

ntfyとは

ntfyとは、デスクトップやスマートフォンにプッシュ通知を送信するためのオープンソースソフトウェアである。ntfyサーバを経由することで、通常はプッシュ通知に対応していないシステムやサービスでも、ntfyアプリからプッシュ通知を送ることができる。ntfyは、Apache License 2.0とGPLv2 Licenseのデュアルライセンスで公開されている。ntfyの読み方は、英語の「notify(ノーティファイ、ノウティファイ)」と同じ読み方である。

ntfy画面

ntfyのWeb画面

ntfyの特徴

ntfyには、以下の特徴がある。

プッシュ通知に非対応のサービスでも使える

ntfyには、他のシステムと連携するためのAPIが用意されているため、様々なシステムから取得したデータをPCやスマートフォンに送付することができる。つまり、通常はプッシュ通知に対応していないサービスでも、ntfyを使うことでプッシュ通知を送ることが可能になる。

専用のアプリ開発は不要

ntfyサーバを経由すれば、様々なサービスの情報をntfyのアプリからプッシュ通知として送ることができる。そのため、各サービスごとに専用のアプリを開発する手間をかけずに、ntfyのみで簡単にプッシュ通知を届けることができる。

Android OSであれば、閉域環境でも利用可能

ntfyを利用してスマートフォンへプッシュ通知を送る場合、Android OSであればバックグラウンドの処理の制限が比較的ゆるいため、閉域環境での実装が可能である。なお、iOS(iPhone/iPad)はバックグラウンドで処理できる範囲を厳しく制限しているため、ntfyを利用しても、完全閉鎖環境でプッシュ通知を行うことはできない。

iOSに通知を送る方法と注意点

閉域環境でなくても、ntfyを利用してiOSでプッシュ通知を利用する場合、ntfyサーバとntfyアプリだけではプッシュ通知を送ることができない。iOSでプッシュ通知を利用するためには、Googleが管理するFCM(Firebase Cloud Messaging)や、Appleが管理するAPNs(Apple Push Notification Service)のシステムを経由して通知を送る必要がある。ただしこの場合、開発者登録やアプリ自体にプッシュ通知をやりとりするための情報を埋め込むなど、別途の開発が必要となる。

そこでntfyには、iOSでより簡単にプッシュ通知を実装する手段として、メッセージとハッシュをntfy公式サーバを介して送信するという方法が用意されている。この方法では、公式サーバがFCM/APNsの登録を行っているため、iOSに通知が可能となる。ただし、通知メッセージが第三者サーバを経由する形となるため、セキュリティに注意が必要である。また、処理で遅延が発生する可能性がある。

Webブラウザから通知の設定ができる

ntfyでは、プッシュ通知の設定をWebブラウザから操作することができる。トピックと呼ばれる単位で通知を管理し、ユーザは特定のトピックを購読する設定を行うことで、そのトピックの通知を受け取ることができる。また、ntfyはシステムやサービスから通知を送ることを目的として設計されているため、コマンドやWEB APIなどで通知を送る仕組みも存在している。なお、現状ではntfyにユーザ管理のGUIが無いため、ユーザの登録や削除を行う際は、コマンドラインによる操作が必要である。

モバイルアプリから通知の購読が可能

ntfyにはモバイルアプリが用意されている。モバイルアプリでは、設定したトピックの購読のみ行うことが可能である。なお、購読している会員に向けてトピックの通知を行う場合は、モバイルアプリからではなく、Webブラウザでの設定が必要である。モバイルアプリは一般的なスマートフォンのアプリと同様に、App StoreやGoogle Playからインストールすることができる。F-Droidやgithubから利用することも可能である。

ユーザ単位で権限を設定できる

デフォルトの動作では誰でも任意のトピックに通知を送ることができる。もしユーザ単位で制限が必要な場合は、対象ユーザとトピックに対して権限を設定することで、通知の送信やトピックの購読に制限を設けることができる。

プッシュ通知の上限を設定できる

ntfyでは、大量の通知を制限するために、レートリミットを設定して通知上限を設定することができる。秒数とその間に許可するリクエストの回数を指定することで、秒数内でリクエストの上限を上回った場合、通信は拒否される仕組みとなっている。これにより、頻繁な通知が原因でユーザが離脱してしまうことを防ぐことができる。なお、このレートリミットの制限は、特定のユーザのみ除外することも可能である。また、レートリミットの制限を除外するホストを追加することで、レートリミットの制限を回避して、メッセージを大量に送信することもできる。

ntfyの用途

ntfyは、さまざまな既存のシステムやサービスと連携し、活用することができる。ここでは、おすすめの使い方の例を紹介する。

システム監視におけるアラート通知

ntfyをZabbixなどの監視システムと連携させることで、監視システムのアラート通知をプッシュ通知として送付することが可能である。デスクトップ画面やスマホ画面に、Zabbixからの最新のアラートを即時に通知できるため、メール通知よりも気が付きやすい。スマホであれば社外からも通知内容を確認することができるため、非常に便利である。

さらに、ntfyと連携させた監視システムを、問い合わせ管理システムとも連携させれば、プッシュ通知で送られたアラートをWeb上から一覧で確認するという使い方もできる。連携できる問い合わせ管理システムとしては、OSSではZammadやデージーネットが開発したCuMASなどが挙げられる。

社内システムとの連携

社内システムを独自で作成している会社の場合、自社専用のプッシュ通知のシステムを導入するのは非常に手間がかかり、ハードルが高い。ntfyを使えば、会社独自のシステムに対しても比較的簡単にプッシュ通知を導入することができる。プッシュ通知であればメールよりもメッセージに気付きやすいため、提出日の期限や業務の抜け漏れの対策にもつながる。

デージーネットの取り組み

デージーネットでは、ntfyのインストール手順や設定方法、使い方などについて調査・検証し、詳細をntfy調査報告書に掲載している。今後は、Zabbixなどの監視システムやRocket.chatなどのチャットシステムのモバイルアプリとntfyを組み合わせて、自動的に通知を送る仕組みを検討していく。

また、デージーネットでは、ntfyを利用したシステムの構築サービスを提供している。弊社で構築を行ったシステムは、導入後の支援としてOpen Smart Assistanceという保守サービスに加入することができる。Open Smart Assistanceでは、「作ってから使い終わるまで」をコンセプトに、導入後も継続して運用をサポートしている。OSSそのものだけではなく、Linuxなどを含む運用中のシステム全体が安定稼働することを支援する。Q&Aやセキュリティ情報提供、障害の調査・回避を行い、安心して利用して頂けるよう管理者の業務をサポートしている。

【カテゴリ】:情報共有  オープンソースソフトウェア  

  • もっと調べる
  • どうやって使う?

【共催セミナー】研修管理・運用の負担を軽減 学習管理システム(LMS)紹介セミナー

日程: 5月23日(木)Webセミナー「BigBlueButton」を使用します。
内容: 社内研修の課題を解決できる学習管理システム(LMS)について紹介します。
ご興味のあるかたはぜひご参加ください。

セミナー申込

関連用語

ntfyに関連するページ(事例など)

ntfyとは先頭へ