Home Community Blog Buy Now
Blog

Misty Community Forum

SDK Website Hiccup

Hey everyone,

We identified (and received reports of) an issue connecting from the SDK website to Misty today. From the perspective of the browser tools, this is reported at a CORS issue. As it turned out, this is a change to Chrome that can be seen here. We’ve updated the SDK website, which restores the previous behavior, but this solution will almost certainly have a limited lifespan as Google plans to deprecate the workaround with version 102 of Chrome. I apologize for the hiccup.

That said, I’m interested in what anybody thinks regarding a potential long term solution. If we’re heading to a world where mixed SSL won’t work, this is going to get complicated. Off the top of my head, I think these are the potential solutions, but I’d really like to hear about any others as these all have drawbacks.

  • Host the SDK website and associated content on Misty. This dodges the mixed SSL issue, and if SSL were required, would force the user to accept a self signed cert from the robot.
  • Give users documentation around how to register Misty with their network DNS, and tools to install and configure an x509 certificate. This is fine if you have access to good IT resources, but would introduce an onerous process.
  • Allow Misty robots to register with a hosted web portal that acts as a proxy, handling certificate validation internally. Users would log in to the portal to access their robot without needing a direct IP connection. The big downside here is building up and maintaining that infrastructure, robot management, and ultimately security concerns around robot access.

Are there other good options?

Idea: simple Python program that fetches most of the site content from Misty Robotics / SDK / Command Center and then serves it on localhost.

(related to idea above) simple program that forwards all requests from a port on localhost to their Misty IP address. Then, users would go to sdk.mistyrobotics.com as usual, but instead enter something like “localhost:6666” into the address input box.

This idea leverages the section about localhost being permitted for Mixed Content websites: Private Network Access update: Introducing a deprecation trial - Chrome Developers

@slivingston Thanks for the suggestions! I hadn’t considered a variation where a person can host the SDK website from their desktop, but there’s nothing really in the way. I don’t think this will work in some schools where they use Chromebooks, but this is a good solution for other users, especially if we could package it in a low support, platform agnostic way.

E.g., ncat from the nmap project can be used for this. I am doing it now with a Misty that has IP address 192.168.2.214 by

ncat --sh-exec "ncat 192.168.2.214 80" -l 8080 --keep-open

in a terminal and then putting 127.0.0.1:8080 in the “Robot IP Address” box at Misty Robotics / SDK / Command Center