What's required on the server side other than install CATT? Does some type of telnet receiver need to be running on your RPi? I get connection refused when trying to use this driver. Normally you connect to an RPi using SSH which is port 22, not telnet which is port 23. I wasn't able to get this to work even though I use CATT through a different method, so I know CATT isn't the problem.
Will the telnet connection be persistent?
Also, the audio volume capability is not currently implemented in Rule Machine. There's a known issue with it in the current implementation so you have to send those commands via a custom action instead of the rule machine command for Volume Up and Volume down in the "Control Audio device" section. The commands in the driver still work, just have to use custom action or they won't work.
This was just to note so folks don't spend hours trying to figure out why it won't work issuing a volumeUp command from Rule Machine, expecting it to work, like I did when working on the Cast-Web-API drivers.
So, if you want to include those, that's all you need. I got mine working now! I was using another method via an HTTP endpoint. I'll have to compare and see which is faster. Thanks!
I tried to use an http Post but I couldn't figure it out. So I tried the telnet and it worked right away. I would think the http would use less resources since it doesn't stay open but I don't know. If we could get asynchttp that would be awesome.
I got just about all of the commands working now. Should have a new version out later today.
I was using a system call OmniThing. It was developed by the son of the guy who developed Hubduino (ST_Anything). It supports RPi and can issue bash commands directly from the device's configuration. So, I created a switch and then on issued one command and off issued the stop. But then I would have to have one switch per dashboard, although I only have one tablet dashboard as it is. What i am really using this for is to cast my non-Google supported cameras to my Home Hub on certain actions. So, all my IP cameras have an HTTP stream that I can cast directly to my Home Hub using CATT.
@Ryan780, let me know how well this pans out. I plan to play with this soon but haven't had enough time as experiment with anything new recently. Hopefully by the time I'm ready, there'll be a docker container...and off we go
@bptworld What system did you use for this? I tried on a MacBook Pro tgatvis running High Sierra, but I often run into issue with getting updated versions of python working on a Mac, and did this time as well. I only have RPi Zero W right now, which Iām assuming would be too underpowered for this. I have some spare PCs and spare old MacBook that I could load up with a flavor of Linux if that might do the trick. Any suggestions?
suggestion on the telnet connection. instead of keeping a telnet connection open, which could be disconnected if idle depending on the pi config. how about setting it up to connect to a port you could still use telnet on the hubitat. it would take a little bit of config on the pi to tell init.d to fireup CATT and take the input.
personally I think having a telnet server running is a security issue.. :>
and Thank you for putting this together. definitely makes my hub useful compared to using the google interface to IOT..
The driver should automatically reconnect is the connection is dropped. As for the config of the pi (init.d). If it's not complicated, sure. I'd love to see how this is done. But remember, any 'extra' work and people just won't do it. Simple is always best.
If it's good enough to use with Lutron... then it's good enough for me. I now have 3 sessions open... Lutron, Send IP2IR and CATT. I guess I'm not a member of the tinfoil hat club! lol.
It's been years, and I'm having trouble remembering how to do it.
I guess my job is showing. note to self, must remember to take tinfoil hat off in public. telnet and r.services rsh rcp etc should never be used. so insecure. :>
OmniThing is the perfect thing to pair this with. It creates new child devices automatically. The OmniThing software or Catt don't have to be modified at all. You can issue "stop" command using the native integration or GAR or Cast web, which is much faster, and the connection is via HTTP calls. All around a very clean implementation. If theres interest I can document the steps I took sometime this weekend.