Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

Cloud Functions でできること

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Cloud Functions を使用すると、開発者は Firebase と Google Cloud のイベントにアクセスできるだけでなく、これらのイベントに応じてコードを実行するスケーラブルなコンピューティング能力も得られます。 Firebase アプリは独自の要件を満たすために独自の方法で Cloud Functions を使用することが期待されていますが、一般的なユースケースは次の領域に分類される可能性があります。

関心のある各カテゴリのユース ケースと例を確認してから、 Get Startedチュートリアル、または認証イベント分析イベントなどの特定のハウツー ガイドに進んでください。

興味深いことが起こったときにユーザーに通知する

開発者は Cloud Functions を使用して、ユーザーの関心を維持し、アプリに関する関連情報を最新の状態に保つことができます。たとえば、ユーザーがアプリ内での相互のアクティビティをフォローできるアプリを考えてみましょう。ユーザーが自分自身を別のユーザーのフォロワーとして追加するたびに、Realtime Database で書き込みが発生します。次に、この書き込みイベントが関数をトリガーして、Firebase Cloud Messaging (FCM) 通知を作成し、適切なユーザーに新しいフォロワーを獲得したことを知らせることができます。

以下に説明するアプリの流れを示す図

  1. この関数は、フォロワーが保存されている Realtime Database パスへの書き込みでトリガーされます。
  2. この関数は、 FCM経由で送信するメッセージを作成します。
  3. FCMは通知メッセージをユーザーのデバイスに送信します。

動作中のコードを確認するには、 FCM 通知を送信する を参照してください。

その他の興味深い通知の使用例

データベースのサニタイズとメンテナンスを実行する

Cloud Functions データベース イベント処理を使用すると、ユーザーの行動に応じて Realtime Database または Cloud Firestore を変更し、システムを最新かつクリーンな状態に保つことができます。たとえば、チャット ルーム アプリでは、書き込みイベントを監視し、ユーザーのメッセージから不適切または冒涜的なテキストを削除できます。それがどのように機能するかは次のとおりです。

以下に説明するアプリの流れを示す図

  1. 関数のデータベース イベント ハンドラーは、特定のパスで書き込みイベントをリッスンし、チャット メッセージのテキストを含むイベント データを取得します。
  2. この関数はテキストを処理して、不適切な言語を検出して削除します。
  3. この関数は、更新されたテキストをデータベースに書き戻します。

実際のコードを確認するには、 Text Moderationサンプルを参照してください。このサンプルは、チャット メッセージの不適切な言葉や大文字の「叫び」をサニタイズします。

その他のデータベースのサニタイズとメンテナンスのユースケース

アプリではなくクラウドで集中的なタスクを実行する

開発者は、Cloud Functions を利用して、ユーザーのデバイスで実行するのは実際的ではない、リソースを集中的に使用する作業 (重い CPU またはネットワーク) を Google クラウドにオフロードできます。たとえば、Cloud Storage への画像のアップロードをリッスンする関数を作成し、関数を実行しているインスタンスに画像をダウンロードして変更し、Cloud Storage にアップロードして戻すことができます。変更には、画像のサイズ変更、トリミング、または変換が含まれる場合があります。この作業を容易にするために、Cloud Functions で使用するImageMagickコマンドライン ツールが提供されています。

以下に説明するアプリの流れを示す図

  1. 画像ファイルが Cloud Storage にアップロードされると、関数がトリガーされます。
  2. この関数は画像をダウンロードし、そのサムネイル バージョンを作成します。
  3. この関数はそのサムネイルの場所をデータベースに書き込み、クライアント アプリがそれを見つけて使用できるようにします。
  4. この関数は、サムネイルを Cloud Storage の新しい場所にアップロードします。
  5. アプリがサムネイル リンクをダウンロードします。

画像処理の例のチュートリアルについては、「ストレージ イベントの処理」を参照してください。

Firebase クラウドでのバッチジョブのその他の例

サードパーティのサービスおよび API と統合する

Cloud Functions を使用すると、Web API を呼び出して公開することで、アプリが他のサービスとうまく連携できるようになります。たとえば、開発の共同作業に使用されるアプリは、GitHub コミットをワークグループ チャット ルームに投稿できます。

以下に説明するアプリの流れを示す図

  1. ユーザーがコミットを GitHub リポジトリにプッシュします。
  2. HTTPS 関数は、 GitHub webhook APIを介してトリガーされます。
  3. この関数は、チームの Slack チャネルにコミットの通知を送信します。

サードパーティのサービスおよび API と統合するその他の方法