-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Big update #84
Comments
I would love to use the dummy sensor. Not sure this patch will be merged into the master repo.. |
It depends on the author of the plugin. I have great hope for that. |
Hello, absentee landlord here :) sorry I'm slow to respond, I don't use this plugin myself anymore. This is a lot of stuff! What is the purpose of making specific dummy accessories like window blinds, etc? |
I collected different conclusions, from different people, from different threads and somehow it came out. But different types are not the only modification. Yes, I think it's a lot of changes but simple to introduce. Just in time for version 1.0. 😀 |
Different types have their advantages. For example, in the Apple Home application, you can enable notifications for: Lock, Garage, Security. Motion is displayed in status and not in devices. Thermostat and Security are more extensive devices. In addition to new devices:
|
Appreciate the writeup! I'm still struggling a bit though - originally the purpose of the dummy switch was to make a mechanism to trigger multiple scenes in HomeKit, kind of a workaround for missing functionality. But these other fake accessories, what is their practical purpose? |
For the fake sensors, we can get a notification when using the sensor while the standard or dummy switch don't have the option. It is kind of limitation of Apple Home but this can be a good workaround. Not sure about other accessories but @mkz212 may have idea. |
As @sooyoung0321 writes, such types have more opportunities in Apple Home, especially in iOS 17: notifications and logs etc. My code only adds additional options, you still have the option to choose a regular switch. But with such an ordinary switch, you have additional options to choose what state should be at the start, it is reset with each activity, you still have the ability to set the timer, etc. All these things are not my invention but the collected wishes of the users of this plugin. You don't lose anything, you can only gain! Please give it a chance! 😀👍 |
My examples of automation where your plug-in is useful to me, and even it is necessary:
I will not answer you how to use other types of sensors but I know that other users have ideas for it. I know for sure that additional types of sensors are only optional and you do not need to use them. In addition to the sensor types, I added many other things. Code is ready and tested and works well (at least for me). |
I used dummies to give my home memory. I'll try to be concise and illustrate with exemples: When I turn on the PS5 (plugin), a scene turns the living room lights blue and turns on the dummy plugin "PS5" on. If I go to to another room, that room's sensor will turn off the lights in the living room but the dummy ps5 stays on. When I sit on the sofa, motion is detected: homekit will test if dummy PS5 is on, if yes, then lights turn blue again = My house remembers I'm playing ps5 thanks to the dummy and so PS5 scene is persistent. Notice how I could have resume the scene upon motion sensor but rather when I sit on the sofa thanks to a vibration sensor. It feels much more organic and that's thanks to you. I also have a "Guest mode" dummy where, if on, homekit stops turning off the lights behind me/in the room I just left or increasing the volume of the HomePod because I left to another room. I like to start an ambiant sound when I enter my bedroom at 50% but It's too loud when I go to sleep. So I have a vibration sensor in my bed that turns down the volume to 5% when I lay down. But if I'm going to the bathroom (right next to the bedroom) at night and come back into the bedroom, it'd go back to 50% right? So I have a dummy "In bed presence" that prevents going back to 50%. If my partner is already in bed and I trigger motion in the bedroom, that dummy covers for that too and volume stays at 5% Simpler things: automating things only once a day:
@nfarina Nick your plugin literally gave my home persistence and memory. It's very powerful (but does require to create complex if-condition-based automation if you want to do fancier things like I do). But if you're not using it, are you using an alternative that provides dummies too? |
@incline02 Thank You for your examples. What do you think about my plugin development proposal? Do you have any suggestions what else to add? |
Sure, I'm happy to provide feedback
I join @nfarina is asking the practical purpose: don't all of the above come down to reporting Virtual On/Off statuses or a given %? It is true that they will unlock different views/properties in HomeKit but nothing actionable as they are virtual. I don't have the blinds or Garage door but I have all the others and I'm not sure why I would need them virtual. I can see a a way to use them but it's rather convoluted: say I have homekit capable blind or door or else but it doesn't advertise as such because the manufacture was lazy or whatever and so they show up as smart plug where OFF means blind/door closed. With your adjustments, I could substitute this plug profile to an actual garage door profile and as such via automations (if the dummy blinds Is set to closes, the real plug turns off. Then in the home app, I'd have to hide it away in favour of the dummy) benefits? Improving Siri/natural language: use "open the curtains" instead of "turn on the curtain". But that's about as useful it get; on top of my mind. I would add, if not too hard to maintain, it's better to have more profiles that not enough. And someone like me, will come up with something creative.
Persistence through reboot is great. I need this. If I reboot at night, because of the % dimmer, my systems thinks it's day so I set all motion sensors to reset the % correctly. cumbersome. Last used would be great, set value, would be great.
I would design the homebridge UI so it offers these, but let it pass the data to homebridge in the unit homebridge prefers, to avoid any bug. But I think it's a great one too.
that's always welcomed. I actually wish homebridge/or this plug could offer Dummy Management because I have around 20 of them and they could easily be sorted by category Also as we speak, homebridge-Dummy is rendering my entire homebridge non-responsive randomly til I reboot. I could seriously use an update as I realise my dependancy on @nfarina :D ! I'm a little worried Nick isn't using their own plugin anymore :D ! I'm now reverting back to old versions to find out if it'll fix my issues but any fix is highly welcomed. |
Thank You. My code fix problem with no response. But I'm not the author and only @nfarina can make it public. |
I'm not too familiar with gihub, only use to it open issues or search for fix so pardon my question: can't you create a fork if @nfarina isn't interested in maintenance? |
or you can open a separate repository such as dummy-extension, and you can maintain it on it. |
I still hope @nfarina will use my code and update plugin for all. Unfortunately, I also don't know much about github and I don't know how to make these fork or repository. |
@mkz212 on top of mind, given that it's just a copy paste of a project after which, replacing some files, it can't be complicated ! I found a tutorial that I'm willing to follow but it's your ideas and so you should be the owner of the new copied project. Would you like to give it a try? https://docs.github.com/en/get-started/quickstart/fork-a-repo |
HEADS UP The fix:
I confirm @mkz212 new types of dummies are in there too And so far, the bug I reported isn't anymore. Let's keep this open for some after care. please note I'll be attending a private event til Monday morning. Do come with feedback though! |
Dummy Irrigation would get me the correct icons into Home App for my watering systems which are triggered by switches. |
@nfarina If you want I can make my code as pull request. Would you then accept the changes? |
@nfarina I added a pull request with all these changes. But I know that it's a lot of changes for one pull request. Perhaps you prefer me to divide it into single changes? The question is whether you are still going to develop the plugin? If not, maybe you consider pass it to someone who would like to? |
Meanwhile, I'd like to test this but don't know how to install it from a separate source. I tried to find a way to install a plugin from the source code but no luck. Could you please point me out how to do it? |
I've never done it before, but from what I read, in homebridge terminal type: Or connect via FTP and change code in these two files. |
I'm interested in this revision. Especially being able to set security notification. I have interfaced parts of my alarm system (Texecomm) to shelly uni's using mongoose firmware. For example when down stairs alarm is set triggers a shelly uni, which then turns all the downstairs lights off. My question does this install along side the existing dummy switch. Or do I need to uninstall the original install the revision. Then recreate the dummy switches and timers? Which then require me to rebuild the scenes etc |
@5xPa I think that it will override plugin. But I changed the code a bit now so that it should work with the current settings - now only miliseconds can be set, and in my version miliseconds are default and you can change it. |
@5xPa I check this and for me |
@mkz212
In Homebridge plugins I searched for incline_02, which returned
Homebridge Dummy Incline_02 Beta
homebridge-dummy-incline_02-beta v0.9.1 (2023-07-12)
I was not sure if this was the latest version, I do not have it installed.
Hoping someone will comment is this the latest version
…On Sat, 28 Oct 2023 at 09:47, mkz212 ***@***.***> wrote:
@5xPa <https://github.com/5xPa> I check this and for me npm install
mkz212/homebridge-dummy#big-update --save doesn't work.
—
Reply to this email directly, view it on GitHub
<#84 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ARF3VCADVLLOKQ3TVUX46FLYBTBB3AVCNFSM6AAAAAAXYGWGYKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBTG42TANRSG4>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I think you can try. Since then I have only changed the fact that by default the time is set to milliseconds as in the original. But if it installs as an independent plugin, it doesn't matter. |
Ok now it should work: It will override plugin but you can return to the original code at any time: in the Plugins tab, click the key icon next to the plugin, then: install another version. |
I'm not brave enough to update the branch, so I tried to install a separate plugin Incline_02 Beta. But, it looks like the Incline_02 Beta plugin shares the same configuration as this dummy switch plugin. That said, once something is changed in Incline_02 Beta, this dummy plugin is affected. So, I deleted Incline_02 Beta. |
Writing this code, my idea was for the author of the original plugin to include new additions and corrections in his plugin, not to create a new plugin. That's why I added a pull request as well as the code itself and information on which files to replace. Since this is not a separate plugin but corrections to the current one, it is obvious that it will be the same configuration. But in my opinion the code does not take anything but only corrects and adds. |
Maybe you could create a new branch and merge PR to it with this big update and release it as a beta? Who will want will install and test it. Do you have any comments what to improve? If you do not want to release the entire code as a beta because it is too big change, if I add a small PRs with small changes, is there a chance that you will include them? If you are busy, maybe you could consider appointing someone as an administrator? This is a great plugin that a lot of people use and it would be nice if it was further supported and developed. |
@mkz212 It looks like the original author doesn't want to make any change on this plugin or takeover it. We cannot force him/her to do that. I think you'd better make a separate git and plugin if you want. Once you make your own plugin and publish it, you can advertise it on Reddit. https://www.reddit.com/r/homebridge/ This community is quite active so you can get quick and a lot of feedback on your plugin. You can check a recent post about AppleTV plugin https://www.reddit.com/r/homebridge/comments/17mquj7/apple_tv_enhanced_plugin/ It's been 12 days posted it but there are a lot of comments and the developer attracted a lot of users. |
I think it would be great if you can create a separate plugin |
Hey @mkz212. Thanks a lot for your effort! Its sad to see that the original developer is currently not willing to incorporate your update into the plugin. As the last changes to this plugin are very old I would also opt for you to create a separate plugin where the development can continue. |
@dadsalleb @maisun @spaceg00se-r I made plugin. But it is not published. You can take it and develop and publish. homebridge-virtual-device available here: https://github.com/homebridge/unmaintained-plugins |
@mkz212 I'm not sure if I'm the guy to do that but I'll think about it. Do you know if the virtual-device plugin would already be Homebridge 2.0 compatible? |
It should be - I tested it on Homebridge 2.0.0 and works. It is also platform plugin so you could submit it to Verified by Homebridge program. |
Hello, I submitted the project located at https://github.com/Plankske/hb-virtual-switch for verification a few weeks ago. |
Cool. But.. I think that Homebridge plugin name must starts with 'homebridge-'? |
The name was changed by npm as part of this namespace management because of the name 'virtual switch'. |
@Plankske have you seen my question above? Is this functionality also available in your plugin? |
No(t yet). I see no reason why it cannot be developed as long as this plugin setup is the way to go achieve the required functionality. |
@Plankske It would be nice if you could port the necessary changes from @mkz212 mentioned above into your version. The idea is that e.g. switching on the virtual switch starts the reset timer and then setting the virtual switch again to "on" using an event in HomeKit would reset the timer so that it starts again counting down the defined time. |
If You want new functions:
replace config.schema.json to:
and replace index.js to:
@nfarina what do you think? This is my suggestion for the next update, to 1.0.0.
The text was updated successfully, but these errors were encountered: