Cara menambahkan event baru di google calender dengan link url di php

Kronologi

Saya punya website, yang di salah satu halamannya, ada semacam informasi penjadwalan. Dimana di kotak informasi tersebut, user bisa melihat, “tanggal berapa sih jadwal proses selanjutnya?”

Awalnya, user harus catat manual di kertas, atau di notes HP.

Tapi saya pengennya, proses jadi otomatis. Dimana user bisa tinggal klik satu tombol, lalu informasi otomatis tercatat di google calender si user (HP ataupun Desktop). Sehingga user nggak perlu lagi mencatat jadwal ini secara manual.

Kebutuhan

Cukup satu kali klik, google calender akan otomatis terbuka, dan sudah langsung terisi judulnya, tanggalnya dari tanggal berapa, sampai tanggal berapa, bahkan ada informasi tambahannya juga, yang mengandung link url.

Sehingga saat jadwalnya tiba, user dapat notifikasi di HPnya (pengingat). Saat notifikasi pengingat tersebut muncul, user tinggal klik, kemudian tampilah informasi catatan di google calender, lalu user tinggal klik link url, dan langsung di arahkan ke halaman yang mereka harus kunjungi, saat hari dimana jadwal telah ia tentukan. (semoga paham maksudnya 😂 lagi ngantuk banget males mikir).

Masalahya apa?

Sebenarnya, sistem pencatatan otomatis ke google calender ini sudah saya terapkan di website ini, sejak tahun 2018 lalu. Dan semenjak itu, semua user pakai dan semua berjalan dengan normal.

Cuman beberapa hari ini, user banyak yang info, kalau calender otomatisnya tidak merespon. Dimana saat di klik, muncul konfirmasi “sinkronisasi gagal”. atau kadang “event tidak ditemukan”, dll… Setelah saya coba sendiri, ternyata benar.

Solusinya apa?

Akhirnya, saya coba cek codingnya. Lalu saya coba cari referensi. Siapa tau aja, metodenya sekarang sudah berubah. Karena udah dari 2018, pasti ada yang di update oleh google.

Setelah cari tau, saya menyelesaikan masalah ini dengan 2 solusi.

Solusi 1 : ubah struktur url

Dulu format url yang saya pasang di code php saya seperti ini :

http://www.google.com/calendar/event?action=TEMPLATE&
text=isitext1&
dates=isitext2&
details=isitext2

Setelah saya cari referensi terbaru, formatnya sudah berubah menjadi :

https://calendar.google.com/calendar/render?action=TEMPLATE&
text=isitext1&
dates=isitext2&
details=isitext2

Dimana url awalnya : google.com/calendar/event?

Sekarang urlnya berubah jadi : calendar.google.com/calendar/render?

Jadi kemungkinan pertama, error terjadi karena struktur url salah.

Solusi 2 : biarkan baris text bersambung (jangan di enter)

Setelah saya coba solusi 1, memang ada perkembangan, dimana kalendernya tampil, tapi fieldsnya tidak terisi otomatis (seperti judul, tanggal, dan catatan).

Lumayan membingungkan, karena sudah ditulis dengan format/struktur sesuai dengan contoh di dokumentasi google, tapi hasilnya kok tetap salah atau nggak bisa.

Dan akhirnya nemu solusi 2.

Solusi 2 ini tidak sengaja saya temukan, karena saya bener-bener ubah satu persatu. dari judul dulu, dari tanggal, kemudian fields yang lainnya. Uji coba ini saya tidak rapikan, sehingga saya sambung textnya tanpa meng-enternya. Dan bisa.

Jadi ketemulah disana penyebabnya, bahwa itu disebabkan karena baris text urlnya, ternyata nggak boleh di enter. nggak boleh ada br (break).

Sehingga yang awalnya :

https://calendar.google.com/calendar/render?action=TEMPLATE&
text=isitext1&
dates=isitext2&
details=isitext2

Menjadi seperti ini :

https://calendar.google.com/calendar/render?action=TEMPLATE&text=isitext1&dates=isitext2&details=isitext2

Kesimpulan

Untuk membuat metode penambahan event/acara otomatis ke google calender, kamu bisa menggunakan format url ini :

https://calendar.google.com/calendar/render?action=TEMPLATE&text=isitext1&dates=isitext2&details=isitext2

Dengan ketentuan, barisnya harus nyambung, jangan di enter. Agar codenya bekerja dengan baik.

Kamu bisa menambahkan parameter-paramter lainnya, seperti lokasi, url, dll. Simak disini.

Semoga bermanfaat.

Salam.

Putu adi.


belajar kombucha

Follow saya di sosial media

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments