Actions Center'ın sizin adınıza rezervasyon oluşturmak ve güncellemek amacıyla geri aramalar yapmasına izin vermek için bir rezervasyon sunucusu oluşturmanız gerekir.
- Rezervasyon Bekleme Listeleri uygulaması. Bu, Rezervasyon Bekleme Listeleri pilot programına katıldığınızda kullanılır. Bu, Actions Center'ın kullanıcı adına bekleme tahminlerini almasına ve bekleme listesi girişleri oluşturmasına olanak tanır.
- Standart uygulama. Bu sayede Actions Center, kullanıcı adına sizinle randevu, rezervasyon ve rezervasyon oluşturabilir. Rezervasyonlar Uçtan Uca entegrasyonu için bir rezervasyon sunucusu uygulamak üzere lütfen Rezervasyon sunucusunu uygulama bölümüne bakın.
Korumalı alan ve üretim rezervasyon sunucularınızla bağlantıyı nasıl yapılandıracağınızı öğrenmek için İş Ortağı Portalı belgelerine bakın.
REST API arayüzü uygulama
REST'e dayalı bir API arayüzü uygulayın. Bu sayede Google, HTTP üzerinden rezervasyon sunucusu istekleri gönderebilir.
Başlamak için Actions Center korumalı alan ortamına bağlanabilecek bir geliştirme veya korumalı alan rezervasyon sunucusu oluşturun. Korumalı alan sunucusu tam olarak test edildikten sonra yalnızca üretim ortamına geçin.
Yöntemler
Her rezervasyon sunucusu türü için farklı bir API yöntemi grubu oluşturmanız gerekir. İsteğe bağlı olarak, API uygulamasını kullanmaya başlamak için hizmet tanımını proto biçiminde indirebilirsiniz. Aşağıdaki tablolarda her bir uygulama için yöntemler gösterilmiştir ve hizmet protokolü biçimlerine bağlantılar verilmiştir.
Bekleme listesi uygulaması |
---|
Bekleme listesi hizmet tanımı. Proto hizmet tanımı dosyasını indirin. |
Yöntem | HTTP İsteği |
---|---|
HealthCheck | İNDİRİN /v3/HealthCheck/ |
BatchGetWaitEstimates | POST /v3/BatchGetWaitEstimates/ |
CreateWaitlistEntry | POST /v3/CreateWaitlistEntry/ |
GetWaitlistEntry | POST /v3/GetWaitlistEntry/ |
DeleteWaitlistEntry | POST /v3/DeleteWaitlistEntry/ |
API kaynakları
Bekleme listesi
Bekleme listesine dayalı rezervasyonu uygulamak için aşağıdaki kaynaklar kullanılır:
- WaitEstimate: Belirli bir grup boyutu ve satıcı için bekleme tahmini.
- WaitlistEntry: Kullanıcının bekleme listesindeki girişi.
Akış: bekleme listesi girişi oluşturma
Bu bölümde, Rezervasyon Bekleme Listeleri entegrasyonu için nasıl rezervasyon oluşturulacağı açıklanmaktadır.
Kullanıcı bekleme listesi girişi oluşturduğunda Google size kullanıcının adını, soyadını, telefon numarasını ve e-posta adresini gönderir. E-posta, kullanıcının Google hesabıyla aynıdır ve benzersiz tanımlayıcı olarak ele alınır. Google ile Rezervasyon sisteminizde kullanıcının hesabını arayamadığından bu bekleme listesinin giriş yapmadan ödeme olarak kabul edilmesi gerekir. Son bekleme listesi girişinin, satıcılarınızın bekleme listesi sisteminizden gelen girişleriyle aynı olduğundan emin olun.
Güvenlik ve Kimlik Doğrulama
Rezervasyon sunucunuzla tüm iletişim HTTPS üzerinden gerçekleşir. Bu nedenle sunucunuzun, DNS adıyla eşleşen geçerli bir TLS sertifikasına sahip olması önemlidir. Sunucunuzu ayarlamak için Qualys' SSL Server Test gibi ücretsiz olarak kullanılabilen bir SSL/TLS doğrulama aracını kullanmanızı öneririz.
Google'ın rezervasyon sunucunuza yapacağı tüm isteklerin kimliği, HTTP temel kimlik doğrulaması kullanılarak doğrulanır. Rezervasyon sunucunuzun temel kimlik doğrulama kimlik bilgileri (kullanıcı adı ve şifre), İş Ortağı Portalı'ndaki Rezervasyon Sunucusu Yapılandırma sayfasına girilebilir. Şifreler altı ayda bir döndürülmelidir.
Örnek İskelet Uygulamaları
Başlamak için Node.js ve Java çerçeveleri için yazılmış bir rezervasyon sunucusunun aşağıdaki örnek iskeletlerine göz atın:
- Node.js iskeleti js-maps-booking-rest-server-v3-skeleton
- Java iskeleti java-maps-booking-rest-server-v3-skeleton
Bu sunucularda sökük REST yöntemleri bulunur.
Koşullar
HTTP hataları ve iş mantığı hataları
Arka ucunuz HTTP isteklerini işlediğinde iki tür hata oluşabilir.
- Altyapı veya yanlış verilerle ilgili hatalar
- Bu hataları, standart HTTP hata kodlarıyla istemciye döndürün. Tam HTTP durum kodu listesine bakın.
- İş mantığıyla ilgili hatalar
200
Tamam olarak ayarlanmış HTTP durum kodunu döndürün ve yanıt gövdesinde iş mantığı hatasını belirtin. Karşılaşabileceğiniz iş mantığı hatalarının türleri, farklı sunucu uygulaması türleri için farklıdır.
Rezervasyon Bekleme Listeleri entegrasyonu için iş mantığı hataları, Bekleme Listesi İş Mantığı Hatası'nda yakalanır ve HTTP yanıtında döndürülür. Bir kaynak oluşturulduğunda (örneğin, CreateWaitlistEntry
yöntemini kullanırken) iş mantığı hatalarıyla karşılaşabilirsiniz. Bunlarla sınırlı olmamakla birlikte aşağıda bazı örnekleri bulabilirsiniz:
- İstenen bekleme listesi girişi satıcının maksimum grup boyutunun üzerinde olduğunda
ABOVE_MAX_PARTY_SIZE
kullanılır. MERCHANT_CLOSED
, satıcı zaten kapalı olduğu için bekleme listesi açık olmadığında kullanılır.
Boşta kalma
Ağ üzerinden iletişim her zaman güvenilir değildir ve Google, yanıt alınmadığı takdirde HTTP isteklerini yeniden deneyebilir. Bu nedenle, mutasyon durumundaki tüm yöntemler eş potansiyelli olmalıdır:
CreateWaitlistEntry
DeleteWaitlistEntry
DeleteWaitlistEntry
dışındaki her istek mesajında, isteği benzersiz bir şekilde tanımlamak amacıyla cinsel gücü jetonları eklenir. Bu sayede, tek bir istek oluşturma amacı taşıyan yeniden denenen REST çağrısı ile iki ayrı isteği birbirinden ayırt edebilirsiniz.
DeleteWaitlistEntry
, sırasıyla bekleme listesi giriş kimlikleriyle benzersiz bir şekilde tanımlanır. Bu nedenle, isteklerine kimlik aciliyeti jetonu dahil edilmez.
Aşağıda, rezervasyon sunucularının aciliyeti nasıl ele aldığına dair bazı örnekler verilmiştir:
Başarılı bir
CreateWaitlistEntry
HTTP yanıtı, oluşturulan bekleme listesi giriş kimliğini içerir. AynıCreateWaitlistEntryRequest
ikinci kez alınırsa (aynıidempotency_token
ile) aynıCreateWaitlistEntryResponse
döndürülmelidir. İkinci bir bekleme listesi girişi oluşturulmaz ve herhangi bir hata döndürülmez.CreateWaitlistEntry
denemesi başarısız olursa ve aynı istek yeniden gönderilirse arka ucunuzun bu durumda yeniden denemesi gerektiğini unutmayın.
Aciliyet koşulu, durumu değiştiren tüm yöntemler için geçerlidir.