Announcement

Collapse
No announcement yet.

Managing Google Calendar with Kontact Calendar and GCALDaemon

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Managing Google Calendar with Kontact Calendar and GCALDaemon

    Hello All,

    my first post here as i have transferred from Ubuntu Feisty to Kubuntu Feisty and one of the first things i wanted to do was to manage my google calendar from my local client.

    I did a search and could not find anything similiar so i sincerely apologize if i have duplicated.

    So for those of you using Kubuntu (i am using v7.04) and want to manage your google calendar from Kontact, i have simplified what needs to be done to get it working.

    Please note that I have only simplified what needs to be done for using your Google calendar in Kontact Calendar and I do not take any credit for people that originally did all the hard work.

    For more detailed information please see the GCALDaemon home site.
    http://gcaldaemon.sourceforge.net/



    Step 1
    First you must have at least Java 1.6 for GCALDaemon to work, so check your version and if necessary install 1.6
    # java -version
    # sudo apt-get install sun-java6-bin


    Step 2
    download GCALDaemon
    http://downloads.sourceforge.net/gca...1.0-beta14.zip

    copy gcaldaemon-linux-1.0-beta14.zip into /usr/local/sbin and unzip

    # unzip /usr/local/sbin/gcaldaemon-linux-1.0-beta14.zip

    then set the necessary permissions

    # chgrp -R 'groupname' /usr/local/sbin/GCALDaemon
    # chmod -R g+w /usr/local/sbin/GCALDaemon
    # chmod 755 /usr/local/sbin/GCALDaemon/bin/*.sh


    Step 3
    At this point you will need to have the your private ical url and your password

    This can be found by going into your Google calendar settings and clicking on the ICAL button under Private Address, which should look similar to the below.

    http://www.google.com/calendar/ical/...8811/basic.ics

    Step 4
    now run the GCALDaemon password-encoder script
    # /usr/local/sbin/GCALDaemon/bin/password-encoder.sh and enter your Google Calendar Password at the prompt

    Your Google password: MyPassword

    Original password: MyPassword
    Encoded password: 317$$AZy92dzNXYQlXT

    Sample configuration options for GCALDaemon:

    file.google.password=317$$AZy92dzNXYQlXT
    ldap.google.password=317$$AZy92dzNXYQlXT

    notifier.google.password=317$$AZy92dzNXYQlXT
    sendmail.google.password=317$$AZy92dzNXYQlXT
    mailterm.google.password=317$$AZy92dzNXYQlXT


    Step 5
    move to the GCALDaemon conf directory
    # cd /usr/local/sbin/GCALDaemon/conf

    just in case you get make a mistake, simply make a copy of the config file
    # cp gcal-daemon.cfg gcal-daemon.cfg.orig

    now edit the gcal-daemon.cfg file and you need to make 4 changes
    move down to the header – CONFIGURATION OF THE FILE-BASED SYNCHRONIZER
    Change 1 – set Enable iCalendar file listener/synchronizer to true
    Change 2 – amend the Gmail user to your user name
    Change 3 – amend the Gmail password to your encrypted password you did in Step 4 above
    Change 4 – modify the URL to that of your private ical url. NOTE: drop the http://www.google.com

    Make a note of the Full path of the local iCalendar file, you will need this in the next step.

    # Enable iCalendar file listener/synchronizer^M
    file.enabled=true^
    ^M
    # Full path of the local iCalendar file^M
    file.ical.path=/usr/local/sbin/GCALDaemon/google.ics^M
    ^M
    # Gmail user (your full email address)^M
    file.google.username=Test_Account@gmail.com^M
    ^M
    # Gmail password (use password encoder!)^M
    file.google.password=317$$AZy92dzNXYQlXT^M
    ^M
    # URL (without hostname) of the Google Calendar's private ical file^M
    file.private.ical.url=/calendar/ical/Test-Account%40gmail.com/private-ab0cd41gt5b3e9b5f76021234af18811/basic.ics^M


    Now run a synchronization
    # /usr/local/sbin/GCALDaemon/bin/sync-now.sh
    INFO | GCALDaemon V1.0 beta 14 starting...
    INFO | RSS/ATOM feed converter enabled.
    INFO | Local time zone is Greenwich Mean Time.
    INFO | Start listening file /usr/local/sbin/GCALDaemon/google.ics...
    INFO | File listener started successfully.
    INFO | Offline file synchronization enabled.
    INFO | Synchronization finished.



    Step 6
    Add the calendar to Korganizer
    Under list of calendar's, click on Add and select 'Calendar in Remote File' option

    In the Name field, obviously call the Calendar what you like
    In the Download from: field, enter what was in the conf file - /usr/local/sbin/GCALDaemon/google.ics
    In the Upload to: field enter the same.

    Automatic Reload, i have set as Regular Interval 10 minutes
    Automatic Save set as On every change
    Then click on OK

    You should now see your Google Calendar.

    Any updates you make you will then need to run the synchronization as described at the end of Step 5.


    What i have noticed is though, apart from when you restart Kontact, the calendar wont update the display unless you right mouse click on the calendar name and select Reload.
    If you don't want to manually run the synchronization then you can start the GCALDaemon standalone server which will automatically update as per the interval set in the conf file.

    # /usr/local/sbin/GCALDaemon/bin/standalone-start.sh


    Hope this helpful.
    Dal

    #2
    Re: Managing Google Calendar with Kontact Calendar and GCALDaemon

    This is good... Just what I've been looking for.
    Thanks for this excellent tutorial!
    Dax Solomon Umaming<br />http://blog.knightlust.com/

    Comment


      #3
      Re: Managing Google Calendar with Kontact Calendar and GCALDaemon

      Hi,

      I've been able to setup GCALDaemon using the HTTP listener which works fine - to autostart I launch the daemon via script in KDE's Autostart folder.

      However, I'd appreciate guidance on whether to file a bug or enlist help to find a workaround for the following issue:

      According to this post http://ubuntuforums.org/showthread.php?t=354805, if one has 2+ calendars then Kontact throws an exception:

      Could not rename partial
      file /var/tmp/kdecache-[user]/kcal/kresources/[filename: example:f8OrXQBcY7]

      Please check permissions


      Any ideas or file a bug report?

      Comment

      Working...
      X