İş Ortağı Tarafından Tetiklenen Bildirimler
Mesaj ekleme ve bildirim gönderme
Arka plan
Kullanıcılar kart ekledikten sonra onlara kartla ilgili bir mesaj göndermek ve bu mesajdan haberdar olmalarını sağlamak isteyebilirsiniz. Add Message API isteğini message_type
ile eşit olacak şekilde kullandığınızda
TEXT_AND_NOTIFY
aşağıdakiler gerçekleşir:
- "Mesaj" öğesi, "kartın arkasına" (diğer adıyla Ayrıntılar Şablonu) eklenir ve kartı kaydeden kullanıcılara push bildirimi gönderilir.
- Kullanıcı bildirime dokunduğunda Google Cüzdan, kartın ön yüzü (diğer adıyla kart görünümü) ile açılır ve ekranın üst kısmında "İletiyi Görüntüle" düğmesi içeren bir açıklama metni gösterilir.
- Açıklama metnini tıklayan kullanıcılar, kartın arka tarafına yönlendirilir. Burada okunmamış yeni mesajlar vurgulanır.
Kullanıcılara bildirim içeren mesajlar gönderirken dikkat edilmesi gereken bazı noktalar
- Kullanıcıların, mesajlarla ilgili anlık bildirimleri alabilmek için kartlarında bildirimleri etkinleştirmiş olması gerekir.
- İletiler, web sitenizin veya uygulamanızın URI'lerini içerebilir. Köprüler, kartla ilgili bir web sitesi veya uygulama olmalıdır. Kullanıcıları kartla ilgili olmayan bağlantılara yönlendirmek Kabul Edilebilir Kullanım Politikası'nın ihlalidir.
- 24 saatlik süre içinde en fazla 3 push bildirimi tetikleyen mesaj gönderebilirsiniz. Google, kullanıcılarınıza spam gönderdiğinizi düşünürse push bildirimi teslim kotanızı sınırlayabilir.
- Kullanıcıların kilit ekranında gördüğü anlık bildirim, Google Cüzdan tarafından kontrol edilir.
- Normal sınıf veya nesne uç noktasını kullanarak mesaj verilerini düzenlemek ya da kaldırmak için UPDATE veya PATCH yöntemlerini kullanabilirsiniz.
Entegrasyon adımları
Kullanıcıları AddMessage API kullanılarak eklenen yeni bir veren mesajı hakkında bilgilendirmek istediğinizde, yeni metninizi içeren Message öğesinin AddMessageRequest'i TEXT yerine MessageType TEXT_AND_NOTIFY içerecek şekilde güncellemeniz gerekir.
Kart sınıfına ileti eklemek ve bildirim göndermek için örnek JSON isteği
… "id": ISSUER_ID.CLASS_ID", "message": { "header":"My Class message header", "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Kart nesnesine mesaj eklemek ve bildirim göndermek için örnek JSON isteği
… "id": OBJECT_ID", "classId": "ISSUER_ID.CLASS_ID", "message": { "header":"My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Geçme/Kalma sınıfı için mesaj ekleme ve bildirim gönderme Yanıtı örneği
// The updated resource … { "kind": "walletobjects#walletObjectMessage", "header": "My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "messageType": "textAndNotify" }, …
İstisna işleme
3'ten fazla bildirim gönderme girişimleri QuotaExceededException yanıtı verir. Entegrasyon Adımları bölümünde belirtildiği gibi, kartla ilgili diğer tüm güncellemeler "TEXT_AND_NOTIFY" yerine "TEXT" kullanılarak ayarlanabilir.
Nearby Notifications
Bu özellik, bildirimleri etkinleştirmiş ve Google Cüzdan uygulamasına tam ve her zaman açık konum erişimi vermiş kullanıcılara, mevcut konumlarıyla alakalı bir kart kaydettiklerini hatırlatan bir push bildirimi gösterir.Entegrasyon adımları
Nasıl kullanılır?
Bu özelliği kullanmak için sınıflarınıza ve nesnelerinize konum eklemeniz gerekir. Sınıf başına ve nesne başına en fazla 10 konum ekleyebilirsiniz. Sınıf veya nesne tanımınızda MerchantLocations
kullanın. Bu konumları insert
, patch
veya update
yöntemlerini kullanırken ekleyebilirsiniz.
Bir sınıfa veya nesneye konum ekledikten sonra Google, yakındaki kullanıcılara bildirim gönderir. Google, bildirimin gönderilmesi için kullanıcının ne kadar yakında olması ve bölgede ne kadar süre kalması gerektiğini belirler. Google, bildirimin metnini de kontrol eder.
MerchantLocations ayarlanmış bir LoyaltyClass örneği:{ "kind": "walletobjects#loyaltyClass", "programLogo": { "kind": "walletobjects#image", "sourceUri": { "uri": ... } }, "localizedProgramName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Program Name", } }, "id": Id1234, "version": "1", "allowMultipleUsersPerObject": true, "reviewStatus": "underReview", "enableSmartTap": false, "localizedIssuerName": { "kind": "walletobjects#localizedString", "defaultValue": { "kind": "walletobjects#translatedString", "language": "en", "value": "Issuer Name" } }, "multipleDevicesAndHoldersAllowedStatus": "multipleHolders", "merchantLocations": [ { "latitude": 37.79020867928078, "longitude": -122.39004 }, { "latitude": 37.42587, "longitude": -122.08620 }, ] }
Beklenen Davranış
Kullanıcılar, belirtilen MerchantLocation'lardan birindeyken kartlarıyla ilgili sabit bildirimler almalıdır. Kullanıcılar bildirimi tıkladığında Google Cüzdan'da kartları açılır. Kullanıcılar, kaydırma hareketiyle bildirimi kapatabilir. Kullanıcı konumdan ayrıldığında bildirim kaybolur.