CalDAV, istemcilerin uzaktaki bir sunucudaki takvim bilgilerine erişmesi için standart sağlayan bir WebDAV uzantısıdır.
Google, CalDAV protokolünü kullanarak takvimleri görüntülemek ve yönetmek için kullanabileceğiniz bir CalDAV arayüzü sağlar.
Özellikler
İlgili spesifikasyonların her biri için Google'ın CalDAV desteği aşağıdaki gibidir:
- rfc4918: Web'de Dağıtılmış Yazma ve Sürüm Oluşturma için HTTP Uzantıları (WebDAV)
GET
,PUT
,HEAD
,DELETE
,POST
,OPTIONS
,PROPFIND
vePROPPATCH
HTTP yöntemlerini destekler.LOCK
,UNLOCK
,COPY
,MOVE
veyaMKCOL
HTTP yöntemlerini ya daIf*
üst bilgisini (If-Match
hariç) desteklemez.- Rastgele (kullanıcı tanımlı) WebDAV mülklerini desteklemez.
- WebDAV Erişim Denetimi'ni (rfc3744) desteklemez.
- rfc4791: Uzantıları WebDAV'a Ekleme (CalDAV)
REPORT
HTTP yöntemini destekler. Serbest-meşgul sorgusu dışındaki tüm raporlar uygulanır.MKCALENDAR
HTTP yöntemini desteklemez.AUDIO
işlemini desteklemez.
- rfc5545: iCalendar
- CalDAV arayüzünde gösterilen veriler iCalendar spesifikasyonuna göre biçimlendirilmiştir.
- Şu anda
VTODO
veyaVJOURNAL
verilerini desteklememektedir. - Kullanıcı tarafından ayarlanabilen URL özelliklerine izin vermek için Apple iCal® uzantısını desteklemez.
- rfc6578: WebDAV için Toplama Senkronizasyonu
- İlk senkronizasyondan sonra istemci uygulamalarının bu çalışma moduna geçmesi gerekir.
- rfc6638: Uzantıları CalDAV'a Planlama
- Her zaman boş olan önemsiz bir "gelen kutusunu" destekler.
- Aldığınız davetiyeler "gelen kutunuza" yerleştirilmek yerine otomatik olarak "etkinlikler" koleksiyonunuza gönderilir.
- Serbest-meşgul araması desteklenmez.
- caldav-ctag-02: CalDAV'daki Takvim Koleksiyonu Varlık Etiketi (CTag)
ctag
takvimi, biretag
kaynağı gibidir; takvimde herhangi bir değişiklik olduğunda da değişir. Bu, istemci uygulamanın değiştirilen etkinlikleri senkronize etmesi gerekmediğini hızlı bir şekilde belirlemesine olanak tanır.
- calendar-proxy: CalDAV'da Takvim Kullanıcı Proxy İşlevi
- Yetkiyi desteklemeyen iOS cihazlardan takvim senkronizasyonunun performansını artırmak için,
calendar-proxy-read-for
veyacalendar-proxy-write-for
özelliklerinin bir iOS UserAgent ile kullanılması başarısız olacaktır.
- Yetkiyi desteklemeyen iOS cihazlardan takvim senkronizasyonunun performansını artırmak için,
Henüz ilgili tüm özelliklerin tam kapsamlı bir uygulaması sağlanmadı. Ancak, Apple'ın Takvim uygulaması gibi birçok istemci için CalDAV protokolü doğru şekilde çalışır.
Not: Google, hesap güvenliği ve kötüye kullanımı önlemek için verilere CalDAV üzerinden erişen istemci uygulamalarında çerezler oluşturabilir.
İstemci kimliğiniz oluşturuluyor
CalDAV API'yi kullanmak için Google Hesabınızın olması gerekir. Kullanabileceğiniz bir hesabınız varsa hazırsınız demektir.
CalDAV API'ye istek gönderebilmeniz için öncelikle bir proje oluşturarak istemcinizi Google API Konsolu'na kaydetmeniz gerekir.
Google API Konsolu'na gidin. Proje oluştur'u tıklayın, bir ad girin ve Oluştur'u tıklayın.
Sonraki adım CalDAV API'yi etkinleştirmektir.Projeniz için bir API'yi etkinleştirmek üzere şunları yapın:
- Google API Konsolu'nda API Kitaplığı'nı açın. İstenirse bir proje seçin ya da yeni proje oluşturun. API Kitaplığı, mevcut tüm API'leri ürün ailesine ve popülerliğe göre gruplandırılmış olarak listeler.
- Etkinleştirmek istediğiniz API listede görünmüyorsa bulmak için arama işlevini kullanın.
- Etkinleştirmek istediğiniz API'yi seçin ve Etkinleştir düğmesini tıklayın.
- İstenirse faturalandırmayı etkinleştirin.
- İstenirse API'nin Hizmet Şartları'nı kabul edin.
Projenizin istemci kimliğini ve istemci gizli anahtarını bulmak için aşağıdakileri yapın:
- Mevcut bir OAuth 2.0 kimlik bilgisini seçin veya Kimlik bilgileri sayfasını açın.
- Henüz yapmadıysanız Kimlik bilgileri oluştur > OAuth istemci kimliği seçeneğini tıklayıp kimlik bilgilerini oluşturmak için gereken bilgileri sağlayarak projenizin OAuth 2.0 kimlik bilgilerini oluşturun.
- OAuth 2.0 istemci kimlikleri bölümünde İstemci Kimliği'ni bulun. Ayrıntılar için istemci kimliğini tıklayın.
Google'ın CalDAV sunucusuna bağlanılıyor
CalDAV arayüzünü kullanmak için, bir istemci programı başlangıçta iki başlangıç noktasından birinde takvim sunucusuna bağlanır. Her iki durumda da bağlantının HTTPS üzerinden kurulması ve OAuth 2.0 kimlik doğrulama şemasını kullanması gerekir. CalDAV sunucusu, istekler bir Google hesabında OAuth 2.0 kimlik doğrulamasıyla HTTPS üzerinden ulaşmadığı sürece kimlik doğrulamasını reddeder.
HTTP üzerinden veya Temel Kimlik Doğrulaması kullanarak bağlanmaya çalışıldığında, HTTP 401 Unauthorized
durum kodu gösterilir.
İstemci programı (Apple'ın Takvim uygulaması gibi) başlangıç noktası olarak bir ana hesap koleksiyonu gerektiriyorsa bağlanılacak URI şu şekildedir:
https://apidata.googleusercontent.com/caldav/v2/calid/user
calid
yerine, erişilecek takvimin "takvim kimliği" kullanılmalıdır. Bu seçeneğe Google Takvim web arayüzünde şu şekilde ulaşılabilir: Takvim adının yanındaki açılır menüden Takvim Ayarları'nı seçin. Açılan sayfada takvim kimliği, Takvim Adresi etiketli bir bölümde gösterilir. Kullanıcının birincil takviminin takvim kimliği, kullanıcının e-posta adresiyle aynıdır.
Bir istemci programı (ör. Mozilla Sunbird) başlangıç noktası olarak bir takvim koleksiyonu gerektiriyorsa bağlanılacak URI şu şekildedir:
https://apidata.googleusercontent.com/caldav/v2/calid/events
Eski uç nokta (https://www.google.com/calendar/dav) kullanımdan kaldırıldı ve artık desteklenmiyor. Bu uç noktayı riski size ait olmak üzere kullanabilirsiniz. Yukarıda açıklanan yeni uç nokta biçimine geçmenizi öneririz.
iCal®, Apple Inc. şirketinin ticari markasıdır.