Feed'lerde Kullanılabilirliği Yapılandırma

Kullanılabilirlik Biçimi Seçme

Kullanılabilirlik verilerini belirtmenin iki yolu vardır: (1) Spots Açık veya (2) Yinelenme. Tüm satıcı ve hizmetlerinizde kullanılmak üzere tek bir yöntem seçin. Bir yöntem seçtikten sonra bütün bir entegrasyon (feed'ler, rezervasyon sunucusu ve gerçek zamanlı güncellemeler) için bu yönteme uymanız gerekir.

Hangi müsaitlik durumu biçiminin daha uygun olduğunu belirlemenize yardımcı olması için aşağıdaki kılavuzu kullanın:

  • Sisteminizde müsaitlik durumunu açık alanlar olarak depoluyor musunuz (örneğin, 08:00 - 08:30)?
  • Sisteminizde stok durumunu tekrar eden bir biçimde depoluyorsunuz mu? Diğer bir deyişle, satıcılar birkaç sapmayla tutarlı bir şekilde gerçekleşen hizmetlere sahip mi? Örneğin, slotlar 09:00 ile 17:00 arasında her 15 dakikada bir tekrarlanır ve 15 dakikalık zaman dilimlerinde yalnızca bir koltuk bulunabilir.
  • Satıcılarınızın hizmetleri için tek seferde birden fazla açık yer olabilir mi? Örneğin, bir sınıf için 30 açık nokta
  • Yukarıdakilerin hiçbiri geçerli değil mi?
    • Açık Noktalar'ı kullanma
    • Not: Yineleme daha verimlidir ve daha küçük feed boyutlarına yol açabilir, ancak veri modeliniz yinelenmeyi yerel olarak desteklemiyorsa, her gerçek zamanlı güncelleme için gün boyu yinelenen alanları yeniden hesaplamanız gerekeceğinden yinelemeyi kullanmanız önerilmez.

    Spotlar Açık

    Parametre Tanımları:

    • spot_open: Şu anda bu müsaitlik durumu girişi için kullanılabilen spot sayısı.
    • spot_total: Satıcının bu yapılandırmada sahip olduğu, mevcut olmayanlar dahil toplam nokta sayısı.

    Spots Open yöntemi, tüm slot kullanılabilirliklerini açıkça belirtir ve aynı hizmet için birden fazla spota sahip olma modelini destekler. Bu iki parametre birlikte çalışarak hizmet kapasitesinin dijital bir temsilini oluşturur.

    Rezervasyon gerçekleştiğinde, spot_open sayısı gerçek zamanlı güncelleme üzerinden 1 oranında azalmalıdır (spot_total sayısı aynı kalmalıdır). spot_open = 0 olduğunda söz konusu alan artık gösterilmez.

    Örnek Hizmetler

    Yoga dersi veya güzellik salonu aşağıdaki kat planlarına sahiptir ve etkin rezervasyon yoktur

    Şekil 1: Etkin rezervasyonu olmayan kat planı

    Bu satıcılardaki 2 slot'un stok durumu feed'i şöyle görünür:

    JSON

        {
          "availability": [
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535817600, # Sept 1, 2018 4:00:00 PM GMT
                  "merchant_id": "1001"
                },
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535832000, # Sept 1, 2018 8:00:00 PM GMT
                  "merchant_id": "1001",
                }
              ]
        }
        

    Rezervasyonlu Örnek Hizmetler

    Şekil 2: Tek bir etkin rezervasyon içeren kat planı

    Kullanıcı bu yerlerden birini rezerve ediyor. Rezervasyon gerçekleştiğinde, müsaitlik durumunu güncellemek için gerçek zamanlı bir güncelleme yayınlanır. Bir sonraki günlük müsaitlik durumu feed'inde bu rezervasyon yansıtılmalıdır. Bu satıcıların stok durumu feed'inde, 1 Eylül 2018, 16:00:00 (GMT) için spot_open değeri 1 azaltılmıştır. 1 Eylül 2018, 20:00 (GMT) alanı değişmez.

    Rezervasyon İçeren Feed Snippet'i

    JSON

        {
          "availability": [
                {
                  "spots_total": 6,
                  "spots_open": 5,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535817600, # Sept 1, 2018 4:00:00 PM GMT
                  "merchant_id": "1001"
                },
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535832000, # Sept 1, 2018 8:00:00 PM GMT
                  "merchant_id": "1001",
                }
              ]
    }
        

    Yinelenme

    Parametre Tanımları

    • yinelenme: Tutarlı şekilde tekrarlanan kullanılabilirlik alanlarının temsili.
    • yinelenen_until_sec: Son alanın bitiş saatinin, müsaitlik durumunu tekrarladığı UTC zaman damgası.
    • yinelenen_her_sec: Art arda kullanılabilirlik slotları arasındaki saniye sayısı. Örneğin, yinelenen_her_sec = 1800 (30 dakika) ise ve start_sec 09:00'da başlarsa alanlar her 30 dakikada bir 09:00, 09:30, 10:00 gibi tekrarlardan oluşur.
      • Not: spot_open ve spot_total değerlerini belirtmenize gerek yoktur. program_istisnası istisna olmadığı sürece her ikisinin de 1 olduğu varsayılır

    Yinelenme yöntemi, düzenli aralıklarla gerçekleştirilen hizmetler için kullanılabilirliği günlük olarak belirtir. Örneğin, her gün 09:00 - 17:00 arasında gerçekleşen bir hizmet. Yineleme durumunda, slotun süresini, alanın ilk kez oluştuğunu, alanın ne sıklıkta tekrarlanacağını ve aynı günde tekrarlamayı duracağını belirtirsiniz. Not: Her gün için yeni bir yinelenen slot grubu ayrıca belirtilmelidir. Zaman aralığı içinde zaten bir aralık rezerve edildiyse program istisnası belirtirsiniz. Örneğin, 11:00-11:30 saatleri dışında 09:00-21:00 arasında her yarım saatte bir tekrarlayın. Her hizmetin kendi yinelenme ve planlama istisnaları vardır.

    Örnek Hizmetler

    Bir güzellik salonunun aşağıdaki kat planı var ve aktif rezervasyon yok

    Şekil 3: Etkin rezervasyonu olmayan kat planları. Hizmet başına yalnızca 1 spot açık olduğunu varsayar (ör. Sally her 30 dakikada bir saç kesme hizmeti sunar ancak tek seferde yalnızca 1 müşteriye katılabilir.)

    Bu satıcılarda 1 slot için stok durumu feed'i şöyle görünür:

    Feed Snippet'i:

    JSON

        {
        "availability": [
              {
                "merchant_id": "1001",
                "service_id": "1001",  # haircut
                "start_sec": 1493888400, # May 4, 2017 9:00:00 AM GMT
                "duration_sec": 1800,
                "recurrence": {
                  "repeat_every_sec": 1800,
                  "repeat_until_sec": 1493915400 # May 4, 2017 4:30:00 PM GMT
                }
              }
            ]
        }
        

    Rezervasyonlu Örnek Hizmetler

    Şekil 4: Tek bir aktif rezervasyon içeren kat planları. Hizmet başına yalnızca 1 spot açık olduğunu varsayar (ör. Sally her 30 dakikada bir saç kesme hizmeti sunar ancak tek seferde yalnızca 1 müşteriye katılabilir.)

    Şimdi bir kullanıcının Saat 12:30'da Selin ile saç kesimi yaptığını varsayalım. Rezervasyon gerçekleştiğinde müsaitlik durumunu güncellemek için gerçek zamanlı bir güncelleme yayınlanır. Bir sonraki günlük müsaitlik durumu feed'inde bu rezervasyon yansıtılmalıdır. Bu satıcıların stok durumu feed'inde, 30 dakika süreli bir hizmet için 12:30 - 13:00 saatleri arasında planlama istisnası bulunur.

    Rezervasyon İçeren Feed Snippet'i:

    JSON

        {
          "availability": [
                {
                  "merchant_id": "1001",
                  "service_id": "1001",
                  "start_sec": 1493888400, # May 4, 2017 9:00:00 AM GMT
                  "duration_sec": 1800,
                  "recurrence": {
                    "repeat_every_sec": 1800,
                    "repeat_until_sec": 1493915400 # May 4, 2017 4:30:00 PM GMT
                  },
                  "schedule_exception": [
                    {
                      "time_range": {
                        "begin_sec": 1493901000, # May 4, 2017 12:30:00 PM GMT
                        "end_sec": 1493902800 # May 4, 2017 1:00:00 PM GMT
                      }
                    }
                  ],
                }
              ]
        }