WordPress.org

Making WordPress.org

Opened 2 years ago

Last modified 5 weeks ago

#2955 reviewing enhancement

iCal feed for the entire meetings page

Reported by: schlessera Owned by: tellyworth
Milestone: Priority: normal
Component: Make (Get Involved) / P2 Keywords:
Cc:

Description

The Meetings page should have a link to an iCal feed, where you can subscribe to a synchronized version of the entire meetings calendar.

This allows people to just subscribe to that feed and have all the meetings be displayed in a nice layout in their favorite calendar app.

The implementation should not be too difficult, as the iCalendar specification is rather simple and it only needs a very basic endpoint to generate the feed.

I'm happy to provide a PR, once I found out where this needs to go, and what endpoint to provide.

Currently, I think the endpoint could be something like /ical/meetings/, which still leaves the option to have component specific feeds as well under /ical/meetings/core/.

Link to the iCalendar specification: https://www.ietf.org/rfc/rfc2445.txt

Attachments (3)

2955.patch (23.4 KB) - added by pierlo 2 months ago.
2955.1.patch (14.4 KB) - added by pierlo 2 months ago.
2955.2.diff (59.5 KB) - added by pierlo 7 weeks ago.

Download all attachments as: .zip

Change History (20)

#1 follow-up: @Otto42
2 years ago

where you can subscribe to a synchronized version of the entire meetings calendar

There is no "meetings calendar". I mean, we can probably generate one, but no such "calendar" exists at present.

The meetings shown on the meetings page are generated on the fly. They involve a start date and time (in UTC), and a "repeating" flag marked for weekly or monthly. That's it. No more complex than that. We do not keep a history, we do not keep a list of meetings that happened in the past, or a list of meetings that's going to happen in the future. It just generates the next meeting for each entry and displays that, along with some Javascript to show the local time for it.

Last edited 2 years ago by Otto42 (previous) (diff)

#2 in reply to: ↑ 1 @SergeyBiryukov
2 years ago

Replying to Otto42:

There is no "meetings calendar". I mean, we can probably generate one, but no such "calendar" exists at present.

Related: #1658

This ticket was mentioned in Slack in #core by sergey. View the logs.


2 years ago

#4 @mindmantra
20 months ago

iCalendar Specifications RFC is updated to https://www.ietf.org/rfc/rfc5545.txt

As suggested in ticket description, there is not a need to have a full calendar functionality. From available data an iCal can be generated dynamically.

Using endpoints would also make it easy to have near realtime updates pushed to clients.

@schlessera in your suggestion /ical a namespace or custom endpoint to core WP api namespace?

This post type is added using a separate plugin in WP.org See /sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-meeting-posttype

#5 @762e5e74
20 months ago

#3549 was marked as a duplicate.

This ticket was mentioned in Slack in #meta by mindmantra. View the logs.


19 months ago

This ticket was mentioned in Slack in #design by melchoyce. View the logs.


18 months ago

This ticket was mentioned in Slack in #meta by ocean90. View the logs.


4 months ago

This ticket was mentioned in Slack in #hosting-community by mike. View the logs.


4 months ago

This ticket was mentioned in Slack in #core by sergey. View the logs.


2 months ago

@pierlo
2 months ago

@pierlo
2 months ago

#11 @pierlo
2 months ago

2955.1.patch allows iCalendars to be generated for all meetings, or for a specific team's meetings. They can be accessed at the path: /meetings/(optional team name)/calendar.ics.

The patch also adds a sequence meta value to meeting post types, which is used to track whenever a meeting is updated, and allows the event in the calendar to also be updated.

An organizer email is required to be specified on each event for some calendars to successfully import it (such as Google Calendar). I guess some strings have to be translatable as well, such as the event description.

This ticket was mentioned in Slack in #core by pierlo. View the logs.


2 months ago

This ticket was mentioned in Slack in #meta by pierlo. View the logs.


7 weeks ago

#14 @tellyworth
7 weeks ago

  • Owner set to tellyworth
  • Status changed from new to reviewing

This ticket was mentioned in Slack in #core by pierlo. View the logs.


7 weeks ago

@pierlo
7 weeks ago

#16 @pierlo
7 weeks ago

In 2955.2.diff, I've namespaced the "Meeting Post Type" and "Meeting iCalendar" plugins, and created a class to house the query for retrieving meetings.

Also, I see some plugins referring WordPressdotorg\Autoload, but all of them have their own instance of it. I've taken that route for now, but I think having it as a mu-plugin would work out best and remove code duplications.

This ticket was mentioned in Slack in #meta by pierlo. View the logs.


5 weeks ago

Note: See TracTickets for help on using tickets.