Using the agenda/calendar in scenes

Already possible :slight_smile:

You select the « any name Â» option in the filters

Here is my feedback following my first scene creation experience.

Calendar Visibility

I want to create a scene, but my Google calendar is not visible by default even though I am the one who configured Gladys. I imagine I need to share my calendar, but this seems to apply to everyone by default.

Local Calendar

I realize that if I want to avoid Google, I will need to find an alternative compatible with external CalDAV. The best would have been to have a local calendar by default to depend as little as possible on the internet or third-party services. But here we are talking about the calendar service rather than the feature.
For now, I have created a « Gladys Â» agenda in my Google calendar.

Event Description

I tried to use the description of the appointment in my agenda, but this is not provided. I am sure we will have requests for this :sweat_smile:


(Edit)

Test in a Scene

First attempt: I did not fill in the condition « and the event starts in Â».
Result: :cross_mark:

Since my scene was saved, I thought it was good and that the parameter would be « at the time of the event Â» by default.

Thanks for your feedback @lmilcent, I’ll fix that!

Indeed, only calendars « shared Â» within the Gladys instance are displayed.

Private calendars are excluded from scenes for privacy reasons.

I added a message in the UI to make it clearer:

Also, on the calendars page, I added a message for new arrivals who don’t have calendars configured:

Now it’s clearer!

Indeed, currently we don’t retrieve the descriptions, but that’s more at the level of the calendar feature itself. cc @bertrandda :wink:

I removed the possibility of having these fields empty. By default, they are filled in, and only modifiable for another value.

Yes, excellent idea, I will see what can be done

Are calendars private even those belonging to the user who is creating the scene?
Because that’s exactly what surprised me.
The agenda is mine, the scene is created from the same account, so I expected to be able to use it without sharing it with all Gladys users.

On the other hand, not having access to my wife’s agenda (if she used Gladys :sweat_smile:) makes sense because it’s another user.

I never checked, but do all Gladys users have access to scenes and their content?

  • If so, I understand why not to share calendars in scenes by default.
    Example of a security incident:

My wife created a scene with her agenda, which is not shared with me. But as a user, I can see the scene and modify it (hypothesis), so access her agenda indirectly (I just need to receive a message from Gladys for each new event).

Perfect, I think that’s better!

Do you know if it is possible (without significant development effort) to have a local agenda, in which you can create events without using third-party services?

Exactly, and that’s precisely for the case you mentioned.

Scenes are common to the entire instance; a scene is something « public Â» in Gladys, hence the need for the calendar to be public so it can be part of a scene.

Yes, exactly, a scene is not a private entity but shared among all members of the instance. That’s a choice!

However, only administrators can modify them.

I don’t think that’s what we want in Gladys! It’s debatable, but for me, Gladys is not a calendar application.

The issue if we implement the ability to create local events is that we’ll always be asked for more:

  • What if I want to sync my local events with my remote calendar? My phone? (two-way sync)
  • I want to change the color of my local calendar? (calendar editing view)
  • I want to be able to locate my event? (map view for an event)
  • I want to create recurring events (every Monday at 8 a.m.?)

It’s hard to realize, but a calendar application is quite a huge task, especially given the high standards set by « basic Â» applications (Google Calendar, Apple Calendar on Mac, which is very simple but excellent).

For me, if we go in this direction, we will inevitably do worse than an external calendar, and we will be judged on a product that is not our specialty.

I think that Gladys’ goal is precisely not to reinvent the wheel but to connect with external applications that are already in our lives and work very well :slight_smile:

Edit: this might be off-topic, maybe we can create a new topic :stuck_out_tongue:

In your case @lmilcent, why not self-host a CalDAV server (OwnCloud for example) if your goal is to have everything locally, I think that’s the best option?

I validate what you explain about the access levels to the agendas, it’s clearer for me now!

For the local hosting part of the agenda, you are absolutely right about that. Proposing an ultra-basic agenda can be both very practical by explaining that it is intentionally basic, but it’s true that it can also be shooting yourself in the foot.
Where I relativize, is that the internet is only necessary for synchronization. Events are then imported locally, which allows to continue to function even in case of loss of internet.

To conclude on the self-hosting part, it is interesting but as you know it is work and time (no matter the service). So I often weigh the pros and cons, between spending time or taking a « secured Â» cloud like Gladys Plus which encrypts everything before sending to the cloud (what I call operating in Zero Knowledge mode).

Hello everyone!

I just merged part 2 of this development: condition on ongoing events in scenes.

The principle is to be able to continue or stop a scene only if an event is found / not found.

I made a build on the Docker dev tag which contains this condition:

gladysassistant/gladys:dev

I’m open to any feedback :slight_smile:

Once all this is tested, I will deploy a new version of Gladys!

Hello everyone! I’m open to feedback on this second development before I release it :slight_smile:

Thanks for the follow-up!

Here is my test in a scene:

  • Scheduled trigger (to simulate a specific detection)
  • Continue only if an event is found in my calendar, with any name
  • Send a message

I wanted to send a message with the details of the event (name, location, etc.) but it’s not possible because there are no variables, unlike when I use the calendar as the scene trigger event.
And no way to call « get the last state Â» necessarily.

:play_button: If it’s possible, it would seem more logical to create these variables by default in the scene when « continue only if Â» with the calendar is called. As the trigger part does.

Oh indeed, I didn’t code the variables for this trigger, I thought it wasn’t useful in this case
 After all, you’re right, it can be useful.

I’ll do it today :slight_smile:

From my side, I can’t really do any testing since my schedules are not displaying correctly.
@bertrandda is on it, he is studying my logs carefully ^^

It’s good for the variables, the PR:

Not yet merged, no dev build yet.

I’ll keep you posted when it’s live in dev!

The dev build has passed, available at:

gladysassistant/gladys:dev

Feedback is welcome!

I’m currently writing the documentation in FR and EN for these 2 new features + the launch articles for Gladys Assistant v4.8 (It’s a lot of work, with all the localized screenshots :stuck_out_tongue: )

PR in progress here on the site:

Well, it took me almost the whole day, but I’m done!

  • Documentation for the scene trigger (EN + FR)
  • Documentation for the condition in scenes (EN + FR)
  • Gladys Assistant v4.8 launch article (EN + FR)

The PR is available here:

There is a link to the site deployed in preview on Cloudflare Page in the PR (not to be shared, it’s just a preview to see how it looks)

I’m open to proofreading/feedback on the article and the documentation.

I’m stopping for today, I’ll be back on Monday morning and I will probably launch Gladys Assistant v4.8 on Monday or Tuesday evening depending on the feedback :slight_smile:

I’m hesitating to do a live YouTube launch, because it’s a set of really nice features that bring a lot of possibilities to Gladys / scenes.

While out for a stroll, I found it clear and easy to understand!
However, I found some English on the French page:


Great!

Yes, that’s « normal Â», this page has never been translated (feature developed by an American who doesn’t speak French).

I would be happy to receive a PR on this topic if someone wants to help, there has been a GitHub issue since November: In the french documentation of the "ScĂšnes", a part is in english : “Chain Scenes” · Issue #102 · GladysAssistant/v4-website · GitHub.

You need to:

  • Translate the text (stored in i18n/fr/docusaurus-plugin-content-docs)
  • Take a screenshot of the interface in French.

@lmilcent You’ll be interested in tonight’s live stream, I found a free online CalDAV calendar service for my demo (up to 2 devices). Of course, it’s in the cloud, but if you don’t want to self-host, it can be a nice option.

In 2 minutes I had the CalDAV server credentials, and it works perfectly with Gladys :slight_smile:

#teasing