orgzly-android icon indicating copy to clipboard operation
orgzly-android copied to clipboard

Calendar support

Open dstrelnikov opened this issue 8 years ago • 10 comments

Good day!

Is it possible to add calendar support feature? I mean that app create a separate local calendar on my smartphone, which can be displayed in any calendar app. I like its realization in Simpletask Cloudless. If I set a due date or a trashold date for todo item that this item will displayed in a calendar.

Sorry for my bad English =)

dstrelnikov avatar Mar 29 '17 17:03 dstrelnikov

So, if somebody is interested with it, now I'm using Emacs Org-mode -> Export to iCalendar -> rsync -> ICSdroid to view a local .ics file in a calendar app.

It works and it follows unix-way but not so convinient as it may be.

I think that Issue #235 is not very relevant to my request. As I know, Simple Task app, which works with todo.txt, uses Android Calendar Storage API for creating events in a separate local calendar, which may be shown in any calendar app. It doesn't use third-party proprietary services.

I'm not Android programmer but I'm ready to be useful if there is something that I can do.

It looks like such feature in Simple Task contains in this file.

dstrelnikov avatar Mar 06 '18 10:03 dstrelnikov

Is there a chance this will ever get done? ;) Is this feature a lot of work?

tuvok avatar May 30 '18 14:05 tuvok

I second this. Would be super cool to have

  • One or multiple local calendars that is provided by orgzly and can be viewed in a calendar app on Android
  • One or multiple calendars that can be synced via CalDAV; I don't know if this is easily possible though. It could break as soon as the calendar is edited remotely in an editor that's not compatible with org-mode if the mapping of org -> ical (or whatever) isn't clean

rrrnld avatar Nov 25 '18 11:11 rrrnld

An interesting candidate would be EteSync, an issue is already posted here : https://github.com/etesync/android/issues/87

reyman avatar Aug 30 '19 13:08 reyman

I just wanted to note there's also already https://github.com/dengste/org-caldav for doing caldav integration. Maybe that could be looked at for compatibility?

rrrnld avatar Nov 15 '19 17:11 rrrnld

I have hacked this together: https://github.com/larkery/orgcal which does this, but not within orgzly. I use it alongside orgzly which is ok

It's not too complicated, once you've got the mad android calendar API down, but does require some kind of ID for entries to make synchronization possible.

larkery avatar Dec 09 '19 17:12 larkery

Some great tips here. While creating a direct calendar provider that serves a saved query would be great, a workaround might be exporting ICS in Termux (https://orgmode.org/manual/iCalendar-Export.html) and serving it through ICSx5

alensiljak avatar Jun 28 '22 18:06 alensiljak

If relying on ICSx5, all that would be needed for this functionality is an ICS export in the search results (i.e. Agenda). Remembering the location and using the query name for the file would provide a source to be read by ICSx5.

alensiljak avatar Jun 28 '22 20:06 alensiljak

Native calendar support would be nice. In the mean time I am using this:

https://github.com/myuhe/org-gcal.el

which will update google calendar every time you save an agenda file and when opening an agenda view on the desktop. It allows you to use any android calendar app for viewing.

cpchan avatar Jun 28 '22 23:06 cpchan

First thankyou for orgzly-android, a great app which opens the org-mode organization system to non-emacs users.

penning my 2-cents thoughts,

Given the format/feature differences between ical & orgmode, I believe 2-way-full-round-tripped-ical-sync would be asking too much. As entries have IDs, they will need to tracked/managed while being processed. Its great if its doable.

What if the following was possible, two independent one-way-syncs, which could be a stepping stone before someone figures out how to do 2-way-full-round-tripped-ical-sync ...

This could be either done in-app or as a companion app or companion background process that monitors and notified by change in file-modified-time of ical files, or as MisterY suggested in earlier comment, using direct-Calendar-providers.

  • A user first creates two calendars (say on google/nextcloud/etc). Identify them as: Cal-In and Cal-View

    • Cal-In calendar is used to add events directly manually or otherwize ex gui/email/messegers clients etc.
    • User (1) fetches from Cal-In (2) uses emacs/orgzly/etc to do any whatsever org-mode task management (3) pushes to Cal-View
    • Cal-View calendar is used to show the user's calendar after it has been processed by orgzly. This is not to be modified by users as manual edits will be lost.
  • Cal-In to org-mode

    • orgzly/or a companion app fetches, by a one-way sync, an updated Cal-In from ical/caldav/webdav/google-calendar
    • orgzly, notices the updated file, parses the ics file, identifies the eventID-s that are new/modified and updates the org-mode files
  • org-mode to Cal-View

    • orgzly/companion app, pushes, by way of a one-way-overwrite/sync, to ical/caldav/webdav/google-calendar periodically after converting the agenda of the entire org-mode to ical

hgkamath avatar Jun 29 '22 16:06 hgkamath