Hunter Douglas Platinum Bridge integration?

I also uncommented line 156, I’m using Dropbox, still haven’t had any devices show up…

I got this error just now

4‎:‎51‎:‎22‎ ‎PM: error groovy.lang.MissingMethodException: No signature of method: groovy.util.slurpersupport.NodeChild.eachLine() is applicable for argument types: (script_app_Hunter_Dou_2c8234a1_659e_477d_8623_533e4a199d94_ver_0_2$_processState_closure4) values: [script_app_Hunter_Dou_2c8234a1_659e_477d_8623_533e4a199d94_ver_0_2$_processState_closure4@167dcb10]
Possible solutions: each(groovy.lang.Closure) @line 145 (processState)

@Frederic_Breaux - I have mine hiding in a pastebin for the moment.

If you are using dropbox, I would make sure that the URL actually sends it to the raw version of output.txt (i.e. the SmartApp needs to get just the .txt output, without any wrapping HTML)

Here’s an example to contrast the two, using your output.txt:

To check the difference, use your browser to navigate to the URL, then right click and “View Source”. If it looks like the HTML code below then the SmartApp won’t be able to parse it:

Djpinoy,
What are you using to store output.txt?
Frederic

Djpinoy
What are you using to store output.txt?

@Frederic_Breaux - sorry if I wasn’t clear.

I replied above:

I have mine hiding in a pastebin for the moment.

Check the example I showed above:
https://pastebin.com/raw/D1UUc7qb

That’s my link, looks raw right?

I added a skip blank lines piece to the code since a number of folks are running into a similar issue. Try this version to see if it if better.

@Derrek113116 - nope. That won’t work. It’s wrapped in HTML.

When your hub accesses that page, it will see this:

<!DOCTYPE html><html xml:lang="en" class="maestro" xmlns="http://www.w4.org/1999/xhtml"><head><script nonce="HPMby3uzqCK8uBxWVP/f">
window._goch_ = {};
window.addEventListener('click', function(event) {
    'use strict';
    for (var elm = event.target; elm; elm = elm.parentElement) {
        if (elm.id &&
            window._goch_.hasOwnProperty(elm.id) &&
            window._goch_[elm.id].call(elm, event) === false) {
            event.preventDefault();
        }
    }
}, true);
window._csp_external_script_nonce = "Ae7g8Mr9DC6hkyn0Yav8"</script><link href="https://cfl.dropboxstatic.com/static/images/favicon-vflUeLeeY.ico" rel="shortcut icon" /><script type="text/javascript" nonce="HPMby3uzqCK8uBxWVP/f">window.ST=+new Date();</script><link href="https://cfl.dropboxstatic.com/static/images/logo_catalog/dropbox_webclip_60_m1-vflgZE2qv.png" rel="apple-touch-icon" /><link href="https://cfl.dropboxstatic.com/static/images/logo_catalog/dropbox_webclip_76_m1-vflB_aAVn.png" rel="apple-touch-icon" sizes="76x76" /><link href="https://cfl.dropboxstatic.com/static/images/logo_catalog/dropbox_webclip_120_m1-vflmwkfBS.png" rel="apple-touch-icon" sizes="120x120" /><link href="https://cfl.dropboxstatic.com/static/images/logo_catalog/dropbox_webclip_152_m1-vflU0bwfQ.png" rel="apple-touch-icon" sizes="152x152" /><meta content="text/html; charset=UTF-8" http-equiv="content-type" /><meta content="Dropbox is a free service that lets you bring your photos, docs, and videos anywhere and share them easily. Never email yourself a file again!" name="description" /><meta content="online storage, free storage, file sharing, share files, awesome, cloud storage, online backup, cross platform, sync, sharing, mac, windows, os x, linux, backup, collaboration, file versioning, file revisions, remote access, undelete" name="keywords" /><meta content="https://www.dropbox.com/s/8pai2j5bcpekd29/output.txt?dl=0" property="og:url" /><meta content="Dropbox" property="og:site_name" /><meta content="output.txt" property="og:title" /><meta content="210019893730" property="fb:app_id" /><meta content="website" property="og:type" /><meta content="Shared with Dropbox" property="og:description" /><meta content="https://cfl.dropboxstatic.com/static/images/icons128/page_white_text.png" property="og:image" /><meta content="128" property="og:image:width" /><meta content="128" property="og:image:height" /><meta content="summary" name="twitter:card" /><meta content="@Dropbox" name="twitter:site" /><meta content="https://www.dropbox.com/s/8pai2j5bcpekd29/output.txt?dl=0" name="twitter:url" /><meta content="output.txt" name="twitter:title" /><meta content="Shared with Dropbox" name="twitter:description" /><meta content="https://cfl.dropboxstatic.com/static/images/logo_catalog/twitter-card-glyph_m1@2x-vflrCAzPX.png" name="twitter:image" /><meta content="TnuSyOnBMNmtugbpL1ZvW2PbSF9LKvoTzrvOGS9h-b0" name="google-site-verification" /><meta content="EZKIczQcM1-DVUMz8heu1dIhNtxNbLqbaA9-HbOnCQ4" name="google-site-verification" /><meta content="tz8iotmk-pkhui406y41y5bfmfxdwmaa4a-yc0hm6r0fga7s6j0j27qmgqkmc7oovihzghbzhbdjk-uiyrz438nxsjdbj3fggwgl8oq2nf4ko8gi7j4z7t78kegbidl4" name="norton-safeweb-site-verification" /><meta content="https://cfl.dropboxstatic.com/static/images/win8_web_tile-vfl8eyKFU.png" name="msapplication-TileImage" /><meta content="#ffffff" name="msapplication-TileColor" /><title>Dropbox - output.txt</title><style type="text/css">.hny-vputc { display: none; }</style><link href="https://cfl.dropboxstatic.com/static/images/favicon-vflUeLeeY.ico" rel="shortcut icon" /><meta content="noindex, nofollow, noimageindex" name="robots" /><meta content="origin-when-cross-origin" name="referrer" /></head><body class="sl-file-app"><script type="text/javascript" nonce="HPMby3uzqCK8uBxWVP/f">
            (function(){"use strict";var e,n=window,r=function(){e=[],n.addRequireLoadCallback=function(n){return e.push(n)},n.configureRequire=function(){var e=arguments;n.addRequireLoadCallback(function(){return n.configureRequire.apply(null,e)})},n.define=function(){var e=arguments;n.addRequireLoadCallback(function(){return n.define.apply(null,e)})},n.preLoadFile=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];n.addRequireLoadCallback(function(){return n.preLoadFile.apply(null,e)})}};r(),n._insertRequireShim=r,n.InitRequireJs=function(r){n.requireContexts={},requirejs.onError=function(){},n.performance&&null!=n.performance.now&&(requirejs.onResourceLoad=function(e,r,i){var u=n.performance.now(),o=n.requireContexts[e.id];o&&o.require(["modules/clean/web_module_timing"],function(e){var n=o.module_callback_times[r.id];e.add_module(r,u,n?n.callbackTime:void 0,n?n.callbackDuration:void 0)})}),n.configureRequire=r,n.addRequireLoadCallback=function(e){return e()},e.forEach(function(e){return e()})}})();

It needs to look like this:

1 $mbc100-100-100-100-
1 $firm01-2018-HD gateway 2.18
1 $MAC0x000B3C5FCAFB-
1 $LEDl064-
1 $upd00-
1 $reset
1 $set006-
1 $ctbñX—H•
¤: ‡H ¼àÁ•>•Rëóï¡
1 $cr00-10-0xE778-Nook
1 $cs00-00-07-Door 1
1 $cp00-04-255-
1 $cs01-00-06-Door 2
1 $cp01-04-255-
1 $cs02-00-04-Door 3
1 $cp02-04-255-
1 $cs03-00-08-Door 4
1 $cp03-04-255-
1 $cm00-Afternoon

Here’s an example of what it should look like when you access the page:
https://pastebin.com/raw/D1UUc7qb

Hi @schwark - hope all the commotion on this thread didn’t wake you :slight_smile:

Did you push the commit to github? I didn’t see it on master just yet…

Thanks again for all your work on this!

P.S. How’d did you figure out how to interface with this in the first place??? Ex-HD engineer?

The push should show up in master now

Thank you!!! I used your RAW version of my output.txt file and it worked. Now, I have to figure out how to get a RAW version from Drop Box or Google Drive.

Again. Thank you for your help.

Thank you. This was very helpful.

djpinoy
I signed up on pastebin and created my own output.txt file and successfully added the devices.
Thankyou

1 Like

Any idea on how I can get Dropbox to display as raw or should I just use pastebin

Yatzhee! I have devices!

1 Like

Now as far as the smart app, I only have two skylight blinds I never use them separately always together in unison if I don’t select create devices for each shade no device gets created. How do I just make one shade for the 2, group?

1 Like

@Derrek113116 - glad you got it working!

Yes - you’ll need to group the shades in the Platinum App first on your phone.

This will change what’s stored on the hub, so you’ll need to dump output.txt, upload it to pastebin again, etc.

Then you’ll see the groups in the smart app and can control them like that.

1 Like

Gotcha any way to edit the app so instead of on off it’s open close?

@Derrek113116 - I’m sure there’s a way, but that’s a little beyond my expertise at the moment.

Note that it’s not really “open / close”. If I remember correctly, setting the switch to “On” essentially activates the shade scene, whatever that scene might be programmed to by the Platinum App.