Re: DBus interface for meeting creation
On Tue, 13 Mar 2018 at 14:37:53 +, David Woodhouse wrote: > My concern was that I didn't want to just invoke Evolution — users > might be using something different. But of course doing it through > xdg-open resolves that. If you are using a platform/runtime library like GLib or Qt (presumably GLib since you mentioned Pidgin), I'd recommend preferring APIs like g_app_info_launch_default_for_uri_async() or QDesktopServices::openUrl over xdg-open. They end up doing the same things as xdg-open eventually (and in the case of Qt might in fact be implemented via xdg-open), but xdg-open goes through a shell and some desktop environment detection to get there. smcv ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
Re: DBus interface for meeting creation
On Tue, 2018-03-13 at 13:38 +, Corentin Noël wrote: > I wonder why is a D-Bus interface even required here. The simplest > solution (and already working one) is to just pass an ical file to the > calendar app with xdg-open. Yeah... that might work. In fact Milan implemented that for Evolution when I first started looking at it: https://bugzilla.gnome.org/show_bug.cgi?id=787418 https://git.gnome.org/browse/evolution/commit/?id=59dad90040 My concern was that I didn't want to just invoke Evolution — users might be using something different. But of course doing it through xdg-open resolves that. The other reason for favouring D-Bus was that if nothing was set up, we should just display simple text box to the user with the required information, saying "cut and paste this into your calendar". But as long as we either get a meaningful exit code from xdg-open, or perhaps have a lowest-priority handler for it which invokes xmessage or something nasty, I think that's OK too. I don't see why it couldn't be done with passing ical files. I'll take a look... thanks. smime.p7s Description: S/MIME cryptographic signature ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
Re: DBus interface for meeting creation
Le mardi 13 mars 2018 à 13:30 +, Simon McVittie a écrit : > On Tue, 13 Mar 2018 at 13:11:45 +, David Woodhouse wrote: > > We need to spawn a "new meeting" editor in the client of the user's > > choice, pre-populated with meeting dial-in information, conference- > > specific attendees, etc. > > Rather than inventing a small subset of iCalendar encoded into > D-Bus parameters, would it perhaps make sense to implement this as > a MIME-type handler for iCalendar files, or by sending an iCalendar > blob over D-Bus, or by documenting a somewhat lossless transformation > of iCalendar into a D-Bus data structure in the same way that > https://telepathy.freedesktop.org/spec/Connection_Interface_Contact_I > nfo.html > works with a lossless transformation of a vCard? I wonder why is a D-Bus interface even required here. The simplest solution (and already working one) is to just pass an ical file to the calendar app with xdg-open. > > > I've implemented a plugin for Evolution which supports this: > > > > dbus-send --print-reply --dest=im.pidgin.event_editor \ > >/im/pidgin/event_editor im.pidgin.event_editor.CreateEvent \ > >string:"Organizer " \ > >string:"Meeting summary" \ > >string:"Meeting location" \ > >string:"Meeting description" \ > >array:string:attend...@example.org,attend...@example.org > > This is (presumably) fine for Lync, but as a standardized protocol I > think you'll need extensibility: if a different protocol has a > different > idea of what is in a meeting invitation, then you'll need a way to > include fields that wouldn't have appeared in a Lync meeting > invitation. > > smcv > ___ > xdg mailing list > xdg@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/xdg ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
Re: DBus interface for meeting creation
On Tue, 2018-03-13 at 13:11 +, David Woodhouse wrote: > As part of a conference protocol plugin for Pidgin (like the one for > Lync), we have the ability to create meetings. > > We need to spawn a "new meeting" editor in the client of the user's > choice, pre-populated with meeting dial-in information, conference- > specific attendees, etc. > > I've implemented a plugin for Evolution which supports this: > > dbus-send --print-reply --dest=im.pidgin.event_editor \ >/im/pidgin/event_editor im.pidgin.event_editor.CreateEvent \ >string:"Organizer " \ >string:"Meeting summary" \ >string:"Meeting location" \ >string:"Meeting description" \ >array:string:attend...@example.org,attend...@example.org > > Right now I'm shipping that Evolution plugin as part of my own code > base, but I think it makes most sense to standardise the DBus API and > split it out. Then it can be implemented in other calendar > applications, and used from other places (like the Lync plugin for > Pidgin, at least). > > Does it make sense for this to be a fd.o specification? What about passing this as a URI? There might even be an existing, and probably underused, RFC for it. ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
Re: DBus interface for meeting creation
I have a very limited knowledge in this field, but I would like to point out that in Thunderbird such task is performed by messages with attached ical files. So, why not to base meeting creation on opening ical (existing standard) data (as a file, for example)? On 2018-03-13 16:11, David Woodhouse wrote: As part of a conference protocol plugin for Pidgin (like the one for Lync), we have the ability to create meetings. We need to spawn a "new meeting" editor in the client of the user's choice, pre-populated with meeting dial-in information, conference- specific attendees, etc. I've implemented a plugin for Evolution which supports this: dbus-send --print-reply --dest=im.pidgin.event_editor \ /im/pidgin/event_editor im.pidgin.event_editor.CreateEvent \ string:"Organizer " \ string:"Meeting summary" \ string:"Meeting location" \ string:"Meeting description" \ array:string:attend...@example.org,attend...@example.org Right now I'm shipping that Evolution plugin as part of my own code base, but I think it makes most sense to standardise the DBus API and split it out. Then it can be implemented in other calendar applications, and used from other places (like the Lync plugin for Pidgin, at least). Does it make sense for this to be a fd.o specification? ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
Re: DBus interface for meeting creation
On Tue, 13 Mar 2018 at 13:11:45 +, David Woodhouse wrote: > We need to spawn a "new meeting" editor in the client of the user's > choice, pre-populated with meeting dial-in information, conference- > specific attendees, etc. Rather than inventing a small subset of iCalendar encoded into D-Bus parameters, would it perhaps make sense to implement this as a MIME-type handler for iCalendar files, or by sending an iCalendar blob over D-Bus, or by documenting a somewhat lossless transformation of iCalendar into a D-Bus data structure in the same way that https://telepathy.freedesktop.org/spec/Connection_Interface_Contact_Info.html works with a lossless transformation of a vCard? > I've implemented a plugin for Evolution which supports this: > > dbus-send --print-reply --dest=im.pidgin.event_editor \ > /im/pidgin/event_editor im.pidgin.event_editor.CreateEvent \ > string:"Organizer " \ > string:"Meeting summary" \ > string:"Meeting location" \ > string:"Meeting description" \ > array:string:attend...@example.org,attend...@example.org This is (presumably) fine for Lync, but as a standardized protocol I think you'll need extensibility: if a different protocol has a different idea of what is in a meeting invitation, then you'll need a way to include fields that wouldn't have appeared in a Lync meeting invitation. smcv ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg
DBus interface for meeting creation
As part of a conference protocol plugin for Pidgin (like the one for Lync), we have the ability to create meetings. We need to spawn a "new meeting" editor in the client of the user's choice, pre-populated with meeting dial-in information, conference- specific attendees, etc. I've implemented a plugin for Evolution which supports this: dbus-send --print-reply --dest=im.pidgin.event_editor \ /im/pidgin/event_editor im.pidgin.event_editor.CreateEvent \ string:"Organizer " \ string:"Meeting summary" \ string:"Meeting location" \ string:"Meeting description" \ array:string:attend...@example.org,attend...@example.org Right now I'm shipping that Evolution plugin as part of my own code base, but I think it makes most sense to standardise the DBus API and split it out. Then it can be implemented in other calendar applications, and used from other places (like the Lync plugin for Pidgin, at least). Does it make sense for this to be a fd.o specification? smime.p7s Description: S/MIME cryptographic signature ___ xdg mailing list xdg@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/xdg