[New Plugin] ICS Parser - iCalendar file (.ics) parser

Hey everyone,

Just published a plugin called the ICS Parser. This plugin will let you parse an iCalendar file (.ics) url to view in a repeating group and save to your database.

NOTE: There are subtle variants of ICS files and so if your ics file link is not returning a date in the plugin, reach out to me via DM with a link to your file and I will update the plugin to accommodate your ics file variant.

Demo Page: https://equina-playground.bubbleapps.io/ics_parser

Link to Editor: https://d79.bubble.is/page?type=page&name=ics_parser&id=equina-playground&tab=tabs-1

Plugin Page: ICS Parser - iCalendar File Parser Plugin | Bubble

Here are Instruction screenshots from the demo page:

Thanks,

Muneer

5 Likes

Plugin was just updated to account for an ics file variant.

Demo page and demo editor also updated with this new addition.

And this is why I’ve never released my iCal parser:

:face_with_raised_eyebrow:

Hey.

If there is an update to the calendar, how will the plugin update?
Do you need to setup recurring backend workflows? How does it prevent duplicate database entries being created?

Cheers!

Hi,

It really depends on your use-case.

If you are using the parser just to display events in a repeating group, then that’s easy as every time your page loads it’ll show updated events from that ics link.

It can get tricky if you are saving events to your database. You could use a lot of capacity if you are updating each time a user logs in. You could prompt the user to initiate an “update/sync” button and then when you are running your save to bubble database workflow, add an “Only When” condition that searches your event database in bubble (using event, name/start date/end date) and only adds the new item if the search results in :count of 0.

Can you tell me more about your use-case, as I can then give better suggestions. Feel free to PM me.

Muneer

Plugin was just updated to account for AirBnB iCal calendar URL giving access to the UID and also reservation URL for each event

Demo page and demo editor also updated with this new addition.

Plugin updated with an ICal to JSON Server Side action!

Getting a JSON output will give you more flexibility working with different Ical variants for your use-case. Reach out to me on how you can use the JSON output in the back-end Workflow API to save events to your database etc.

Goto the updated Live demo Page and scroll to the bottom to test out this addition: https://equina-playground.bubbleapps.io/ics_parser

Hey Muneer,

Just checking in. I seem to get an error on the ical2Json ICS parser

Not sure if it’s linked to the service page which seems to be down as well?

If I go back a version on the plugin it still seems to pull some data but it’s all misaligned and not coming through as separate entries on the repeating group.


![Screenshot 2021-07-16 at 14.12.43|690x288]
(upload://5FDT37DHDURBh4amNNKn9rlQC2v.png)

Hope all is well!

Joe

Hey Joe,

I just moved my apps to another dedicated server—that might be the issue. Let me look into this. Sorry for the inconvenience.

Muneer

Updated demo links

Demo Page: https://d39.bubble.is/site/equina-playground/ics_parser

Link to Editor: Equina-playground | Bubble Editor

Hello Muneer,

A client provided me with this airbnb ics url: https://www.airbnb.com/calendar/ical/2011809.ics?s=c35f252fcba099068f45d52f3e5f4a06

I tested it on your page https://d39.bubble.is/site/equina-playground/ics_parser , but it didn’t work: blank information for start and end dates or fixed uncorrect date (Jan 1, 1970) for API Call "Data AirBnB variant…

Could you have a look?

Thanks

Hi Olivier,

There are many variants to ics files which adds complications, hence why the plugin offers many avenues with preset api calls but more useful is the ical-json parser, which gives you full control of how to read ics urls.

There are usually issues with bubble interpreting dates in date format too. If you look at the date format that is coming from the ics airbnb, it is YYYYMMDD and for that api call in the plugin, it is relying on bubble interpreting that as a date format. This is likely why the date is misinterpreted.

So, your options are either using the “Data AirBnB TEXT variant” (See screenshot below) and then parse those texts dates out in your bubble app yourself using say, regex. Or you can use the Ical to JSON function included in the plugin (bottom of the page in the demo link), which gives you even more control and flexibility to build your own workflows.

Hope this helps.

1 Like

Thank you very much, Muneer. I will think which option suits better my app.
Best

1 Like

Thank you, Muneer, for your explanations.
I am currently focusing on other funcionalities and on sales development and I will not have much time to implement your ics parser plugin. Would you be interested in a freelance service to adapt your plugin to my product goal?

Here what I need:

  • I have got a data type Listing (short tem home rentals) and one of its fields is a list of dates, which actually represents the dates the property is unavailable.
  • Today the property owners can manually block dates selecting ranges of dates in a AirDate Picker (see image attached) visible in a popup.
  • As most of them already work with Airbnb, I would like to let them include the url of their airbnb ical file in the same popup.
  • Once per day a scheduled backend workflow would update the list of unavailable dates for all listings with an airbnb ical file url by consulting the ics file.

Do you think you can do it?
If yes, what would be your proposal?
My app is https://airbuzz.co/ and my email address is olivier@airbuzz.co

Thanks,

Olivier

I would like to upload an ical file and get it into the Bubble database, but I can’t seem to get a good URL for the File uploader.
I prefixed it with “https://” as in the plugin description, but the result was the same. How can I get the URL saved in the database?


@John_Cremory use the prefix as “https:” the url already contains “//“

1 Like

I tried changing it to “https:” but it doesn’t seem to load properly.
Here is the URL I would like to reflect.
https://2c987b3ab283682fb2c64a3b40031613.cdn.bubble.io/f1693267785781x454013665636617860/myCalendorFile_20230829090945.ics

Hi @John_Cremory . I can open the file just fine. I was re reading your early post. Why are you using file uploader? You can save the file to the database directly from the workflow either to a field with file format or text field with url.

Could you provide your entire flow of ics creation and use case for saving in your database so I can understand your need for the file uploader? You are welcome to PM me.

HI @muneer.hameer
As a use case, I would like to use Fileuploader for an administrator of a booking site such as Airbnb who wants to download iCal files and import them into Bubble. In case it is not possible, I tried putting the file path directly, but it never shows up in the repeatingGroup.


Hi @John_Cremory

There are various API calls you can use due to variants in formatting. Please test to see which one provides you with the output. You can test your ical links in playground to see which call you should use: https://d39.bubble.is/site/equina-playground/ics_parser

1 Like