[horde] import calendar events into kronolith - using xmlRPC?

Jan Schneider jan at horde.org
Thu Jan 21 15:51:57 UTC 2016


Zitat von Daniel <horde at daniu.de>:

> Hi,
>
> I am new to the list - hope my request is in the right place here:
>
> My final goal is to get a calendar from google into kronolith.  
> Unfortunately my provider did not setup kronolith so that I can do  
> that with kronolith itsself so I think of a cron-job that does that  
> with a php script (I am not talking about syncing - just copying the  
> google calendar to kronolith. Since the google calendar itsself gets  
> populated with a cron-job itsself it's ok to have accurate data only  
> after copying). I can already read all appointments from google  
> (caldav still works) - so I got a string with Vevent infos. The plan  
> is to purge the existing calendar in kronolith and write all events  
> from the string into the existing calendar.
>
> I tried to adjust this: http://theupstairsroom.com/66 but don't seem  
> to get it working at all. Partly because I don't have access to  
> horde sources on the server from which I connect to the Horde - so I  
> need to use another RPC-client. I would like to use the RPC-client  
> built in php (epinion.com) which is turned on according to phpinfo.  
> Somehow I cannot really find a good tutorial how to do that.
>
> Adjusting a script from php.net gave me the attached attempt. That  
> one does nothing unfortunately ... (but at least no error message)
>
> Can someone point me in the right direction? Or is there a simpler  
> way to achieve what I want to do?
>
> Is https a problem for what I want to do? Are my adjustments for  
> that correct?
>
> Looking at the api it seems like the purge function from import in  
> the GUI did not make it in there ... any chance to still do it or  
> get it in the api?
>
> Thanks for any input!
>
> (BTW: there is a sourceforge project with exactly that topic, but it  
> does not work any more and the author did not maintain it - I even  
> asked him and he says he cannot help -  
> http://sourceforge.net/projects/kron2gcalsync/)
>
> ***
> function do_call($host, $port, $request) {
>
>      $url = "https://$host:$port/";
>      //echo $url;
>      $header[] = "Content-type: text/xml";
>      $header[] = "Content-length: ".strlen($request);
>      $to['user']='username';
>      $to['pass']='password';
>      $userpwd = $to['user'] .":". $to['pass'];
>
>
>      $ch = curl_init();
>      curl_setopt($ch, CURLOPT_URL, $url);
>      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
>      curl_setopt($ch, CURLOPT_TIMEOUT, 1);
>      curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
>      curl_setopt($ch, CURLOPT_USERPWD, $userpwd);
>      curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
>      curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
>      curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
>
>      $data = curl_exec($ch);
>      if (curl_errno($ch)) {
>          print curl_error($ch);
>      } else {
>          curl_close($ch);
>          return $data;
>      }
> }
>
> $host="path/rpc.php";
> $port=443;
> $request = xmlrpc_encode_request('kronolith.listCalendars', array());
> $response = do_call($host, $port, $request);
> echo $response;
> ***
>
> regards
>
> -- 
> Horde mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: horde-unsubscribe at lists.horde.org

You want to use the kronolith-import-icals script that comes with Kronolith.

Beside that, you probably want to rather use the jsonrpc interface  
which is much simpler to accomplish than xmlrpc. I'm not even sure we  
still support this.

-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the horde mailing list