2015-03-30 1 views
3

Для моего приложения мне нужно использовать сервер календаря с открытым исходным кодом. После некоторых исследований я выбрал Bedework Server для своей задачи. В основном я хочу использовать этот сервер для обработки событий календаря моего приложения. Несмотря на то, что я установил локальный сервер, используя пакет быстрого запуска, я все еще смущен тем, как я могу это использовать. Я могу создавать события, используя его веб-интерфейс. Но я хочу использовать это как услугу с моего сервера (что-то вроде службы REST). Я прочитал их документацию, но я не мог найти ничего, что поможет. Я очень благодарен, если вы можете мне помочь в этом. Заранее спасибо.Как использовать сервер постельного белья в качестве службы для другой системы

+1

Любые обновления? Мне интересно ваше решение, спасибо –

ответ

0

Вы можете получить доступ к серверу с помощью CalDAV protocol. Это стандартный протокол REST, который определяет способ создания/запроса/удаления событий и todos. Это тот же протокол, что и приложения Calendar или Reminders для OS X и iOS, чтобы разговаривать с сервером.

CalConnect CalDAV website является хорошей точкой входа, чтобы узнать больше об этом.

+0

Привет большое спасибо за вашу информацию. Я обязательно проверю это. Проблема для меня заключается в том, что я хочу создать событие календаря. Для чего будет URL, с которым я должен поговорить? У меня все еще есть очень размытое понимание этого. Надеемся, что ваши входы потеряют больше света. – igk

+0

Итак, какая часть RFC вам непонятна? Это подробное объяснение того, как это работает? Другой ресурс: http://sabre.io/dav/building-a-caldav-client/ – hnh

+0

@hnh, я только что установил постельное белье 3.10.2 и попытался получить доступ/ucaldav/user/vbede/calendar, поскольку протокол указывает на получение события, но ничего не возвращено, ну, он возвращает html, если я удалю заголовок ACCEPT .... возможно ли, что постель реализует его по-другому? Спасибо за любой совет заранее :) –

0

Если вы все еще ищете это, вы можете попробовать использовать любые библиотеки клиента CalDAV -

CalDAV-libraries

Я попробовал библиотеку CalDAV4j. Для всех основных случаев использования он работает нормально.

Существует также демонстрационный GitHub проект этой библиотеки, разработанной, чтобы вывести список событий в сервере -

list-events-caldav4j-example

Вы можете сделать использование ListCalendarTest.java в проекте и предоставить соответствующие конечные точки конфигурации хоста. Пример (для постельного белья) -

HttpClient httpClient = new HttpClient(); 
    // I tried it with zimbra - but I had no luck using google calendar 
    httpClient.getHostConfiguration().setHost("localhost", 8080, "http"); 
    String username = "vbede"; 
    UsernamePasswordCredentials httpCredentials = new UsernamePasswordCredentials(username, "bedework"); 
    ... 
    ... 
    CalDAVCollection collection = new CalDAVCollection("/ucaldav/user/" + username + "/calendar", 
      (HostConfiguration) httpClient.getHostConfiguration().clone(), new CalDAV4JMethodFactory(), 
      CalDAVConstants.PROC_ID_DEFAULT); 
    ... 
    ... 
    GenerateQuery gq = new GenerateQuery(); 
    // TODO you might want to adjust the date 
    gq.setFilter("VEVENT [20131001T000000Z;20131010T000000Z] : STATUS!=CANCELLED"); 
    CalendarQuery calendarQuery = gq.generate();