Let's talk about Gladys V4

Hello everyone!

I posted it on Twitter, I made progress on the NLP part in Gladys 4 :slight_smile:

A video preview of a command « Gladys, what is the temperature in the kitchen? Â»: https://twitter.com/pierregillesl/status/1120578092127244288

To answer this question, quite a few things happen.

  • The room name is recognized (even if the matching is not exact) thanks to the Enum Named Entity of node-nlp
  • Gladys retrieves all devices of the « temperature-sensor Â» category in the room found that have sent data in the last hour.
  • Gladys converts the last value of each sensor into the user’s « favorite Â» unit (Celsius or Fahrenheit)
  • Finally, Gladys calculates the average temperature, then answers the user.

How is it managed for a single room?
Most often, there will be multiple rooms.

Gladys could ask for clarification or base it on the user’s position.

When I talk about a room, in Gladys 4 each room has a unique name. So if you want to know the temperature in Paul’s room, you say « What is the temperature in Paul’s room? Â».

After that, this request is a very specific request.

We can certainly imagine making another request solely for voice commands (and not textual ones), since we know where the microphone is located, we know where to look for the temperature.

I find this very interesting as a feature!

In my small house, it’s simple to have the temperature or turn on the lights by naming the rooms.
But imagine if you rent a room in a guest house or hotel equipped with Gladys, voice commands based on the location where the microphone is installed become very useful!

Hello everyone!

I hope you had a good weekend.

Today I worked on the onboarding process!

Let me know what you think! If you have any ideas/feedback, I’m all ears :slight_smile:

Is it possible (or an oversight?) to configure Gladys’ display language from the first screen or in the preferences?

Hi, I was just thinking the same thing ^^ well, something like that.
I was thinking of a little script that detects where you’re coming from and directly changes the language of the interface according to the country.

Anyway, I find the interface simple and clean :+1:

Yes, I also think it’s very clean.
And why not the date of birth to be wished a happy birthday by Gladys??

It’s an oversight!

The user will have to select their language :slight_smile:

Originally, I wanted to do it in v3 and I never did it ^^ I need to do it in this v4, well seen, it’s a funny little detail! :stuck_out_tongue:

Wouldn’t it also be possible to include a user’s photo?
This would be displayed in the chat box, the user’s profile, etc.

Couldn’t a script pre-select? Generally, but not always, French users will prefer to use everything in French. If they ultimately prefer to continue in English, they will only have to change the selection.
In any case, it’s really not a big deal, just a detail!

We will need to consider the case where the user does not want to save their date of birth, and not make this field mandatory. But I imagine that’s what you were planning to do :upside_down_face:

When it comes to details and birth dates, since we ask for the person’s first name, can’t we make it so that Gladys also celebrates their name day? ^^

I was going to reply « and that she makes us coffee too Â», before realizing it’s already been possible for a long time :joy:

Given that she can make coffee and also start my vacuum cleaner, if Gladys wished me a happy birthday, she would be more effective than my girlfriend, that’s why I ask. :wink:

For the language, we can base it on the browser’s language.

Heh heh who knows.. Maybe one day Gladys will give us a little treat
 Okay I’m leaving!

Yes, there will be a user photo :slight_smile: I’m still hesitating whether to include it in the registration process or to ask later (and use a default avatar in the meantime).

Good idea! We can use the browser’s recommended language to pre-select French if the user is French.

Unlike an online service, Gladys is local (your data is for you), so I struggle to see why the user wouldn’t want to save their date of birth? For now, I had made it a mandatory field, but that’s open to discussion!

I like the idea! :slight_smile: Let’s see how we handle:

  1. Internationalization (are the dates the same for each country?)
  2. Compound names

I think for a first alpha of this v4 we’ll stick to the essential features, I’ll do this a bit later!

If you want to test the account creation process, everything is available online on the demo site!

You can test it here → Gladys Assistant

It’s all static, so don’t worry, it’s local in your browser.

Don’t hesitate to tinker, let me know if there are any bugs!

Hello @pierre-gilles,

I just tried it out. Could we enter our address when locating our home or go through geolocation instead?

  • Entering your address would mean using a geocoding solution (finding a latitude/longitude from a physical address). Unless we integrate a database of all addresses in Gladys (too heavy), this means using an online service and sending this data to a third-party service. I’m not sure this is what we want in Gladys (if it were in an optional module, maybe, but here it’s the default registration process).

  • For geolocation, the slight issue is that browser geolocation only works over HTTPS. At this point in the process, the user may not necessarily be in HTTPS (I’m not saying definitely because I’m considering adding the possibility of being in auto-signed HTTPS automatically at the first boot), but in any case, it will be something that is not forced (self-signed certificates are not very nice and for users who don’t know much about it, it’s not necessarily easy to understand).

  • Another geolocation solution is GEO-IP, a database of IPs that provides an approximate address for each IP. Again, this is too heavy to have in Gladys, but we can use online services or integrate this service into the Gladys Gateway.

But I completely understand the need, it’s clear that it’s annoying to point on a map your home
 ^^ If anyone has an idea that is a good compromise between practicality and respect for privacy, I’m interested!