Giter Site home page Giter Site logo

homebridge-tc-2-0's People

Contributors

flipit avatar matthillmanbt avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

homebridge-tc-2-0's Issues

Alarm Sensors

Is their any work or anything to add sensor connectivity to HomeKit?/

Homekit status updates and sensors

I've read the other posts here. Seems that "disarming" status staying despite what the panel/system is set to, is common. I noticed that if I manually change the system state in HOOBS to "home", the bridge/accessory in HomeKit will switch from "disarming" to "home". If I then change it to "off" in HOOBS (which does change the system state properly by the way), the bridge/accessory in HomeKit changes to "off".

Then if I close the Home app (force close), I get a warning that says "Total Connect was armed for stay". This doesn't actually change the state of the system - it stays in "home" state (in HOOBS as well). But then the bridge/accessory displays "disarming". I can synch it back up, for lack of a better phrase, by going through what I said in the first paragraph which only holds until I force close the app (or significant time goes by after I switch to another app on my iOS device).

When this happens, this error is in the HOOBS log:

2:19:19 PMTc Security Panel BridgeWARNINGunhandled rejection: TypeError: Cannot read property 'Partitions' of undefined

Question: any plans to add the ability for sensors/zones to be accessories in HomeKit through this plug-in?

This is with the new Pro series system for what it's worth.

Alarm goes to “not responding” when changing state

Thank you for a great plugin. This is the best TC security plugin I’ve seen yet.

I may be experiencing a bug. When changing the alarm state in the Home app, the alarm device immediately changes to “not responding.” The change goes through and the alarm does what I told it to do. Closing and reopening the Home app refreshes the state and it accurately reports the state. The logs only show the state change with no apparent errors.

I am running Homebridge in Docker on a RPI 3.

[getStatus] RequestError:

I'm getting the following errors

[02/02/2023, 16:36:30] [TotalConnect] Unknown state received: 0
[02/02/2023, 16:36:30] [TotalConnect] Get current state -> 0
[02/02/2023, 16:36:30] [TotalConnect] [getStatus] RequestError: write EPROTO C0FAEF76:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../deps/openssl/openssl/ssl/statem/extensions.c:922:

Any Ideas or thoughts on what is causing this issue.

Thanks

This plugin slows down Homebridge

Getting the following error:

This plugin slows down Homebridge. The read handler for the characteristic 'Security System Current State' didn't respond at all!. Please check that you properly call the callback! See https://homebridge.io/w/JtMGR for more info.

I'm guessing this plugin has been abandoned at this point?

Incorporate Pull Request into Homebridge

Hello,

I have had issues incorporating the original version of this plugin into Homebridge but noticed that there is a pull request that focuses on fixing many of the issues. How do I go about incorporating this pull request into Homebridge to help resolve the issues?

TypeError: Cannot read property 'Partitions' of undefined

I am getting the error stated in the title but more info is below: (I did mask the directory it's running in for security)

(node:9468) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'Partitions' of undefined
at TCApi.getStatus (\npm\node_modules\homebridge-tc-security-panel\src\tc.v2.ts:263:63)
at runMicrotasks ()
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at Timeout._onTimeout (
\npm\node_modules\homebridge-tc-security-panel\src\tcAccessory.ts:56:22)
(Use node --trace-warnings ... to show where the warning was created)
(node:9468) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:9468) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Device stuck on "Disarming"

Periodically the alarm device will get stuck on "Disarming...". The logs show the following when it happens:

[2/4/2021, 6:55:34 AM] [TotalConnect] Get Characteristic TargetState -> 3
[2/4/2021, 6:55:34 AM] [TotalConnect] Get current state -> 0

There does not seem to be any consistent way to get the plugin to go back to its normal behavior.

Plugin fails with OpenSSL 3.0

OpenSSL 3.0 breaks this plugin due to rs.alarmnet.com not supporting secure renegotiation.

This error from the Homebridge log repeats upon every getStatus() call: [TotalConnect] [getStatus] RequestError: write EPROTO C0A767E63D7F0000:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../deps/openssl/openssl/ssl/statem/extensions.c:922:

I was able to reproduce this issue by running openssl s_client rs.alarmnet.com:443, resulting in

CONNECTED(00000003)
4067A7E0927F0000:error:0A000152:SSL routines:final_renegotiate:unsafe legacy renegotiation disabled:../ssl/statem/extensions.c:879:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 3111 bytes and written 324 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID: 109F731E12A40FC3D9B886870B5FB43F94E6DA86AC66A8E4E26E8A54DEBB824B
    Session-ID-ctx: 
    Master-Key: 
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1675831906
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
---

If I add the following lines to openssl.cnf (/etc/ssl/) then I'm able to execute the s_client command above and it returns the server certificate with a successful handshake.

[ssl_sect]
system_default = system_default_sect
[system_default_sect]

MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1
Options = UnsafeLegacyRenegotiation

However, even IF I were to change this for the whole system (which I do NOT want to do), the plugin is still failing. I tried adding --openssl-legacy-provider, --tls-max-v1.2, and --openssl-config /etc/ssl/openssl-unsafe.cnf to NODE_OPTIONS to no avail.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.