Coder Social home page Coder Social logo

Comments (16)

mrjackyliang avatar mrjackyliang commented on June 3, 2024 2

Night mode is now supported as of v1.3.0! Closing this issue now😎

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024 1

Those two work perfectly - the system gets armed and disarmed as it should and the change is reflected both in ADT portal and on the panel!

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024 1

Perfect! I'm working on the functions now. Will update you when the next version is released, thanks for letting me know!

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Yes, I remapped the Night mode to stay mode, because my system doesn't support it (afaik).

I will make this a priority in my next update, so to support night mode in the system. Will comment on it later on the instructions to retrieve the night mode information!

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Before you start, place your system into TEST MODE. You can do that at the MyADT website.

Here are the instructions to grab the Night Mode URLs from ADT Pulse's website:

  1. Launch Google Chrome.
  2. Go to this site: https://portal.adtpulse.com/myhome/summary/summary.jsp.
  3. Disarm your system.
  4. Right-click (or ⌘+Click) and then select Inspect.
  5. Click the Console tab.
  6. Copy each line of code shown below, and paste the response:
jQuery("#divOrbSecurityButtons").html();
  1. Arm your system to night mode.
  2. Copy each line of code shown below, and paste the response:
jQuery("#divOrbSecurityButtons").html();
jQuery("#divOrbTextSummary .p_boldNormalTextLarge").html();
  1. Disarm your system.
  2. Open a window or door (do not close it).
  3. Arm your system to night mode BUT DO NOT ATTEMPT TO FORCE ARM.
  4. Copy each line of code shown below, and paste the response:
jQuery("#arm_button_1").html();
  1. Disarm your system and close the window/door.
  2. Logout (important)!

P.S. Remember to let me know which mode you are in when following 6, 8, and 12!

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024

A couple of questions:

  1. AFAIR if I open a door/window and then try to arm via the panel, it won't let me do it; if I try to arm via the ADT Pulse app, it will ask for a sensor override - what do you mean by "force arm"?
  2. By "which mode your are in following 6, 8 and 12" do you mean what I see on Home app or in ADT Pulse?

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024
  1. Yes, force arm is essentially sensor override. Force arm basically does a sensor override then arms your system for you.
  2. In your own words. So if you just armed night or opened window/door, just state the current status.

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024

Here are the details:

  • After step 6., I'm in Disarmed state in ADT Portal. The output of your jQuery code:
<div><input type="button" id="security_button_0" name="security_button_0" value="Arm Away" alt="Arm Away" class="p_btn p_btnMnormal" onclick="setArmState('quickcontrol/armDisarm.jsp','Arming Away','0','2','false','href=rest/adt/ui/client/security/setArmState&amp;armstate=off&amp;arm=away')" onmouseover="javascript:btnHover(this,'M')" onmouseout="javascript:btnNormal(this,'M')" onmousedown="javascript:btnDown(this,'M')" onmouseup="javascript:btnNormal(this,'M')" data-fitlabel="ellips"><style type="text/css">#testSizesecurity_button_0 {position: absolute; visibility: hidden; height: auto; width: auto; white-space: nowrap; min-width: 0}</style><div id="testSizesecurity_button_0" class="p_btn p_btnMnormal">Arm Away</div></div><div style="margin-top: 6px;"><input type="button" id="security_button_1" name="security_button_1" value="Arm Stay" alt="Arm Stay" class="p_btn p_btnMnormal" onclick="setArmState('quickcontrol/armDisarm.jsp','Arming Stay','1','2','false','href=rest/adt/ui/client/security/setArmState&amp;armstate=off&amp;arm=stay')" onmouseover="javascript:btnHover(this,'M')" onmouseout="javascript:btnNormal(this,'M')" onmousedown="javascript:btnDown(this,'M')" onmouseup="javascript:btnNormal(this,'M')" data-fitlabel="ellips"><style type="text/css">#testSizesecurity_button_1 {position: absolute; visibility: hidden; height: auto; width: auto; white-space: nowrap; min-width: 0}</style><div id="testSizesecurity_button_1" class="p_btn p_btnMnormal">Arm Stay</div></div>
  • After step 8., I'm in Armed Night mode in ADT Portal. The output of your jQuery commands:
<div><input type="button" id="security_button_0" name="security_button_0" value="Arm Away" alt="Arm Away" class="p_btn p_btnMnormal" onclick="setArmState('quickcontrol/armDisarm.jsp','Arming Away','0','2','false','href=rest/adt/ui/client/security/setArmState&amp;armstate=off&amp;arm=away')" onmouseover="javascript:btnHover(this,'M')" onmouseout="javascript:btnNormal(this,'M')" onmousedown="javascript:btnDown(this,'M')" onmouseup="javascript:btnNormal(this,'M')" data-fitlabel="ellips"><style type="text/css">#testSizesecurity_button_0 {position: absolute; visibility: hidden; height: auto; width: auto; white-space: nowrap; min-width: 0}</style><div id="testSizesecurity_button_0" class="p_btn p_btnMnormal">Arm Away</div></div><div style="margin-top: 6px;"><input type="button" id="security_button_1" name="security_button_1" value="Arm Stay" alt="Arm Stay" class="p_btn p_btnMnormal" onclick="setArmState('quickcontrol/armDisarm.jsp','Arming Stay','1','2','false','href=rest/adt/ui/client/security/setArmState&amp;armstate=off&amp;arm=stay')" onmouseover="javascript:btnHover(this,'M')" onmouseout="javascript:btnNormal(this,'M')" onmousedown="javascript:btnDown(this,'M')" onmouseup="javascript:btnNormal(this,'M')" data-fitlabel="ellips"><style type="text/css">#testSizesecurity_button_1 {position: absolute; visibility: hidden; height: auto; width: auto; white-space: nowrap; min-width: 0}</style><div id="testSizesecurity_button_1" class="p_btn p_btnMnormal">Arm Stay</div></div>
"Armed Night.&nbsp;All Quiet."
  • I can't perform steps 10.-13. - the panel won't let me arm the system if a door/window is open (it just does a single beep and doesn't change the state).

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Hmm... this is unexpected. I don't see the Arm Night buttons in the code you pasted. Can you confirm that there is an Arm Night button in the web portal?

And, during Steps 10 to 13, are you also Arming Night in the web portal? It should pop out a dialog where it asks to Arm Anyway.

Possibly a screenshot might work out.

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024

Oh, sorry - no, there is no Arm Night button in the portal, I'm arming in night mode only through the panel. The state does get correctly reflected in the portal, though. I wonder if they just don't expose through the portal since it's not enabled in their systems by default? And if it's not exposed, I wonder if their REST APIs support it? Is there some experimenting I can do to help find the right parameters?

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Ah, no wonder. In order for me to enable full functionality for Arm Night on the plugin, it must be exposed in the Web Portal.

Icontrol One (a white labeled panel that ADT Pulse uses) doesn't have an actual REST API I can use, so I'm forced to reverse engineer the code so I can implement it into HomeKit.

But on the other hand, I can definitely update the plugin to show that the system is in Armed Night mode.

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024

What I mean is that the portal is just a UI on top of ADT's REST APIs as far as I can tell - maybe we can test if those underlying APIs support night mode, even if there's no button for it in the portal.

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

I can try to come up with some URLs that might be able to Arm Night the system remotely (not that optimistic that it will work), will update you on that later.

Just a curious question. How do you Arm Night using your Security Panel? If you have that function, I might also be able to debug it from my side.

from homebridge-adt-pulse.

golish avatar golish commented on June 3, 2024

I have it mapped to a function key but the official way is:
security code + [3] + [3]
Not sure if it will work for you, though - I had the night mode enabled by the system installer before I was able to start using it.

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Gotcha. I'll also call ADT and see what answers I can get from them in addition to testing this on my system if it works.

from homebridge-adt-pulse.

mrjackyliang avatar mrjackyliang commented on June 3, 2024

Good news! I called ADT customer support, and they told me there isn't an official way to Arm Night in ADT Pulse, but with some common sense hack I found the URLs required to Arm Night the system.

Set the system from Disarmed to Arm Night:

https://portal.adtpulse.com/myhome/quickcontrol/armDisarm.jsp?href=rest/adt/ui/client/security/setArmState&armstate=disarmed&arm=night

Set the system from Arm Night to Disarmed:

https://portal.adtpulse.com/myhome/quickcontrol/armDisarm.jsp?href=rest/adt/ui/client/security/setArmState&armstate=night&arm=off

Go ahead and try these two URLs while you are logged into the Web Portal. And let me know if it works for you!

from homebridge-adt-pulse.

Related Issues (20)

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.