Jump to content
jbrodriguez

[Plugin] ControlR

319 posts in this topic Last Reply

Recommended Posts

On 6/27/2017 at 10:28 PM, ljm42 said:

I'd still prefer it if it just used unRAID's certs

 

I'd like to integrate the plugin UI as reverse proxy in the nginx conf.

 

But still need to look into unRAID's nginx implementation to find out if that's feasible.

Share this post


Link to post

Output

Quote

root@Tower:~# cd /usr/local/emhttp/plugins/controlr
root@Tower:/usr/local/emhttp/plugins/controlr# killall controlr
root@Tower:/usr/local/emhttp/plugins/controlr# ./controlr
I: 2017/07/05 19:56:31 app.go:57: controlr v2.1.0-210.4973aa6 starting ...
I: 2017/07/05 19:56:31 app.go:65: No config file specified. Using app defaults ...
I: 2017/07/05 19:56:31 app.go:74: Connections to emhttp via https:443 ...
I: 2017/07/05 19:56:31 unraid.go:63: starting service Unraid ...
I: 2017/07/05 19:56:31 server.go:69: Starting service Server ...
I: 2017/07/05 19:56:31 server.go:89: Serving files from /usr/local/emhttp/plugins/controlr
I: 2017/07/05 19:56:31 server.go:131: Server started listening https on :2379
I: 2017/07/05 19:56:31 proxy.go:48: Starting service Proxy ...
I: 2017/07/05 19:56:31 proxy.go:91: Proxy started listening http on :2382
I: 2017/07/05 19:56:31 proxy.go:92: Proxy started listening https on :2383
I: 2017/07/05 19:56:31 app.go:104: Press Ctrl+C to stop ...
⇛ http server started on [::]:2382
⇛ https server started on [::]:2379
⇛ https server started on [::]:2383

 

 

Share this post


Link to post

Your emhttp is running on port 443 right ?

 

What's logged after you try to login with your root/password combination ?

Share this post


Link to post
Just now, jbrodriguez said:

Your emhttp is running on port 443 right ?

 

What's logged after you try to login with your root/password combination ?

Yes

When try to logon from the app  I get "No servers available" on the iOS app when using IP port 443 root password

 

Nothing in the syslog

Share this post


Link to post

I have this line in the go file

 

Quote

/usr/local/sbin/emhttp -rp 88,443 &

 

Share this post


Link to post
2 minutes ago, peter_sm said:

When try to logon from the app  I get "No servers available" on the iOS app when using IP port 443 root password

 

Yes, that's fine. v2.7.0 of the app doesn't support https servers.

 

I meant when you try to login to the plugin's UI (https://yourip:2379) ?

 

What does it show in the command line output (from ./controlr) ?

Share this post


Link to post

Now I can reach this page :-) Dont know why ?

 

Log below from command window

 

echo: http: TLS handshake error from 192.168.0.124:3044: tls: first record does not look like a TLS handshake
echo: http: TLS handshake error from 192.168.0.124:3045: tls: first record does not look like a TLS handshake
echo: http: TLS handshake error from 192.168.0.124:3051: tls: first record does not look like a TLS handshake
{"time":"2017-07-05T20:15:40.299571191+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/","status":200, "latency":15773                                                    7,"latency_human":"157.737µs","bytes_in":0,"bytes_out":611}
{"time":"2017-07-05T20:15:40.309907315+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/app/main-4f8c8f5.min.css","stat                                                    us":200, "latency":2101549,"latency_human":"2.101549ms","bytes_in":0,"bytes_out":211930}
{"time":"2017-07-05T20:15:40.316068978+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/app/main-4f8c8f5.min.js","statu                                                    s":200, "latency":7971984,"latency_human":"7.971984ms","bytes_in":0,"bytes_out":1412589}
{"time":"2017-07-05T20:15:40.622946234+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/controlr-deb9c67.png","stat                                                    us":200, "latency":106080,"latency_human":"106.08µs","bytes_in":0,"bytes_out":895}
{"time":"2017-07-05T20:15:40.624318823+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/v-f2204e3.png","status":200                                                    , "latency":59988,"latency_human":"59.988µs","bytes_in":0,"bytes_out":83}
{"time":"2017-07-05T20:15:40.624488852+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/gbadge-488b433.png","status                                                    ":200, "latency":34864,"latency_human":"34.864µs","bytes_in":0,"bytes_out":1816}
{"time":"2017-07-05T20:15:40.624527417+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/appstore-4ccd23e.png","stat                                                    us":200, "latency":60766,"latency_human":"60.766µs","bytes_in":0,"bytes_out":1804}
{"time":"2017-07-05T20:15:40.625604148+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/iphone-hand-7ba5afc.png","s                                                    tatus":200, "latency":1232136,"latency_human":"1.232136ms","bytes_in":0,"bytes_out":197241}
{"time":"2017-07-05T20:15:40.636783878+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/unraid-32ac546.png","status                                                    ":200, "latency":64860,"latency_human":"64.86µs","bytes_in":0,"bytes_out":1571}
{"time":"2017-07-05T20:15:40.636798531+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/jbrio-a96fbbd.png","status"                                                    :200, "latency":49807,"latency_human":"49.807µs","bytes_in":0,"bytes_out":449}
{"time":"2017-07-05T20:15:40.637453264+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/img/fontawesome-webfont-af7ae50                                                    .woff2","status":200, "latency":738053,"latency_human":"738.053µs","bytes_in":0,"bytes_out":77160}
{"time":"2017-07-05T20:15:40.640843515+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/version","status":200, "latency                                                    ":29136,"latency_human":"29.136µs","bytes_in":0,"bytes_out":31}
{"time":"2017-07-05T20:15:40.877795465+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/favicon.ico","status":404, "lat                                                    ency":84616,"latency_human":"84.616µs","bytes_in":0,"bytes_out":23}
{"time":"2017-07-05T20:16:09.412276212+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"POST","uri":"/login","status":200, "latency":22354054,"latency_human":"22.354054ms","bytes_in":33,"bytes_out":175}
I: 2017/07/05 20:16:10 unraid.go:106: Getting users ...
I: 2017/07/05 20:16:10 unraid.go:108: Got 3 users
I: 2017/07/05 20:16:10 unraid.go:109: Getting apps ...
I: 2017/07/05 20:16:10 unraid.go:111: Got 19 apps
{"time":"2017-07-05T20:16:10.673355964+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/binhex-arch-sabnzbdvpn-latest-icon.png","status":200, "latency":12637836,"latency_human":"12.637836ms","bytes_in":0,"bytes_out":16417}
{"time":"2017-07-05T20:16:10.673424677+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/binhex-arch-rtorrentvpn-latest-icon.png","status":200, "latency":13033491,"latency_human":"13.033491ms","bytes_in":0,"bytes_out":13934}
{"time":"2017-07-05T20:16:10.674996648+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/linuxserver-mariadb-latest-icon.png","status":200, "latency":14091959,"latency_human":"14.091959ms","bytes_in":0,"bytes_out":11277}
{"time":"2017-07-05T20:16:10.675035307+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/tobbenb-makemkv-rdp-latest-icon.png","status":200, "latency":14149037,"latency_human":"14.149037ms","bytes_in":0,"bytes_out":5879}
{"time":"2017-07-05T20:16:10.67529864+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/linuxserver-letsencrypt-latest-icon.png","status":200, "latency":14465996,"latency_human":"14.465996ms","bytes_in":0,"bytes_out":86406}
{"time":"2017-07-05T20:16:10.67683093+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/sparklyballs-krusader-latest-icon.png","status":200, "latency":16047486,"latency_human":"16.047486ms","bytes_in":0,"bytes_out":377341}
{"time":"2017-07-05T20:16:10.678989005+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/linuxserver-nextcloud-latest-icon.png","status":200, "latency":495584,"latency_human":"495.584µs","bytes_in":0,"bytes_out":9156}
{"time":"2017-07-05T20:16:10.679143732+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/jshridha-docker-nzbgetvpn-latest-icon.png","status":200, "latency":608741,"latency_human":"608.741µs","bytes_in":0,"bytes_out":11226}
{"time":"2017-07-05T20:16:10.682106734+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/linuxserver-openvpn-as-latest-icon.png","status":200, "latency":415778,"latency_human":"415.778µs","bytes_in":0,"bytes_out":7081}
{"time":"2017-07-05T20:16:10.682680937+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/state/plugins/dynamix.docker.manager/images/linuxserver-plex-latest-icon.png","status":200, "latency":604821,"latency_human":"604.821µs","bytes_in":0,"bytes_out":20258}
{"time":"2017-07-05T20:16:10.685573645+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/fedora.png","status":200, "latency":265870,"latency_human":"265.87µs","bytes_in":0,"bytes_out":3193}
{"time":"2017-07-05T20:16:10.688488605+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/slackware.png","status":200, "latency":425614,"latency_human":"425.614µs","bytes_in":0,"bytes_out":4430}
{"time":"2017-07-05T20:16:10.689342719+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/ubuntu.png","status":200, "latency":596838,"latency_human":"596.838µs","bytes_in":0,"bytes_out":2080}
{"time":"2017-07-05T20:16:10.689913892+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/lime.png","status":200, "latency":1332189,"latency_human":"1.332189ms","bytes_in":0,"bytes_out":100489}
{"time":"2017-07-05T20:16:10.691864542+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/windows.png","status":200, "latency":3105354,"latency_human":"3.105354ms","bytes_in":0,"bytes_out":1634}
{"time":"2017-07-05T20:16:10.69520972+02:00","id":"","remote_ip":"192.168.0.124","host":"192.168.0.190:2379","method":"GET","uri":"/plugins/dynamix.vm.manager/templates/images/macos-Sierra.png","status":200, "latency":4666478,"latency_human":"4.666478ms","bytes_in":0,"bytes_out":442089}

 

Share this post


Link to post
33 minutes ago, peter_sm said:

Now I can reach this page :-) Dont know why ?

 

Those first 3 handshake errors are strange. Only thing I can think of is you were accessing via http rather than https (maybe in another browser tab?)

 

The good news is that it works :)

Share this post


Link to post

Heads up. I just updated the app on iPhone. Major features work as expected and alignment of tab scrolling is much improved.

However it seems that the logs no longer display. I did a quick check for a plugin update on the server side. It appears I'm on the latest.

Is there any diagnostic info I can send that would be helpful?


Sent from my iPhone using Tapatalk

Share this post


Link to post
43 minutes ago, MacDaddy said:

Heads up. I just updated the app on iPhone. Major features work as expected and alignment of tab scrolling is much improved.

However it seems that the logs no longer display. I did a quick check for a plugin update on the server side. It appears I'm on the latest.

Is there any diagnostic info I can send that would be helpful?


Sent from my iPhone using Tapatalk

Seeing the same issue here.

ControlR plugin vs 2.1.0

unRAID vs 6.3.5

Edited by wgstarks

Share this post


Link to post

MacDaddy/wgstarks, thanks for bringing this up !

 

It's a minor bug in the app itself.

 

I'll publish either an ota or full store release later

Share this post


Link to post

v2.2.0 has been published !

 

2017-08-02 - 2.2.0

- Enable ControlR app to get temperature unit from server's GUI preferences
 

This will become available in an upcoming ControlR app release

Share this post


Link to post

I just updated the app.  I think I remember the "operations" selection being scrollable.  Here's a screenshot capture with the items circled.

 

IMG_3449.JPG

Share this post


Link to post
32 minutes ago, MacDaddy said:

I think I remember the "operations" selection being scrollable

 

No, that section has never been scrollable.

 

But also note that ERRORS text is split in two 'rows'.

 

Is it possible that you increased the text size in the display & brightness settings of your iphone ?

 

If that's the case, you can decrease the text size in the app (to small) so that it 'fits' the screen.

 

Or reset the iphone's text size (restart the app if you do that) and set the app's text size to normal.

Share this post


Link to post

That's probably it. My 57 year old eyes need a little extra size in fonts these days:-)

I'll experiment with another size.


Sent from my iPhone using Tapatalk

Share this post


Link to post

Ok, in any case, I'll check why the operations section doesn't 'wrap' (the way ERRORS did).

Share this post


Link to post

Hey jbrodriguez,

I'm using the latest version of the ControlR app (2.10.2) with the current latest stable unraid (6.3.5) and I was not able to power down unraid using the "Power Off" feature.

Share this post


Link to post

Hi remati,

 

That's strange.

 

I frequently power off 6.3.5 server via the app.

 

The plugin is needed to power it on, but powering it off shouldn't be a problem.

 

Is Power off disabled ?

 

If not, when you press it. does it display the 'Waiting for the operation to complete ' message ?

Share this post


Link to post
3 hours ago, jbrodriguez said:

Hi remati,

 

That's strange.

 

I frequently power off 6.3.5 server via the app.

 

The plugin is needed to power it on, but powering it off shouldn't be a problem.

 

Is Power off disabled ?

 

If not, when you press it. does it display the 'Waiting for the operation to complete ' message ?

 

It's not disabled. I stopped the array, tried to do a Power Off, and the waiting for the operation to complete message stayed on the screen. I had to login to the unraid webui and power it off from there.

Edited by remati

Share this post


Link to post

Oh ok.

 

On 6.3.x, the app's Power Off sends a shutdown command to the server, which internally stops the array first and then powers it down.

 

I didn't test your scenario, where you stopped the array first.

 

I'll look into it.

Share this post


Link to post

v2.3.0 has been released

 

2017-10-04 - 2.3.0

 

- Add support for unRAID 6.4.x (rc9f), using Letsencrypt generated certificate by default (an alternate can be specified in settings)

- Add endpoint for future ControlR app releases
 

If you use unRAID's https, the plugin will now reuse the letsencrypt certificate (instead of generating a self-signed one).

 

This means you will no longer have the ugly warning when accessing the plugin's webpage.

 

If you want to use your own certificates (self-signed or LE generated by yourself), just specify the folder where the cert resides in the plugin settings page.

 

The cert name must be certificate_bundle.pem (the same as unRAID's).

 

This release supports 6.4.0-rc9f (and rc8q most likely), as well as stable (6.3.5).

 

It should work on other unRAID versions, but they're not actively supported.

Share this post


Link to post

Have only just started testing, but looks like powerdown isn't working. I just get this-

 

IMG_1081.thumb.PNG.55ecc504f8bedf54ada0669927c8b203.PNG

 

After about 5 minute wait I connected to the server via browser and realized nothing had happened.

Share this post


Link to post

Reboot also seems to not be working. Have to quit the app on my iPhone or else it just sits with the spinning wheel. Tried deleting the server and re-adding with same results. Diagnostics are attached. If there's a separate log just let me know.

 

As far as I can tell all the other ops are working properly.

 

brunnhilde-diagnostics-20171004-0851.zip

 

 

Edit: @jbrodriguez I know this thread is for the plugin rather than the app. Just want to be sure you're aware that not all issues are fixed with this update.

Edited by wgstarks

Share this post


Link to post

Thanks for the report @wgstarks !

 

Yes, the powerdown/reboot issues are app related, I've fixed them in my dev environment.

 

A new app release should be out soon™ :D

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now