Giter VIP home page Giter VIP logo

Comments (14)

swt2c avatar swt2c commented on July 30, 2024 1

Unfortunately, it appears this is due to a change Logitech made on its web server (possibly inadvertently). They are now setting the X-Frame-Options header to DENY. During the process when waiting for a response from the remote, the web site uses an iframe that continuously refreshes periodically. Due to this new header setting, the browser refuses to load the iframe so nothing happens.

I was able to use this Firefox add-on that ignores the X-Frame-Options header, and then I was able to use the web site successfully to update a remote:
https://addons.mozilla.org/en-US/firefox/addon/ignore-x-frame-options-header/

I'll submit an update to the documentation to document this new unfortunate quirk.

from concordance.

swt2c avatar swt2c commented on July 30, 2024

#18

from concordance.

DennisLfromGA avatar DennisLfromGA commented on July 30, 2024

To add, I was able to use the below Chrome extension that ignores the X-Frame-Options header, and then I was able to use the web site successfully to update a remote:

Hope this helps,
-DennisLfromGA

from concordance.

robross0606 avatar robross0606 commented on July 30, 2024

I am trying to set this up but the site looks completely borked even with the Chrome extension. I'm a bit baffled about what I'm supposed to be doing here. The site won't accept the username and password that works fine in MyHarmony app. Is there a HOWTO somewhere on setting this up?

from concordance.

swt2c avatar swt2c commented on July 30, 2024

I am trying to set this up but the site looks completely borked even with the Chrome extension. I'm a bit baffled about what I'm supposed to be doing here. The site won't accept the username and password that works fine in MyHarmony app. Is there a HOWTO somewhere on setting this up?

MyHarmony.com is a completely separate account system from the older members.harmonyremote.com system. If your remote works with MyHarmony.com then it likely doesn't work with members.harmonyremote.com. Most remotes only work one of the two systems, with newer remotes using MyHarmony.com. What remote do you have?

from concordance.

robross0606 avatar robross0606 commented on July 30, 2024

What remote do you have?

It is a Harmony One+. Fairly old, so I thought it should work.

from concordance.

jaymzh avatar jaymzh commented on July 30, 2024

Harmony One was the first ones to requires myharmony, as I recall. You'll want the mhgui app.

from concordance.

brianjmurrell avatar brianjmurrell commented on July 30, 2024

To add, I was able to use the below Chrome extension that ignores the X-Frame-Options header, and then I was able to use the web site successfully to update a remote:

I've installed this extension in Chrome but still nothing happens after I have run:

$ concordance Connectivity.EZHex 
Concordance 1.4
Copyright 2007 Kevin Timmerman and Phil Dibowitz
This software is distributed under the GPLv3.

Requesting identity:  100%             done
Contacting website:   100%             done
Success!

from concordance.

swt2c avatar swt2c commented on July 30, 2024

Are you running the latest concordance from git? There were some recent changes made that are needed for website communications.

from concordance.

bryder avatar bryder commented on July 30, 2024

I had the same problem with 1.5. It sends the connectivity test fine (it says anyway). But nothing happens after that on the web client.

From what I could tell by tracing the Harmony 7.7.0 client there's an extra response required now.

The output from concordance 1.5

 & "C:\Program Files (x86)\Concordance\concordance.exe" -v .\Connectivity.EZHex
Concordance 1.5
Copyright 2007 Kevin Timmerman and Phil Dibowitz
This software is distributed under the GPLv3.

Requesting identity:  100%             done
Contacting website:   100%             done
Success!

These are the http packets from concordance 1.5

   13   0.617828 192.168.0.47 → 52.44.86.125 HTTP 1467 57724 443 POST /EasyZapper/New/ProcConnectivity/Connectivity_Receive_Zaps.asp HTTP/1.1  (application/x-www-form-urlencoded)
   14   0.823501 52.44.86.125 → 192.168.0.47 HTTP/XML 399 443 57724 HTTP/1.1 200 OK

And the OK packet from logitech does say 'Success' in the xml.

This is what I see when running the 7.7.0 client

  648  32.403231 192.168.0.47 → 52.44.86.125 HTTP 1019 57430 80 GET /EasyZapper/New/ProcConnectivity/Connectivity.EZHex HTTP/1.1
  666  32.816081 52.44.86.125 → 192.168.0.47 HTTP 1461 80 57430 HTTP/1.1 200 OK  (application/x-easyzapper-hex)
  672  36.650959 192.168.0.47 → 52.44.86.125 HTTP 4906 57445 80 POST /EasyZapper/New/ProcConnectivity/Connectivity_Receive_Zaps.asp HTTP/1.1  (application/x-www-form-urlencoded)
  677  36.863653 52.44.86.125 → 192.168.0.47 HTTP/XML 370 80 57445 HTTP/1.1 200 OK
  683  37.089841 192.168.0.47 → 52.44.86.125 HTTP 1550 57446 80 POST /EasyZapper/New/ProcConnectivity/Connectivity_Receive_Complete.asp HTTP/1.1  (application/x-www-form-urlencoded)
  686  37.299976 52.44.86.125 → 192.168.0.47 HTTP/XML 370 80 57446 HTTP/1.1 200 OK

So it looks like you have to POST a Connectivity_Receive_Complete.

However the other difference is a lot more data is going up on the Connectivity_Receive_Zaps.asp call. The 7.7.0 client listed my devices in my remote basically. Maybe that doesn't matter.

The outputs are from thshark. The number after the 'HTTP' is the bytes in the assembled HTTP.

from concordance.

swt2c avatar swt2c commented on July 30, 2024

@bryder that seems strange. The website still works fine with concordance 1.5 for me without the second post. In any event, can you try this patch and see if it solves the problem for you?

diff --git a/libconcord/libconcord.cpp b/libconcord/libconcord.cpp
index 13b9c82..e611f67 100644
--- a/libconcord/libconcord.cpp
+++ b/libconcord/libconcord.cpp
@@ -931,6 +931,10 @@ int post_connect_test_success(lc_callback cb, void *cb_arg)
                     add_cookiekeyval)))
         return err;
 
+    if ((err = Post(of->GetXml(), of->GetXmlSize(), "COMPLETEPOSTOPTIONS", ri,
+                    true, add_cookiekeyval)))
+        return err;
+
     if (cb)
         cb(LC_CB_STAGE_HTTP, 1, 1, 1, LC_CB_COUNTER_TYPE_STEPS, cb_arg, NULL);
 

from concordance.

bryder avatar bryder commented on July 30, 2024

That fixed it.

The website says communication with the Harmony One has been confirmed

And loading the update into the remote worked fine.

Thanks!

from concordance.

bryder avatar bryder commented on July 30, 2024

I'll try reverting it and testing it again. The harmony web pages aren't looking the same as they were a couple of days ago.
Perhaps something else is different today.
I'll update when I know

from concordance.

bryder avatar bryder commented on July 30, 2024

With the old version - just sending the the one response it works now.

I cleared all of my cookies and tried https://members.harmonyremote.com/EasyZapper/New/ProcLogin/Start.asp?BrowserIsChecked=True

I got the login page - but there was no login button. Hard to login!

I tried https://members.harmonyremote.com/EasyZapper and it said I had to update my software.

So I set my user agent in chrome dev tools to

HarmonyBrowser/7.3.0 (Build 15; UpdatedFrom 7.3.0.15; Skin logitech; Windows XP 5.1; x86; en; rv: 1.8.0.2) Gecko/20060125

I think this is what is confusing the connectivity test.

But at least I can login now.

Once I've logged in (and selected remember me on this computer) I removed the user agent override. Closed the window and went to the BrowswerIsChecked=True page

I was logged in already and it worked fine.

When I select Update I get the page which tells me to open the file that downloads (which I didn't get when I pretended to be the 7.3.0 app).

At which point the concordance single packet version works (or the two packet version)

Presumably there's a user agent setting for an old browser which will work on that site to save all the messing around.

For testing the main thing is to clear the cookies so the website doesn't know you anymore.

from concordance.

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.