Google Cloud Messaging

Google Cloud Messaging: Ikhtisar

KontenIkhtisar ArsitekturKonsep kuncisiklus Hidup Arus

Google Cloud Messaging (GCM) adalah layanan gratis yang memungkinkan pengembang untuk mengirim pesan antara server dan aplikasi client. Ini termasuk pesan hilir dari server ke aplikasi client, dan pesan hulu dari aplikasi client ke server.

Misalnya, pesan hilir ringan bisa menginformasikan aplikasi klien bahwa ada data baru yang akan diambil dari server, seperti dalam kasus "email baru" pemberitahuan. Untuk kasus penggunaan seperti instant messaging, pesan GCM dapat mentransfer hingga 4KB payload ke aplikasi client. Layanan GCM menangani semua aspek antrian pesan dan pengiriman ke dan dari aplikasi sasaran klien.

Ikhtisar Arsitektur

Implementasi GCM termasuk server Google koneksi, server aplikasi di lingkungan Anda yang berinteraksi dengan server koneksi melalui HTTP atau protokol XMPP, dan aplikasi client.

Gambar 1. GCM Arsitektur.

Berikut adalah cara komponen ini berinteraksi:

Google GCM Connection Servermenerima pesan hilir dari server aplikasi Anda dan mengirimkannya ke aplikasi klien.The XMPP koneksi server juga dapat menerima pesan yang dikirim hulu dari aplikasi client dan meneruskannya ke server aplikasi Anda. Untuk informasi lebih lanjut, lihat Tentang GCM Connection Server .Pada Anda App Server , Anda menerapkan HTTP dan / atauXMPP protokol untuk berkomunikasi dengan server koneksi GCM (s). Server aplikasi mengirim pesan hilir ke server koneksi GCM; yang enqueues koneksi server dan toko pesan, dan kemudian mengirimkannya ke aplikasi client. Jika Anda menerapkan XMPP, server app dapat menerima pesan yang dikirim dari aplikasi client.The Client App adalah aplikasi client GCM-enabled. Untuk menerima dan mengirim pesan GCM, aplikasi ini harus mendaftar dengan GCM dan mendapatkan identifier unik yang disebut tanda pendaftaran. Untuk informasi lebih lanjut tentang bagaimana menerapkan aplikasi client, lihat dokumentasi untuk platform Anda.

Konsep kunci

Tabel ini merangkum istilah dan konsep yang terlibat dalam GCM kunci. Hal ini dibagi menjadi kategori ini:

Komponen - The entitas yang berperan utama dalam GCM.Kredensial - The ID dan token yang digunakan dalam GCM untuk memastikan bahwa semua pihak telah dikonfirmasi, dan bahwa pesan tersebut pergi ke tempat yang benar.

Tabel 1. komponen GCM dan kredensial.

komponenGCM Connection Serverserver Google yang terlibat dalam mengirimkan pesan antara server aplikasi dan aplikasi client.klien AppSebuah aplikasi client GCM-enabled yang akan berkomunikasi dengan server aplikasi Anda.App ServerServer aplikasi yang Anda tulis sebagai bagian dari implementasi GCM. Server aplikasi mengirimkan data ke aplikasi client melalui server koneksi GCM. Jika server aplikasi Anda mengimplementasikan protokol XMPP, juga dapat menerima pesan yang dikirim hulu dari aplikasi client.surat kepercayaanID pengirimSebuah nilai numerik unik yang dibuat ketika Anda mengkonfigurasi proyek API Anda (diberikan sebagai "Proyek Nomor" di Konsol Google Developers). ID pengirim digunakan dalamproses pendaftaran untuk mengidentifikasi server aplikasi yang diizinkan untuk mengirim pesan ke aplikasi client.API KeyKunci API disimpan di server aplikasi yang memberikan server aplikasi berwenang akses ke layanan Google.Dalam HTTP, kunci API termasuk dalam header permintaan POST yang mengirim pesan. Dalam XMPP, kunci API digunakan dalam permintaan otentikasi SASL PLAIN sebagai password untuk otentikasi koneksi. Jangan menyertakan kunci API mana saja di kode klien Anda. Anda mendapatkan kunci API ketika Andamengkonfigurasi proyek API Anda .aplikasi ID

Klien aplikasi yang mendaftar untuk menerima pesan. Bagaimana ini diimplementasikan adalah tergantung platform:

Android: menggunakan nama paket dari manifes aplikasi.iOS: menggunakan identifier bundel aplikasi.Chrome: menggunakan nama ekstensi Chrome.Pendaftaran TokenID yang dikeluarkan oleh server koneksi GCM ke aplikasi client yang memungkinkan untuk menerima pesan. Perhatikan bahwa token pendaftaran harus dirahasiakan.

siklus Hidup Arus

Mendaftar untuk mengaktifkan GCM . Sebuah contoh dari aplikasi client register untuk menerima pesan. Untuk diskusi lebih, lihatPendaftaran Client Apps .Mengirim dan menerima pesan hilir .Kirim pesan. Server aplikasi mengirim pesan ke aplikasi client:Server aplikasimengirim pesan ke server koneksi GCM.Server enqueues koneksi GCM dan toko pesan jika perangkat offline.Bila perangkat online, server koneksi GCM mengirim pesan ke perangkat.Pada perangkat, aplikasi klien menerima pesan sesuai dengan implementasi platform-spesifik. Lihat dokumentasi platform-spesifik Anda untuk rincian.Menerima pesan. Sebuah aplikasi klien menerima pesan dari server koneksi GCM. Lihat dokumentasi platform-spesifik Anda untuk rincian tentang bagaimana aplikasi klien dalam lingkungan yang memproses pesan yang diterimanya.

Mengirim dan menerima pesan hulu . Fitur ini hanya tersedia jika Anda menggunakan koneksi server XMPP .Kirim pesan. Sebuah aplikasi client mengirimkan pesan ke server aplikasi:Pada perangkat, aplikasi client mengirimkan pesan ke koneksi XMPP server.
See dokumentasi platform-spesifik Anda untuk rincian tentang bagaimana aplikasi client dapat mengirim pesan melalui XMPP.
The XMPP koneksi enqueues server dan toko pesan jika server terputus.
Ketika server aplikasi adalah kembali terhubung, koneksi server XMPP mengirimkan pesan ke server aplikasi.

Menerima pesan.
 Sebuah aplikasi server menerima pesan dari server koneksi XMPP dan kemudian melakukan hal berikut:Mengurai header pesan untuk memverifikasi informasi pengirim aplikasi klien.
Mengirimkan "ACK" ke server koneksi XMPP untuk mengakui menerima pesan.
Opsional mengurai payload pesan, seperti yang didefinisikan oleh aplikasi client.




Lebih baru Lebih lama