Takvim Senkronizasyonu
Google hesabınızı bağlayarak onaylı ve bekleyen TotalApp rezervasyonlarınızı Google Takvim'e gönderin; harici etkinlikler ise meşgul slot sayısı olarak geri raporlanır. Microsoft Outlook desteği yakında geliyor.
Genel Bakış
Takvim Senkronizasyonu, Google hesabınızı bağlayarak onaylı ve bekleyen TotalApp rezervasyonlarınızın Google Takvim'e gönderilmesini sağlar; bağlı takvimdeki mevcut etkinlikler ise meşgul slot sayısı olarak geri raporlanır. Arka planda çalışan bir görev yoktur — her Şimdi Senkronize Et tıklamasında TotalApp taze bir Google erişim tokenı ister ve gerçek Google Takvim API v3'ü çağırır.
Google Takvim
Tam sayfa OAuth yönlendirmesi yerine bir Google Identity Services izin penceresi üzerinden bağlanır. Her Bağlan/Senkronize Et tıklamasında taze istenen, kısa ömürlü bir calendar.events kapsamlı token alınır.
Microsoft Outlook
Yakında. Outlook kartı referans için gösterilir ancak Bağlan butonu devre dışıdır — Microsoft Graph senkronizasyonu henüz uygulanmadı.
Giden + Gelen
Giden senkronizasyon her onaylı/bekleyen rezervasyon için bir Google Takvim etkinliği oluşturur veya günceller. Gelen senkronizasyon, TotalApp'ın oluşturmadığı yaklaşan etkinlikleri sayar. Her yönün kendi geçişi vardır.
Senkronizasyon Günlüğü
Tetiklediğiniz her senkronizasyon işlemi için başarı, hata ve yön (giden/gelen) bilgisini gösteren, bellekte tutulan sıralı bir günlük.
Google Takvim Bağlama
- Kenar çubuğunda Takvim Senkronizasyonu'na gidin.
- Google Takvim kartında Google Takvim'i Bağla'ya tıklayın.
- Gerçek bir Google izin penceresi açılır (Google Identity Services),
https://www.googleapis.com/auth/calendar.eventskapsamını ister. Bu TotalApp tarafından çizilmiş bir modal değil, gerçek bir Google OAuth istemidir. - Onayladıktan sonra TotalApp kısa ömürlü bir erişim tokenı alır ve hesabı Bağlı olarak işaretlemeden önce bunu boş bir çağrıyla
/api/google-calendar/syncüzerinden doğrular. - Sağlayıcı kartı senkronizasyon geçiş kontrollerini ve son senkronizasyon zaman damgasını gösterecek şekilde güncellenir.
primarytakvimi kullanılır — henüz bir takvim seçici yoktur.
Token saklanmıyor — izin penceresini tekrar görebilirsiniz
Sunucu tarafında yalnızca bir connected: true bayrağı ve senkronizasyon tercihleriniz saklanır (appointments.json içinde, saveSyncToken ile). Gerçek Google erişim tokenı hiçbir zaman kalıcı olarak saklanmaz — yalnızca tek bir Bağlan veya Şimdi Senkronize Et işlemi süresince tarayıcı belleğinde bulunur. Aynı tarayıcı oturumu içindeyseniz Google izni sessizce yeniden verir; token süresi dolduğunda veya oturum kaybolduğunda izin ekranı tekrar gösterilir.
Senkronizasyon Yönleri
Giden Senkronizasyon (TotalApp → Google Takvim): Giden Senkronizasyon açıkken Şimdi Senkronize Et'e tıkladığınızda, TotalApp durumu onaylı veya bekleyen olan tüm rezervasyonları alır ve /api/google-calendar/sync'e gönderir. Her rezervasyon için sunucu, extendedProperties.private.totalappBookingId alanında o rezervasyonun kimliğini taşıyan mevcut bir etkinlik arar: bulunursa etkinlik güncellenir (başlık, başlangıç/bitiş saati, notlar); bulunamazsa yeni bir etkinlik oluşturulur. Bu, tekrarlanan senkronizasyonları idempotent yapar — Şimdi Senkronize Et'i tekrar çalıştırmak mevcut etkinlikleri günceller, kopya oluşturmaz.
Bir rezervasyonu TotalApp'ta iptal etmek veya silmek şu anda karşılık gelen Google Takvim etkinliğini güncellemez veya kaldırmaz — o etkinlik siz manuel olarak temizleyene kadar olduğu gibi kalır.
Gelen Senkronizasyon (Google Takvim → TotalApp): Gelen Senkronizasyon açıkken sunucu, bağlı takvimdeki en fazla 50 yaklaşan etkinliği listeler ve bunlardan kaçının totalappBookingId taşımadığını (yani TotalApp'ın giden senkronizasyonu tarafından oluşturulmadığını) sayar. Bu sayı Senkronizasyon Günlüğü'nde gösterilir — örneğin "3 harici etkinlik engellenen slot olarak içe aktarıldı". Bugün bu sayımdan TotalApp'ta gerçekte hiçbir rezervasyon kaydı veya engellenmiş slot oluşturulmaz; müsaitlik motoru henüz Google Takvim'den okuma yapmıyor, bu yüzden harici etkinlikler genel rezervasyon sayfasını etkilemez. Bu, çalışan bir çift yönlü engelleme değil, yalnızca kaç harici etkinlik olduğuna dair bir raporlama görünümüdür.
Senkronizasyon Sıklığı
Arka plan görevi, cron veya webhook yoktur. Senkronizasyon yalnızca oturum açmış bir kullanıcı bağlı bir sağlayıcı kartında Şimdi Senkronize Et'e tıkladığında çalışır — bu belgede anlatılan her şey o tek istek içinde eşzamanlı olarak gerçekleşir.
Senkronizasyon Geçişleri
| Geçiş | Açık | Kapalı |
|---|---|---|
| Giden Senkronizasyon | Sonraki Şimdi Senkronize Et tıklamasında onaylı/bekleyen rezervasyonlar Google Takvim'e gönderilir | Şimdi Senkronize Et giden adımını tamamen atlar |
| Gelen Senkronizasyon | Şimdi Senkronize Et ayrıca takvimdeki harici etkinlikleri sayar | Şimdi Senkronize Et gelen adımını tamamen atlar |
Geçiş değişiklikleri updateSyncToken ile anında kaydedilir — bir Kaydet düğmesi yoktur.
Senkronizasyon Günlüğü
- Durum simgesi — yeşil onay (başarı) veya kırmızı üçgen (hata, örn. Google token isteği başarısız oldu veya süresi doldu).
- Mesaj — kaç rezervasyonun gönderildiği veya kaç harici etkinliğin sayıldığı.
- Yön rozeti — giden (mavi) veya gelen (amber).
- Sağlayıcı — şu an için her zaman
google. - Zaman damgası — senkronizasyon olayının yerel saati.
Günlük yalnızca bileşen durumunda tutulur (en fazla 50 kayıt) ve sayfa yenilendiğinde sıfırlanır — sunucuya kaydedilmez.
Google Takvim Bağlantısını Kesme
- Google Takvim sağlayıcı kartını açın.
- Bağlantıyı Kes düğmesine (bağlantı kesme simgesi, kırmızı çerçeve vurgusu) tıklayın.
- Senkronizasyon tercih kaydı appointments.json dosyasından silinir ve sağlayıcı kartı bağlantısız duruma döner.
- Giden senkronizasyonun Google Takvim'de zaten oluşturduğu etkinlikler otomatik olarak temizlenmez — gerekirse Google Takvim'den manuel olarak silin.
TotalApp'ta bağlantıyı kesmek yalnızca yerel senkronizasyon tercihini kaldırır — sunucu tarafında bir yenileme tokenı saklanmadığı için TotalApp tarafında iptal edilecek bir şey yoktur. Verilen calendar.events kapsamını tamamen iptal etmek isterseniz Google Hesabınızın Üçüncü taraf uygulamalar ve hizmetler sayfasını ziyaret edin.