PlayBook on the Cloud way

With the update of the BlackBerry OS playbook, RIM offers us the possibility to use native address book and calendar.

But how to synchronize its address book and calendar with other tools, or even more simply, how to import their address book ? No application available ; impossible with the BlackBerry Desktop Manager…

Indeed, there are few solutions! RIM has made a bold choice ! Turning now to the Cloud technologies. Besides having a hotmail or gmail, it is possible to synchronize its data via a webdav service, and more precisely CardDAV for the address book and CalDAV for agenda.

It is in this context that I write this article. How to install / use CardDAV and CalDAV with her BlackBerry playbook.

I made the choice to install OwnCloud on my Linux server. OwnCloud is a young project written in PHP that offers much more than support CardDAV and CalDAV. It lets you share data via WebDAV, read his music streaming …

I installed git repository since its OwnCloud :

[nicolas@Dahlia ~]$ cd /home/httpd/html
[nicolas@Dahlias /home/httpd/html]$ git clone git:// owncloud

Once the application is installed and configured your HTTP server, in my case a server Apache2 + MySQL + PHP.

<VirtualHost *:443>
DocumentRoot /home/httpd/html/owncloud
CustomLog /var/log/apache2/OwnCloud.log combined
ErrorLog /var/log/apache2/OwnCloud.log
TransferLog /var/log/apache2/OwnCloud.log
GnuTLSEnable on
GnuTLSCertificateFile /etc/ssl/private/
GnuTLSKeyFile /etc/ssl/private/

<Directory /home/httpd/html/owncloud>
	AllowOverride All

<IfModule mod_php5.c>
	php_flag register_globals Off
	php_flag track_vars Off

I have done some changes to simplify its use, including use of short URLs.

After creating an account, you just have to try …

Before testing the playbook, I try to access the service WebDAV via nautilus:

Then I test CardDAV and CalDAV via Evolution :

Unfortunately, it was not as easy for the playbook. Indeed, the implementation of RIM is not perfect and errors !

So I changed OwnCloud to circumvent these problems because I am not possible to change the playbook itself. I hope my specific amendments “playbook” will soon be removed when RIM will have corrected the implementation of these services.

With these changes, I do not encounter difficulties and I can now fully take advantage of these new applications.

To use the web interface of the browser OwnCloud with the playbook, I disabled the application “PDFViewer”.

All my application changes its OwnCloud available on my GIT repository :;a=summary

This entry was posted in BlackBerry and tagged , . Bookmark the permalink.

10 Responses to PlayBook on the Cloud way

  1. vilar says:

    I do believe all of the ideas you’ve presented on your post. They are very convincing and can definitely work. Still, the posts are very short for beginners. May you please extend them a little from next time? Thank you for the post.

  2. roland.chaouat says:

    Playcloud est parfait pour la Playbook.
    Du coup, grâce à vous , j’ai découvert Dropbox puis me suis abonné à leur service.
    Simplement, de la Playbook, on ne peut ouvrir un fichier directement sur la dropbox; il faut le copier dans un dossier de la playbook, puis l’ouvrir. Copier, renommer, détruire fonctionnent parfaitement, par contre.
    Merci de vérifier.

    • Nicolas says:

      Je confirme que pour l’instant on ne peut pas ouvrir directement un document qui sur Dropbox (ou Box).

      Ce sera pour la prochaine version. PlayCloud copiera temporairement le fichier en local.


  3. CaCO3 says:

    Could you summarize which changes you had to do in Owncloud to get CalDAV and CardDAV working?
    It seems that you used Owncloud 4 or even 4. Did you also test it with 4.5 or even 5 (which ist just outside the door)?
    Got your modifications included into the official code?

    I have a BB10 (not a PlayBook), but I believe the code base is very similair since the PlayBook apps run on the BB10.

  4. Christian Mueller says:


    thanks for putting all the effort into getting this working. I’m in the same situation and looked at the patches but must admit I’m confused by this one:

    diff –git a/lib/vobject.php b/lib/vobject.php

    index 4b0d527..dce1c80 100644 (file)

    — a/lib/vobject.php
    +++ b/lib/vobject.php
    @@ -126,9 +126,11 @@ class OC_VObject{
    return $property;

    – public function setUID() {
    – $uid = substr(md5(rand().time()),0,10);
    -// $uid = substr(md5(rand().time()),0,10);
    + public function setUID($uid=null){
    + if ($uid === null) {
    +// $uid = substr(md5(rand().time()),0,10);
    + $uid = ‘owncloud-‘.md5(rand().time());
    + }
    $uid = ‘owncloud-‘.md5(rand().time());
    return $uid;

    Essentially, this patch executes the statement “$uid = ‘owncloud-‘.md5(rand().time());” once if $uid was set and twice if $uid was null. Is this the desired outcome?


Leave a Reply

Your email address will not be published. Required fields are marked *