nitobuendia / asana-custom-component

Asana Custom Component for Home-Assistant
Apache License 2.0
9 stars 2 forks source link

Feature request: Calendar integration #4

Open natbrood opened 2 years ago

natbrood commented 2 years ago

It would be really cool to see an integration with the built in calendar. Similar to how Todoist and Google calendar are set up

But perhaps this is outside of the scope/not what you're planning with the component

nitobuendia commented 2 years ago

@natbrood Thanks for the feedback. What's the use case for it? What can you do with this? Does this display only existing events, or also allow managing Asana fully from HomeAssistant (e.g. create/edit events)? Do you have any visual examples on how this looks and/or what you can do?

While I am not saying this is the direction to take, sharing some of the thoughts on what this may entail:

At the moment, the component is configured to be set up under sensor only. Ideally, to support both sensor and calendar, we would change the setup to be underasana` platform, and that'd allow users to set up either or both (setting up multiple platforms). This would be a breaking change.

If this is only for reading events, the API implementation is probably ready. It already reads the events and probably has access to most or all the data needed for Calendar. It would be mostly about structuring the data in a different format. Although to minimize calls between the sensor and calendar, we may want to have some sort of built-in shared local cache to avoid repeating expensive API calls.

If, however, we are trying to also create/manage events, it would require integrating other endpoints. For starters, a feasibility analysis on whether and what features Asana API supports would be needed.

For reference, this is the is the Todoist code (Calendar component) and the Google Calendar (Calendar component).

natbrood commented 2 years ago

Regarding the use case; This would allow users (like me) to intergrade it with the calendar entity as well as custom entities like Atomic Calendar Revive. Todoist is able to do that at the moment, but without interaction.

The dream (for me) is to have a list of Asana tasks that you can interact with (even if it's just checking them off) on the home screen of your HomeAssistant. Especially for recurring tasks where you can just click on 'done' right there from the main panel.

Edit: Note, Atomic is mainly focussed on google calendars and does not really support task-interaction either