I've decided to do a complete code refactor to hopefully provide better readability of the code with a stricter code standard. I've also decided to try to remove the dependency on net-ping which used raw sockets to provide ping functionality. Instead ping is introduced which relies on the native implementations of pinging. This should remove the need for sudo permission on linux devices or at least mitigate the issue to a complete linux one where the fix is to provide the user running Homebridge with rights to ping.
All in all these changes should provide easier navigating of the code as well as improved usability in the sense that sudo rights should no longer be required.
Before the changes is pushed to the master branch as well as published to npm I'd like some feedback to see that it is working reliably on devices.
To install and test the beta, navigate to the beta branch and follow the instructions.
I've decided to do a complete code refactor to hopefully provide better readability of the code with a stricter code standard. I've also decided to try to remove the dependency on
net-ping
which used raw sockets to provide ping functionality. Insteadping
is introduced which relies on the native implementations of pinging. This should remove the need for sudo permission on linux devices or at least mitigate the issue to a complete linux one where the fix is to provide the user running Homebridge with rights to ping.All in all these changes should provide easier navigating of the code as well as improved usability in the sense that sudo rights should no longer be required.
Before the changes is pushed to the master branch as well as published to npm I'd like some feedback to see that it is working reliably on devices.
To install and test the beta, navigate to the beta branch and follow the instructions.