LinuxMCE Forums

General => Developers => Topic started by: bulek on October 12, 2008, 10:48:37 am

Title: Calendar and other family time management features - how to start ?
Post by: bulek on October 12, 2008, 10:48:37 am
Hi,

I've read this in other thread and would like to hear some more opinions on how to implement such features that are quite needed (at least in my case) to better manage family time (appointments,remainders,calendar,todo's....)...

there currently is no calendar for lmce, but i do plan to add a few things to the orbiter, this being one of them, eventually.

....

-Thom


Do you have any plans or ideas, what to use for backend support for calendar - maybe some lighter groupware... ?
Major advantage of such solution would be possibility to sync with outlook and mobile phones...  I'd like to try few options, I'm just curious what are your current plans on how to tackle this one on the backend side...

Currently Egroupware attracts my attention. Main advantage is possibility to sync data with mobile phones and outlook....Major disadvantage is that it is probably an overkill, also it has quite complicated web GUI.... I'd like to have something lighter, but haven't found anything usefull yet... Anyone has some proposition ?


Thanks in advance,

regards,

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 12, 2008, 07:21:23 pm
the trick is to choose a system that is:

(1) Lightweight, few dependencies
(2) has an RPC interface that exposes the calendar data and commands to push data to and from the calendars

if we have to design something to that effect, then..cool..whatever. most of the larger groupware systems are very heavy, and would markedly increase dependencies.. and a lot of the smaller ones lack the RPC needed to present a proper orbiter interface....

so i guess, we write our own.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 12, 2008, 09:11:57 pm
the trick is to choose a system that is:

(1) Lightweight, few dependencies
(2) has an RPC interface that exposes the calendar data and commands to push data to and from the calendars

if we have to design something to that effect, then..cool..whatever. most of the larger groupware systems are very heavy, and would markedly increase dependencies.. and a lot of the smaller ones lack the RPC needed to present a proper orbiter interface....

so i guess, we write our own.

-Thom


How about e-Groupware? http://www.egroupware.org/ (http://www.egroupware.org/)

It has an xml-rpc interface and has few dependencies... see http://www.egroupware.org/dependencies (http://www.egroupware.org/dependencies)

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 13, 2008, 12:15:10 am
the trick is to choose a system that is:

(1) Lightweight, few dependencies
(2) has an RPC interface that exposes the calendar data and commands to push data to and from the calendars

if we have to design something to that effect, then..cool..whatever. most of the larger groupware systems are very heavy, and would markedly increase dependencies.. and a lot of the smaller ones lack the RPC needed to present a proper orbiter interface....

so i guess, we write our own.

-Thom


How about e-Groupware? http://www.egroupware.org/ (http://www.egroupware.org/)

It has an xml-rpc interface and has few dependencies... see http://www.egroupware.org/dependencies (http://www.egroupware.org/dependencies)

Andrew
Hi,

I'm also leaning toward egroupware at the moment....

Particularly important is abitlity to sync with mobiles and outlook (at least in my case and thinking)....
http://www.egroupware.org/sync (http://www.egroupware.org/sync)

Let me add another few interesting links I found on this matter :
http://www.cynthiaarmistead.com/groupware/index.shtml (http://www.cynthiaarmistead.com/groupware/index.shtml)
http://lists.netisland.net/archives/plug/plug-2006-03/msg00036.html (http://lists.netisland.net/archives/plug/plug-2006-03/msg00036.html)

This guy already tried few alternatives :
http://modernnomads.info/blogs/view_post.php?content_id=212 (http://modernnomads.info/blogs/view_post.php?content_id=212)

I've also spotted good opinions for Zimbra ....

http://mac.softpedia.com/progScreenshots/Zimbra-Collaboration-Suite-Screenshot-12739.html (http://mac.softpedia.com/progScreenshots/Zimbra-Collaboration-Suite-Screenshot-12739.html)

Screenshots looks way better, it has soap interface (and I think sync feature also) and a lot of example scripts :
http://zimbra.svn.sourceforge.net/viewvc/zimbra/trunk/ZimbraServer/src/perl/soap/ (http://zimbra.svn.sourceforge.net/viewvc/zimbra/trunk/ZimbraServer/src/perl/soap/)

HTH,

regards.

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 13, 2008, 12:49:58 am
honestly, i have serious problems bringing together all these different web UIs.

It's all duct tape. We need to unify the look of all the apps, web and orbiter, together!

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 13, 2008, 09:18:15 am
honestly, i have serious problems bringing together all these different web UIs.

It's all duct tape. We need to unify the look of all the apps, web and orbiter, together!

-Thom

I couldn't agree more. But this means a lot of work and it will take time to complete it...

But in the mean time, we can have a good backend with some sort of API interface and we can show info in limited way in Orbiters and for now use web interface. We can also make our own web interface via API - but till then we can use existing web UI, subset of features via Orbiter and sync feature with mobile phones and outlook...

So I guess we should consider those apps as backend engines with possibility to interact with them via API interfaces... LMCE is using this philosophy all over the system...

I guess what we need now is some possibility to show/interact with such data on Orbiter, create some standard way of presenting/storing such data and then let different plugins handle it. Since this is time non-critical task, using Ruby would be probably more widely accepted...

Regards,

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 13, 2008, 03:30:05 pm
honestly, i have serious problems bringing together all these different web UIs.

It's all duct tape. We need to unify the look of all the apps, web and orbiter, together!

-Thom

I couldn't agree more. But this means a lot of work and it will take time to complete it...

But in the mean time, we can have a good backend with some sort of API interface and we can show info in limited way in Orbiters and for now use web interface. We can also make our own web interface via API - but till then we can use existing web UI, subset of features via Orbiter and sync feature with mobile phones and outlook...

So I guess we should consider those apps as backend engines with possibility to interact with them via API interfaces... LMCE is using this philosophy all over the system...

I guess what we need now is some possibility to show/interact with such data on Orbiter, create some standard way of presenting/storing such data and then let different plugins handle it. Since this is time non-critical task, using Ruby would be probably more widely accepted...

Regards,

Bulek.


I agree with both of you on this... Thom's right we ultimately need a single Web UI for all the of the services. But I agree that using what is available now in whatever e-Suite is chosen is ok as long as its a 'stepping stone' to a fully harmonised Web UI. The most important thing is to get the hooks in place in the orbiter to allow for the display/presentation of reminders/alerts/IM etc.

All the best

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: posde on October 13, 2008, 03:48:32 pm
So, we need a device that is capable of receiving messages from the dcerouter, and sending messages to the dcerouter.

This DCE device needs to be able to receive notification messages from the outside world and translate those messages to DCE messages. And this DCE device needs to receive DCE messages and send them to the outside, in whatever format necessary.

Doesn't that sound a bit like a GSD with the serial/IR part removed?

rgds
Oliver
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 13, 2008, 04:48:03 pm
well basically...

what you have, is a back end that's exposed. With e-groupware, this is probably xml-rpc.

we have an xml-rpc provider device that runs on the core, that marshals requests to and from said backend.

then we have a plugin running on the router (Groupware plug-in?) .. that creates the data grid generators, and any event interceptors that we wish to catch events being emitted to the provider. The datagrid and event interceptors must be done inside a plugin because these functions need direct access to pointers to the relevant classes (Orbiter_Plugin, Datagrid_Plugin, etc.)

We then feed the appropriate datagrids, which we can then place on orbiter displays.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: itspac on October 13, 2008, 11:13:57 pm
http://www.opengroupware.org/en/applications/index.html (http://www.opengroupware.org/en/applications/index.html)
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 14, 2008, 10:50:41 am
http://www.opengroupware.org/en/applications/index.html (http://www.opengroupware.org/en/applications/index.html)

Well OpenGroupware seems to have an xml-rpc API so thats good. However it does not seem to have any specific Kubuntu support... I could be wrong about that though. I also could not find any information about its dependencies.

So all in all I guess OpenGroupware is a candidate too...

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 14, 2008, 02:54:43 pm
http://www.opengroupware.org/en/applications/index.html (http://www.opengroupware.org/en/applications/index.html)

Well OpenGroupware seems to have an xml-rpc API so thats good. However it does not seem to have any specific Kubuntu support... I could be wrong about that though. I also could not find any information about its dependencies.

So all in all I guess OpenGroupware is a candidate too...

Andrew

I'll probably try Zimbra (cause of web interface) and Egroupware (cause it has nice sync mobile/outlook features). I'll report back...

For a start I'll try to prepare module in Perl that will report on upcoming and existing events in calendar... Anyone with similar plans...

Regards,

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: chriss on October 14, 2008, 03:13:59 pm
Hi Bulek,

I'm currently checking out Funambol (www.funambol.com/opensource) for my company. It provides good synchronization support (calendar, contacts, notes, emails...) between different devices, e.g. Outlook, Thunderbird/Lightning/Sunbird, mobile phones, PDAs etc. Funambol is no groupware but a pure SyncML synchronization server. If you have a nice groupware that does not provide satisfy with its synchronization feature Funambol can be the link to your home computer and CE devices. I think it would be cool to have such a sophisticated synchronization mechanism inside LMCE.

Regards,
Chriss
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 14, 2008, 03:15:22 pm
http://www.opengroupware.org/en/applications/index.html (http://www.opengroupware.org/en/applications/index.html)

Well OpenGroupware seems to have an xml-rpc API so thats good. However it does not seem to have any specific Kubuntu support... I could be wrong about that though. I also could not find any information about its dependencies.

So all in all I guess OpenGroupware is a candidate too...

Andrew

I'll probably try Zimbra (cause of web interface) and Egroupware (cause it has nice sync mobile/outlook features). I'll report back...

For a start I'll try to prepare module in Perl that will report on upcoming and existing events in calendar... Anyone with similar plans...

Regards,

Bulek.


One of my team here reckons that Zimbra will prove very difficult to get working if you want to install it on the Core... due to a large amount of dependencies. It might prove easier if on a secondary box. Another problem he highlighted is the performance hit Zimbra may make on the Core... its written in Java and its recommended that you have at least 1gig of RAM just for Zimbra... of course the Core already had dozens of heavy weight processes running on it... so this may prove to be a real problem.

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 14, 2008, 03:19:20 pm
guys
guys
GUYS
GUYS!!!

STOP THINKING HUGE!

All of these systems you're proposing are downright humongous groupware systems intended for either departments or corporate use, they have no applicability in a home, and will become a user interface nightmare, at the very least, not counting dependency hell etc.

Before we think anything, we need to lay out how we want the user experience to be.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 14, 2008, 03:58:08 pm
guys
guys
GUYS
GUYS!!!

STOP THINKING HUGE!

All of these systems you're proposing are downright humongous groupware systems intended for either departments or corporate use, they have no applicability in a home, and will become a user interface nightmare, at the very least, not counting dependency hell etc.

Before we think anything, we need to lay out how we want the user experience to be.

-Thom


The more I look at this I think Thom is right. All of the candidates we have discussed in this thread are very heavy 'corporate' style servers that really have an enormous amount of overhead and baggage associated with them... we need something lighter and simpler in my opinion....


Here's my input on Orbiter user experience for IM, Calendar, email;

If I am playing media then display either a simple 'annunciator icon' to indicate an event or display the the full event (for IM or calendar) and a way to display that event over the media if i choose to deal with it now. This should be configurable per user. My events should display on any Orbiter if I login.

The IM stream should be displayable over the currently playing media or alongside the UI2 menu bar/pss (without taking over the whole screen) and I should be able to interact with the message stream and also show/hide that stream interactively.

New calendar items should be creatable from the Orbiter while media is playing or from the UI2 menu bar/pss using a slim in-line event creation screens (that use only the lower part of the screen for example).  Viewing a calendar, either your own or another user or a hybrid of all the calendar events for the whole family should be possible from the Orbiter... these view would be full screen probably to give enough screen real-estate.

OK... thats a start... and hopefully kick off the debate!!!

All the best

Andrew

Email should be accessible for both reading and writing/replying but the assumption here is that this activity would take over most of the screen real estate.


Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 14, 2008, 04:42:43 pm
yes, my initial tests with IM indicate that with the right background, Email, Calendar, and IM functions would overlay over roughly 3/4ths of the display.

as seen in this little sketch:

http://imagebin.ca/view/gmLb5gX.html

and for those who hadn't seen it, me messing around a bit with an IM layout:
http://www.localeconcept.com/private/im_2.png

The Sketch here can be adapted for almost every orbiter, except the Cisco 7970, which needs a special read-only version.

Notice that the display takes up the right hand section. This is so that the close button is in the familiar place. But as you see here, with clever use of alpha (read: NOT AS IT'S DONE IN THE BASIC SKIN!), you can create something which will still allow you to see your media behind, while providing a readable work area for the email and IM areas.

I'm glad work in this area is now being discussed, because I see Orbiter (or whatever we ultimately wind up using) as a "house wide user interface" ... the first deliberate design of its kind, where you would have all services, not just media and house control, but IM, document viewing/printing/etc, email, telephony and conferencing etc basically follow you wherever you go throughout your house (or even multiple houses).

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 14, 2008, 08:58:04 pm
Hi,

I just wanted to add one additional idea that I found really usefull on 3Com Audrey devices, that never got implemented on other systems (at lease I haven't seen it)...

Mail handling was made simply by recording your response in voice and send it as wav attachment back and also recognize such emails and play attached wav file back... Much easier for non techie users than typing by keyboard... They also had possibility to write note with pen on touchscreen and send it as jpeg image.... Much more personal and friendly email...

HTH,

regards,

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 14, 2008, 09:10:54 pm
yes, my initial tests with IM indicate that with the right background, Email, Calendar, and IM functions would overlay over roughly 3/4ths of the display.

as seen in this little sketch:

http://imagebin.ca/view/gmLb5gX.html

and for those who hadn't seen it, me messing around a bit with an IM layout:
http://www.localeconcept.com/private/im_2.png

The Sketch here can be adapted for almost every orbiter, except the Cisco 7970, which needs a special read-only version.

Notice that the display takes up the right hand section. This is so that the close button is in the familiar place. But as you see here, with clever use of alpha (read: NOT AS IT'S DONE IN THE BASIC SKIN!), you can create something which will still allow you to see your media behind, while providing a readable work area for the email and IM areas.

I'm glad work in this area is now being discussed, because I see Orbiter (or whatever we ultimately wind up using) as a "house wide user interface" ... the first deliberate design of its kind, where you would have all services, not just media and house control, but IM, document viewing/printing/etc, email, telephony and conferencing etc basically follow you wherever you go throughout your house (or even multiple houses).

-Thom


Thom,

Your 'sketch' skin looks very nice. It would be great  if we could show/hide the on-screen keyboard so that users with wireless keyboards did not see the on-screen one.

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: los93sol on October 15, 2008, 04:15:29 pm
Wow!  That's some good stuff Thom and I agree, I also see LMCE is a whole house UI, the current possibilities are only touching the tip of what this system can do.  Out of curiosity as I have not played around to get any of the IM and calender things setup, are settings held on a per user basis?  What I mean is, if I'm using my LMCE box it will log me in on my username, then if my wife is using and signed onto the LMCE box, it will log her in with her username?  I do think that effectively using profiles and as little end user maintenance as possible is the key for this.

Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 15, 2008, 04:20:51 pm
los93sol: it currently does not exist yet.. this is still the design and sketch phase, but...

Basically, in the setup wizard, you would fill in the blanks for your profile information. Once this is filled in, and the router reloaded, the system would log ALL the users into their respective accounts simultaneously, and keep them there. Basically what you're doing when you flip users, is telling the orbiter that you wish to see messages etc directed toward you, so you can have user "thom" selected on the couch orbiter and on the TV and on the Cisco phone, and all the IMs and email notifications would go to those orbiters (conversely if I tried to write a mail message, it would be from me. Whereas, user "mary" could be logged in on her cell phone orbiter and she would recieve mails and IMs there.

Also keep in mind, this ties in with the user access control currently present on the Orbiters (where you can select which users can use which orbiters)

This is all possible due to the way that DCE works, the messages all flow through the system and get populated to the appropriate data grids etc, we just populate everything, and when you change users etc, orbiter just takes that into account (<%=U%>), when determining what to display.

:)

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: colinjones on October 16, 2008, 01:33:40 am
Thom - any chance that a "group" concept might be added to the orbiter? I have often thought about this before in the context of creating a group such as "Parents" or "Kids" which you could log an orbiter in as, and phone calls for any in the group get directed there, or private media combines the contents of each user's media folder, rather than just a single user.

I thought this would be good prior to now with existing functionality, but if an IM client is added this would be even more useful... but from my limited understanding, this could be a huge undertaking... or depending on how the classes are written, I suppose this could just be a case of adding a new one to handle combining? Not sure how this would apply to IM and phone calls tho...

Col
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 16, 2008, 01:51:39 am
will consider that for a future version. :)

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: itspac on October 16, 2008, 05:00:49 am
well simple is better. why not use a simple ical format. or a DB backed cal/ todo. I dont know how well that syncs with devices but maybe you vcards via bluetooth?

I know this is a fedora article but...

http://fedoranews.org/mediawiki/index.php/Building_a_Simple_Calendar_Server_with_Fedora_and_WebDAV (http://fedoranews.org/mediawiki/index.php/Building_a_Simple_Calendar_Server_with_Fedora_and_WebDAV)
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 16, 2008, 05:19:10 am
that would work. what i would recommend is essentially a dce device that contains the following commands:

* get calendar
* modify event (can be used for add and modify)
* delete event
* export iCalendar
* import iCalendar

and exposes the following events:

* Event added/changed
* Event removed
* Event alarm

we already have the database. It would just need a new sql2cpp class generated to twiddle the calendar bits.

We could then create a simple dce proxy to handle the web services. This way, the DCE device could listen for events much the same way as the orbiter (and if the web interface was up, alarms would work etc.) the PHP code for the web would use this interface to deal with the calendar data instead of doing raw sql calls, and would nicely abstract the backend away from the web bits.

See guys? if we actually build this as an integrated part of the system, we:

(1) learn how this system ACTUALLY works!
(2) can build something cohesive and i dunno.. apple like? ;-)
(3) wind up with something simpler and more maintainable.
(4) provide a base to actually flesh out more mobile functionality that would be fluid, instead of tackied on.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 16, 2008, 09:30:14 am
well simple is better. why not use a simple ical format. or a DB backed cal/ todo. I dont know how well that syncs with devices but maybe you vcards via bluetooth?

I know this is a fedora article but...

http://fedoranews.org/mediawiki/index.php/Building_a_Simple_Calendar_Server_with_Fedora_and_WebDAV (http://fedoranews.org/mediawiki/index.php/Building_a_Simple_Calendar_Server_with_Fedora_and_WebDAV)
Hi,

this is getting interesting... I like this approach... I just wonder if there are some syncml servers that can serve data in such webdav calendar. Then we have what we ever wanted for....

Andrew, does funambol shows any sign of using same calendar file to sync with mobiles ?
Maybe it does : https://core.forge.funambol.org/ds/viewMessage.do?dsForumId=405&dsMessageId=24032 (https://core.forge.funambol.org/ds/viewMessage.do?dsForumId=405&dsMessageId=24032)

Thom, thanks for informations. It seems that this is the proper way to go.

BTW, does anyone know how secure are we at the moment regarding web server and remote access - any simple ways to enhance it ?

Thanks in advance,

regards,

Bulek.

Update: have found thread that describes that syncing with Outlook can result in local ical file... is this the file that could be used also for sync with mobiles and access of our LMCE connector ?
https://core.forge.funambol.org/ds/viewMessage.do?dsForumId=416&dsMessageId=17217 (https://core.forge.funambol.org/ds/viewMessage.do?dsForumId=416&dsMessageId=17217)
Title: Re: Calendar and other family time management features - how to start ?
Post by: chriss on October 16, 2008, 11:14:42 am
I don't think mixing systems (SyncML/iCal) is a very good idea. My experience is that you usually get problems when trying to convert between the systems a do a sync through a chain of components, e.g., SyncML server -> Outlook (via SyncML) -> convert to iCal -> Outlook sync connector. You usually get duplicated events, malformed data etc.

I proposed Funambol as a backend server for syncing because it already provides connectors for numerous systems, e.g. Outlook, mobile phones etc. If we really need to implement a new calendar engine for handling events the LMCE way, it should not make a big difference wether it supports iCal or SyncML...

BTW, another benefit of using Funambol would be the possibility to sync other data, too, e.g., contacts.

Regards
Chriss
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 16, 2008, 01:33:22 pm
guys.

Use the same patten that's already present in LinuxMCE:

* Calendar Plugin - Handles high level interactions, as well as providing data grid generators for the house, as well as the exporting functions for icalendar, etc... it also deals with providing the web service interface.

and for each type of calendar system we connect to, there is a device running somewhere, usually on the core:

* Local House Calendar - Provides a basic data store.

other possibilities would be:

* Exchange device
* CalDAV device

etc.

This way, we leverage an extensible system.

Please take some time and study this system. Once you do, you'll realise that there is already a very robust system in place to build something like this on.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: itspac on October 17, 2008, 05:05:07 am
I dont know much about LMCE syncML or funambol etc etc etc. so, my question is. Is there a way to synce devices without all these different software involved? i know it may not be wireless sync, but is it not as simple as sending the right commands to  your device? I am a blackberry user and of course wireless sync would be nice, but could live with connecting the usb cable as long as it works.

btw   i need to get deeper into understanding LMCE so when thom writes stuff, I actually know where to go look.
Title: Re: Calendar and other family time management features - how to start ?
Post by: totallymaxed on October 18, 2008, 02:33:16 pm
I dont know much about LMCE syncML or funambol etc etc etc. so, my question is. Is there a way to synce devices without all these different software involved? i know it may not be wireless sync, but is it not as simple as sending the right commands to  your device? I am a blackberry user and of course wireless sync would be nice, but could live with connecting the usb cable as long as it works.

btw   i need to get deeper into understanding LMCE so when thom writes stuff, I actually know where to go look.

The answer is currently 'no'... thats why we're having this discussions about adding this capability ;-)

Andrew
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 18, 2008, 02:59:01 pm
Hi,

I guess at the moment, we're seeking for a convenient way to use funambol and access/edit that data from wrapper that will connect to LMCE...

At the start I'll try to write Perl script that will make speech announcements out of data - since we currently don't have any features on Orbiter...

Regards,

Bulek.
Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 18, 2008, 08:30:02 pm
dammit

*hmm*

instead of wasting time duct taping shit on, why don't you guys actually try to do it right? or is that my job too?

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: bulek on October 19, 2008, 12:52:12 am
dammit

*hmm*

instead of wasting time duct taping shit on, why don't you guys actually try to do it right? or is that my job too?

-Thom


I'm not sure if we're talking about same thing. I agree fully with your proposition of proper implementation of those features inside LMCE. But syncing with PDA/mobile devices is also desired - and that's what Funambol is all about. I just cannot see why we'd waste other apps that do some thing good and it would be substantial waste of time to write our own ...

Funambol takes care of syncing with virtually any PDA/Mobile/Outlook/Palm device on earth. Sorry, but I see no point of discarding it as a candidate to support better sync capability of calendar/contact data under LMCE...

We have given a lof of outsourcing functionality to other apps (Xine,Asterisk,Motion,Mythtv,VDR,UPnP...) that have own development communities and simply cause developing each feature from a scratch is impossible - you know complexity of LMCE and its features much better as me... We control/access data from those apps via wrappers. Why is this not acceptable here ?

With all respect to your work and contributions, I'm missing more positive energy on LMCE forums lately... We should all remember that this is a public forum for open discussion - at least I think so....

Regards,

Bulek.


Title: Re: Calendar and other family time management features - how to start ?
Post by: chriss on October 19, 2008, 09:58:33 am
Well, I think, Thom is not referring to Funambol at all when he says "wasting time". He is talking about proper implementation of the LMCE wrapper parts for some calendaring system instead. Funambol itself is no calendar system but only a sync server. As Thom pointed out before (please correct me if I'm wrong...), this includes

 * Orbiter screens
 * Calendar plugin
 * Calendar engine (this could be some sort of existing calendar server)

I think before starting to code something, we should have a short brainstorming on what we would like to achieve with the new feature, i.e. collect some use-cases. I'll start with some points, please add more or correct me

 * Storing events for every user and maybe for groups (familiy calendar, kids calendar etc.)
 * Events consisting of a title, description, time frame, location etc.
 * Event reminder pop-up screens
 * Display the user's calendar on the orbiter (different views: day, week, month)
 * Detailed view of an event => creating new events, modifying events, deleting events
 * Overlaying the user's calendar with his group calendars
 * Show a "what's next" screen with upcoming events
 * React to invitations

Any other ideas? Since this is already quite a bunch of stuff, we should take it easy and try a step-by-step approach, maybe starting with the quite simple event reminder pop-ups (which could be extended by bulek's speech announcements).
Title: Re: Calendar and other family time management features - how to start ?
Post by: itspac on October 19, 2008, 05:00:14 pm
Well, I think, Thom is not referring to Funambol at all when he says "wasting time". He is talking about proper implementation of the LMCE wrapper parts for some calendaring system instead. Funambol itself is no calendar system but only a sync server. As Thom pointed out before (please correct me if I'm wrong...), this includes

 * Orbiter screens
 * Calendar plugin
 * Calendar engine (this could be some sort of existing calendar server)

I think before starting to code something, we should have a short brainstorming on what we would like to achieve with the new feature, i.e. collect some use-cases. I'll start with some points, please add more or correct me

 * Storing events for every user and maybe for groups (familiy calendar, kids calendar etc.)
 * Events consisting of a title, description, time frame, location etc.
 * Event reminder pop-up screens
 * Display the user's calendar on the orbiter (different views: day, week, month)
 * Detailed view of an event => creating new events, modifying events, deleting events
 * Overlaying the user's calendar with his group calendars
 * Show a "what's next" screen with upcoming events
 * React to invitations

Any other ideas? Since this is already quite a bunch of stuff, we should take it easy and try a step-by-step approach, maybe starting with the quite simple event reminder pop-ups (which could be extended by bulek's speech announcements).

I would like it to be like my work calendering system.

1. Each user or the administrator can set a preference of how far in advance a reminder shows before a scheduled event.
2. Todo lists show up at the first interaction of the day or if there is a wake event.
3 reminders (voice or how ever) happen in orbitors where the user is in
4 group reminders happen in all orbitors where a member of that particular reminder is at.
5 group reminders are made such that the reminder only stops showing for individuals that have closed it or "snoozed" it


I think its simple on how to overlay calendars. Make one calender  and allow users the right to make private events. so, if an event is not private everyone in the group can see it even though it may not be for them. If it is private, it blocks off time for that particular user, but does not show what the even is. I don't know if that is really as simple as it sounds, but it seems simpler than creating a calender for every member then trying to overlay events to find free time to schedule. Of course, this doesnt scale well, but how many users have a need for 20 - 50 users?

Maybe that's where you should start: defining the amount of users needed and scalability?

show upcoming events in the same fashion play lists are shown for music. Time and subject, if within 24 hours. Click on the item to get detail. Or create a button on orbiters to to bring up the calendar.

Calendar entry should be able to happen from the web interface or onscreen/ other orbitors. I dont care how its displayed, but 2 days, 1 week, 1 month works for me. should be accessible via a button on the orbitor

invitations.... wow that brings up countering on times and all that other stuff.  I'll leave that alone..

format. my thought.. stick with ical and webdav it seems simple, data looks easily extracted and can probably fitted to sync programs. Also makes your calendar available via the interface and through the internet if you have it accessible.

I dont know much about how to create the engine or plugins, so that part I wont comment on.


Title: Re: Calendar and other family time management features - how to start ?
Post by: tschak909 on October 19, 2008, 05:23:59 pm
First pass, very simple...

simple calendaring for the family members inside the house.

This would be the Local_House_Calendaring_PlugIn.

The datagrids in Orbiter are currently somewhat simple, data grid cells have to be a fixed size. The exceptions are that the first row and first column can be a different size.

So maybe for this first one, we'll be able to flip between the different calendars, and only show one on screen at a given time UNTIL we can figure out how to slice up the data grid cells effectively to show what we need to show (remember, all datagrid cells need to be the same size, but we can make each cell a different color).

Let's not tackle synchronization until we have the local store working properly. The only thing we need for synchronization is the ability to send a command to dump events.

-Thom
Title: Re: Calendar and other family time management features - how to start ?
Post by: cadman97 on October 26, 2008, 01:11:46 am
I agree with Thom. Start with one fuction. Calender is one that I was looking at as well. I am willing to help out as well. just need a point in where to start, since I havn't programmed since the old atari 1200xl's with basic . wow I am starting to feel old..


Mike