Feed'lerde stok durumunu yapılandırma

Kullanılabilirlik biçimi seçme

Stok durumu verilerini belirtmenin iki yolu vardır: (1) Açık Yerler veya (2) Yinelenen. Tüm satıcılarınız ve hizmetleriniz genelinde kullanacağınız tek bir yöntem seçin. Bir yöntem seçtikten sonra tüm entegrasyon (feed'ler, rezervasyon sunucusu ve anlık güncellemeler) için bu yöntemi kullanmanız gerekir.

Hangi müsaitlik durumu biçiminin daha uygun olduğunu belirlemek için aşağıdaki rehberi kullanın:

  • Sisteminizde müsaitlik durumunu açık zaman aralıkları olarak mı (ör. 08:00-08:30) depolarsınız?
  • Sisteminizde stok durumunu yinelenen bir biçimde mi depoluyorsunuz? Yani satıcıların, birkaç sapma dışında tutarlı bir sıklıkta gerçekleşen hizmetleri var mı? Örneğin, 09:00-17:00 arasında 15 dakikada bir slotting yapılır ve her 15 dakikalık slotting için yalnızca bir koltuk ayrılır.
  • Satıcılarınızın hizmetlerinde aynı anda birden fazla açık yer olabilir mi? Örneğin, bir sınıf için 30 açık yer
  • Yukarıdakilerin hiçbiri geçerli değil mi?
    • Spots Open'ı kullanın
    • Not: Tekrarlama özelliğini kullanmak daha verimlidir ve feed boyutlarının küçülmesine neden olabilir. Ancak veri modeliniz tekrarlamayı doğal olarak desteklemiyorsa her gerçek zamanlı güncelleme için tüm günün tekrarlanan aralıklarını yeniden hesaplamanız gerekeceğinden tekrarlamayı kullanmanız önerilmez.

    Açık Spotlar

    Parametre Tanımları:

    • spots_open: Bu müsaitlik durumu girişi için şu anda mevcut olan yerlerin sayısı.
    • spots_total: Satıcının bu yapılandırma için sahip olduğu toplam yer sayısı (kullanılmayan yerler dahil).

    Açık Alanlar yöntemi, her alanın müsaitlik durumunu açıkça belirtir ve aynı hizmet için birden fazla alan kullanma modelini destekler. Bu iki parametre, hizmet kapasitesinin dijital bir temsilini oluşturmak için birlikte çalışır.

    Bir rezervasyon yapıldığında, gerçek zamanlı güncelleme aracılığıyla boş_yer sayısı 1 azalır (toplam_yer sayısı aynı kalır). spots_open = 0 olduğunda slot artık gösterilmez.

    Örnek Hizmetler

    Yoga sınıfı veya güzellik salonu aşağıdaki kat planlarına sahipse ve etkin rezervasyonu yoksa

    Şekil 1: Etkin rezervasyonu olmayan kat planı

    Bu satıcılardaki 2 slot için bilgi dokümanı şö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",
                }
              ]
        }
        

    Rezervasyon içeren örnek hizmetler

    Şekil 2: Etkin rezervasyonu olan kat planı

    Ardından bir kullanıcı, bu yerlerden birini rezerve eder. Rezervasyon yapıldığında müsaitlik durumu gerçek zamanlı olarak güncellenir. Bu rezervasyon, sonraki günlük müsaitlik durumu feed'ine yansıtılır. Bu satıcıların müsaitlik durumu feed'inde, 1 Eylül 2018 16:00:00 (GMT) aralığı için açık_yer sayısı 1 azaltılır. 1 Eylül 2018, 20:00:00 (GMT) aralığı değişmeden kalır.

    Rezervasyon iç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ı

    • recurrence: Sürekli olarak tekrarlanan müsaitlik aralıkları
    • repeat_until_sec: Müsaitliğin tekrarlandığı son aralığın bitiş zamanının UTC zaman damgası.
    • repeat_every_sec: Art arda gelen müsaitlik durumu aralıkları arasındaki saniye sayısı. Örneğin, repeat_every_sec = 1800 (30 dakika) ve start_sec 09:00'da başlıyorsa aralıklar 30 dakikada bir 09:00, 09:30, 10:00 vb. saatlerde tekrarlanır.
      • Not: spots_open ve spots_total değerlerini belirtmeniz gerekmez. Bir schedule_exception değeri olmadığı sürece her ikisinin de 1 olduğu varsayılır.

    Tekrarlama yöntemi, düzenli aralıklarla gerçekleşen hizmetler için günlük olarak kullanılabilirliği gösterir. Örneğin, her gün 09:00-17:00 arasında 30 dakikada bir gerçekleşen bir hizmet. Yinelenen alanlarda, alanın süresini, günde ilk kez ne zaman gerçekleşeceğini, alanın ne sıklıkta tekrarlanacağını ve aynı gün içinde ne zaman tekrarlanmayı bırakacağını belirtirsiniz. Not: Her gün için ayrı ayrı yeni bir yinelenen slot grubu belirtilmesi gerekir. Zaman aralığında önceden rezerve edilmiş bir zaman aralığı varsa bir planlama istisnası belirtirsiniz. Örneğin, 09:00-21:00 arası her yarım saatte bir (11:00-11:30 hariç) tekrarla. Her hizmetin kendi tekrar ve planlama istisnaları vardır.

    Örnek Hizmetler

    Aşağıdaki kat planına sahip bir güzellik salonunda etkin rezervasyon yok

    Şekil 3: Etkin rezervasyonu olmayan kat planları. Hizmet başına yalnızca 1 açık yer olduğu varsayılır (ör. Sally 30 dakikada bir saç kesimi hizmeti sunar ancak aynı anda yalnızca 1 müşteriye hizmet verebilir.)

    Bu satıcılardaki 1 slot için bilgi dokümanı şö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
                }
              }
            ]
        }
        

    Rezervasyon içeren örnek hizmetler

    Şekil 4: Bir etkin rezervasyon içeren kat planları. Hizmet başına yalnızca 1 açık yer olduğu varsayılır (ör. Sally 30 dakikada bir saç kesimi hizmeti sunar ancak aynı anda yalnızca 1 müşteriye hizmet verebilir.)

    Şimdi bir kullanıcının saat 12:30'da Sally ile saç kesimi randevusu aldığını varsayalım. Rezervasyon yapıldığında müsaitlik durumu gerçek zamanlı olarak güncellenir. Bu rezervasyon, sonraki günlük müsaitlik durumu özet akışında yansıtılır. Bu satıcıların müsaitlik durumu feed'inde, 30 dakikalık bir hizmet için 12:30-13:00 saatleri arasında planlama istisnası olur.

    Rezervasyon iç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
                      }
                    }
                  ],
                }
              ]
        }