Buka konsol

Apa yang Bisa Dilakukan dengan Cloud Functions?

Cloud Functions memberi developer akses ke peristiwa Firebase dan Google Cloud, beserta daya komputasi yang skalabel untuk menjalankan kode sebagai respons terhadap peristiwa tersebut. Meskipun diharapkan agar aplikasi Firebase menggunakan Cloud Functions dengan cara yang unik untuk memenuhi kebutuhan developer yang unik juga, kasus penggunaan yang umum bisa jadi termasuk dalam area ini:

Pelajari contoh dan kasus penggunaan untuk setiap kategori yang Anda minati, lalu lanjutkan ke tutorial Memulai atau panduan khusus tentang peristiwa autentikasi, peristiwa analisis, dan panduan lainnya.

Memberi tahu pengguna jika ada sesuatu yang menarik

Developer dapat menggunakan Cloud Functions untuk selalu berinteraksi dengan pengguna dan memberikan informasi yang relevan tentang suatu aplikasi kepada pengguna. Misalnya, pikirkan tentang aplikasi yang dapat digunakan pengguna untuk saling mengikuti aktivitas di aplikasi tersebut. Dalam aplikasi tersebut, sebuah fungsi yang dipicu oleh peristiwa tulis Realtime Database untuk menyimpan pengikut baru dapat membuat notifikasi Firebase Cloud Messaging (FCM) yang akan memberi tahu pengguna terkait bahwa mereka memiliki pengikut baru.

  1. Fungsi dipicu saat ada peristiwa tulis ke lokasi Realtime Database yang digunakan untuk menyimpan pengikut.
  2. Fungsi menulis pesan untuk dikirim melalui FCM.
  3. FCM mengirimkan pesan notifikasi ke perangkat pengguna.

Untuk meninjau kode yang berfungsi, lihat Mengirim notifikasi FCM.

Kasus penggunaan notifikasi lain yang menarik

Melakukan pembersihan dan pemeliharaan Realtime Database

Dengan penanganan peristiwa database Cloud Functions, Anda dapat memodifikasi Realtime Database sebagai respons terhadap perilaku pengguna, sehingga sistem selalu dalam kondisi terbaru dan bersih. Misalnya, di aplikasi ruang chat yang dibuat dengan Realtime Database, Anda dapat memantau peristiwa penulisan dan menghapus teks pesan pengguna yang tidak pantas atau tidak senonoh. Begini cara kerjanya:

  1. Penangan peristiwa database pada fungsi mendeteksi peristiwa penulisan di lokasi tertentu, dan mengambil data peristiwa yang berisi teks pesan chat.
  2. Fungsi memproses teks untuk mendeteksi dan menghapus kata-kata yang tidak pantas.
  3. Fungsi menuliskan kembali teks yang telah diupdate ke database.

Untuk meninjau kode yang berfungsi, lihat contoh Moderasi Teks. Contoh ini membersihkan kata-kata yang tidak pantas serta "teriakan" berhuruf besar dalam pesan chat.

Kasus penggunaan pembersihan dan pemeliharaan Realtime Database lain

Menjalankan tugas intensif di cloud, bukan di aplikasi Anda

Developer dapat memanfaatkan Cloud Functions untuk memindahkan tugas intensif (CPU atau jaringan berat), yang tidak mudah dijalankan di perangkat pengguna, ke resource cloud Google. Misalnya, Anda dapat menuliskan fungsi untuk mendeteksi upload gambar ke Storage, mendownload gambar ke instance yang menjalankan fungsi, memodifikasinya, dan menguploadnya kembali ke Storage. Anda dapat mengubah ukuran, memangkas, atau mengonversi gambar. Fitur command-line ImageMagick tersedia untuk digunakan bersama dengan Cloud Functions agar memudahkan tugas ini.

  1. Fungsi terpicu saat file gambar diupload ke Storage.
  2. Fungsi mendownload gambar dan membuat versi thumbnailnya.
  3. Fungsi menuliskan lokasi thumbnail ke database, sehingga aplikasi klien dapat menemukan dan menggunakannya.
  4. Fungsi mengupload thumbnail kembali ke Storage di lokasi baru.
  5. Aplikasi mendownload link thumbnail.

Untuk mendapatkan panduan tentang contoh pemrosesan gambar, lihat Menangani Peristiwa Storage.

Contoh lain dari tugas batch di Firebase cloud

Mengintegrasikan dengan API dan layanan pihak ketiga

Cloud Functions dapat membantu aplikasi Anda untuk bekerja lebih baik dengan layanan lainnya, dengan cara memanggil dan menampilkan API web. Misalnya, aplikasi yang digunakan untuk kolaborasi dalam pengembangan dapat memposting commit GitHub ke ruang chat workgroup.

  1. Pengguna mendorong commit ke repo GitHub.
  2. Fungsi HTTPS terpicu melalui API webhook GitHub.
  3. Fungsi mengirimkan notifikasi commit ke saluran Slack tim.

Cara lain untuk terintegrasi dengan API dan layanan pihak ketiga