What's Your Rule Naming Convention?

It's been a while since this topic has been discussed, so I thought I'd start another one. I'll go first with what I'm proposing in my head, which may or may not change, when I get more rules.

My "very loose" formula is:
[Emoji to indicate rule type] [(Optional) Specific device type] [(Optional) Room(s)] - [Trigger & Action] (Rule App)

  1. Mode change rules using Room Lighting. Triggered based on Mode Manager or buttons/sensors.
    :sunny: Mode becomes "Day" (RL)
    :crescent_moon: Mode becomes "Evening" (RL)
    :zzz: Mode becomes "Night" (RL)
    :airplane: Mode becomes "Away" (RL)
  2. Change to "Night" mode using Basic Rules. Triggers rule #1 for "Night" mode
    :zzz: "Night" Mode: Living Room, Bedroom - Button (BR)
  3. Living room "Movie time" using Room Lighting that changes light settings, lowers blinds, and turns on TV & home theater:
    :clapper: "Movie Time" Living Room - Button (RL)
  4. Some lighting stuff
    :bulb: Lighting: Powder room - Motion sensor Active (RL)
    :bulb: Lighting: Kitchen - Motion sensor Active (RL)
    :bulb: Lighting: Walk-in Closet - Motion sensor Active (RL)
    :bulb: Lighting: Bathroom Closet - Contact sensor Open (BR)
    :bulb: Lighting: Walk-in Closet Closet - Contact sensor Open (BR)

Personally I chose to do "(Room name) (imoji ) then name of rule"

This way I see all the rooms rules grouped together so it makes sense to me. Then sub groups are like💡etc

That was my initial thought, but I have rules that are not room specific. For example, all my “Mode becomes (whatever)” aren’t room specific, but I suppose I could say “Whole Home”. What do you use for those type of rules?

1 Like

I am also of the "device first" naming convention...mostly becuase I think of my rules in terms of affecting devices, so when I'm looking for a rule, I think of/look for the device(s) first.

E.g., Island Lights ON 5pm

I did initially start writing mine as rooms, but then quickly realized I don’t have a lot of rules that are only specific to one room.

Are you asking about yesterday, today, or tomorrow? [g]

I've gone through 3 iterations of device/rule naming conventions. Suffice to say, I have "Mo." in all Motion Sensor names (started out with a Leading Mo., now use trailing Mo.'s).

Whatever - It keeps me home and out of trouble.

I had many mode rules associated to modes and just couldn’t keep up with which switch was in what rule. I proposed an enhancement request to Bruce and he shared this app in the public repo that I have since augmented as you will see in my further down posts. Wanted to bring this to your attention in case your requirements are like mine where lights are mostly going on/off based on a particular mode. I was able to remove 5-10 rules with this app and feel much more organized with a grid format.

Happy to share my version of you need dimmers and locks since posted version only works with switches (on and off only)

1 Like

basically this, i use a :house: emoji

1 Like

Oh that would be awesome! And yeah, that’s exactly my intention for the different Modes: security and lights mostly based on the Mode. I’ll have to peruse that post you’ve linked. I still need to figure out the security front of things tho because Ring integration isn’t straight forward.

I haven’t had the chance to check it out, but I actually thought of just combining them into one Room Lighting rule and adding all the lights, dimmers, switches, etc. I actually like the format of how they have a different grid by Mode in RL.

I may be showing my age here... but how are you inputting emoji's into the text input box?

1 Like

On your mobile you can use the emoji keyboard and enter it that way when naming rules and devices. In Windows you can click the windows key and the period at the same time.

2 Likes

Also @lewis.heidrick posted a screenshot of his use of emojis a few years ago.

On Windows you can just type: [Win]+[.]

Edit: OK, @ritchierich already mentioned that. :person_facepalming:

3 Likes

My devices are all named by type (a single character), then room, then specific device. Example: "~ Dining Room RGBW strip", with the "~" indicating a Zigbee/ZWave device.

Rules all start with the trigger device, followed by what's being monitored in all caps. Example: "~ Garage door sensor CHANGED" (Z/Z device, in Garage, on door, rule triggered by any change).

Rules with multiple triggers that control one device are labelled "OMNIBUS". Rules with no triggers, which are called by other rules, are labelled "[no trigger]".

YMMV, but it's working for me.

My rules follow the same naming convention as any of my apps, which is something like:

  • App name (e.g., "Rule 5.1") or an abbreviation for long or commonly used ones (tried "R5.1" but turns out I don't really care about the difference on this one)
  • A "-" to separate the above "prefix" from the rest
  • A brief description of the purpose

The prefix is to make logs easier to find the specific app I'm looking for in (e.g., if I know I'm troubleshooting a rule, I don't have to think "was this app name a rule?" or click in to find out). This is nice in live logs where I might see a lot of things pop up, but with past logs having names alphabetized, it's pretty neat there, too.

I should also note that while I do have a lot of rules, they are not my only automation tool. I use the app best suited for my automation or create a rule if something isn't quite there and I don't want to make a custom app for it. With rare exception for things like Groups (though nowadays I might have done that in RL instead and simply renamed the activator device), all my apps, again, follow a similar convention:

image

I don't see a need to necessarily name devices in the app name. The "In use by" section on a device detail page can help you figure that out if you're looking for a specific device, or you could look at "Events" (and specifically either "Triggered Apps" for events or "Produced By" for commands, depending on what you're looking at and looking for) if you're not sure where to start troubleshooting -- again, broadly applicable to any app, not just rules, and I should re-iterate that not all of my automations are rules.

But, of course, everyone's preferences vary. :smiley:

I find that a lot of my rules involve myltiple types of devices across different rooms, so ive got mine categorized by their basic functionality first: lighting, climate, notification, dashboard, security, and (as something of a catch-all) device. I tend to think of the rules in terms of the ultimate affect and generally not the devices being acted on. I'm thinking of, for example, feeling cooler not whether that's because the AC kicked on or the ceiling fan started or the dehumidifier is running or which rooms any of those are in.

Rather than Device or Room, I tend to use the trigger type as the prefix. Presence, Schedule, etc. I then use SUB (for Sub Routine) for common rules where I call them from other rules.

Within webCoRE, there are already Piston Categories. Of those, I have:

  • Infrastructure - mode management, lux, presence, etc.
  • Motion & Mode
  • Motion Only
  • Fans
  • Fixes - odd, makeshift, or transient stuff

Naming convention tends to be a combination of category and action location.
"Motion - Basement Stairs Lights"
"Motion & Mode - Backyard Patio"
"Auto Fan - Attic"

Sensors are just ingredients to get the right triggers and conditions. Motion & Mode might actually include contact sensors, lux readings, etc. Auto Fan might include temperature, humidity, etc.

Not perfect and not entirely intentional. Just how things evolved.

I just need the below then I won't think too much about precise naming and a lengthy list of rules that becomes difficult to navigate:

1 Like