PlexConnect on aTV2/jailbroken -> launchctl

I like the fact it is cloning Github, makes a lot more sense than a static package.


I am confused as to why a cert is needed, I wonder if this passes some kind of check in the actual PlexConnect code and if so then a dummy file or flag could be used to bypass this need.


Does the ATVFlash fix you refer to also get round the issue of Python getting downgraded when messing around with other jailbreak apps?


.To answer your last question you shouldn’t need to stop plexconnect if its running since the deb will correct the plist and reboot the atv. Just uninstall the old folder and run the plexconnect.deb and it should fix itself upon reboot.

Im looking into making a separate autoupdate.deb or including it in the original plexconnect.deb but I want to test it out and make sure its working before I release it. I’m not sure if I should make it optional or not. So far all the test I ran look good but im looking into a different update scheme that will check for updates instead of unloading the plist doing a git pull then loading it back up to check every time. I want it to check and either say no updates available or if there is a update then unload---->git pull—>then reload the plist.


Nice that the deb will remove anything from previous installs but I was referring to your upgrade instructions (after installing the deb), they refer to just doing a git pull but PlexConnect would be running; surely either PlexConnect plist needs unloading and then reloading or the user is better off just rerunning the deb?

Ya im not sure either why the cert is needed. I tried a lot to do without but couldn’t figure it out. Even though its serving no purpose. Now that all the dependencies are met anything should work assuming that their dependencies are met as well. Python is now properly installed and nothing should uninstall it unless you explicitly tell it to. @computersteve fixed it completely to where it says python is installed on the atv.


For the update portion it does unload then update then reload the plist. I also have a auto update plist also com.plex.plexconnect.auto.plist it checks for updates every six hours.

I am still confused as to updates, are you saying the deb includes auto update functionality by default and if so what triggers an update, a reboot or something (what is the user is using PlexConnect at the time)?

The main reason for confusion though apart from the above is your instructions in post 219, the last couple of lines do not seem to tally with what you are now saying (or I am still tired from flying).

The current plexconnect.deb does not include auto updates only manual updates by doing this after you ssh into the atv:


cd /Applications/Plexconnect

git pull


which is not the best way to update if the user is currently using plexconnect.


Im testing update options at the moment which is the 1st picture. In a future plexconnect.deb or if I create a autoupdate.deb it will have a option to where the user can ssh into the atv and simply type update.bash which will unload the plist, git pull, then reload the plist. Eventually I want to make this automatic by having a plist called com.plex.plexconnect.auto.plist that will check for updates every 6 hours and if a update is available only then it will unload (stop plexconnect), git pull (update), reload (start plexconnect) on its own.

To wahlman.j - great work, as this made my first foray into a jailbroken ATV2 very straight forward, with your instructions and files.

I did have to go through the installation sequence twice to get the icon to show, and need to used the -f addition on the second go through

I do have a problem however.

When I set up a hotspot on my cell phone, and effectively connect the ATV2 thru an external network, PlexConnect works perfectly and I get the PMS server showing up and can watch video

When I try it on my home wifi or home wired, no servers are found - so not working on a home network

pfSense is my firewall, but this shouldnt make any difference, I would have thought - usually all internal traffic flows without a problem

I have set the DNS to automatic in both of these examples.

I also tried setting the DNS to the home PMS server later on, but no go

Any ideas

Thanks

Jeff

I’m not exactly sure why it wouldn’t work in your home network. So far everyone I have spoke to besides you had been able to get it to work in their home network. I know it won’t pull in content until you sign into myplex using the button if you are home or somewhere else. I would assume it’s a issue with your myplex pms settings maybe not being correct but I don’t know your exact setup. The way it’s setup you need to forward port 32400 on your router and point it at your pms server to get this to work. You should leave everything as default after you restore to 5.3 and follow the instructions to install.

ok, thanks for quick reply

Will work with this more - I have access to another JB ATV2, which I will try this on, as well as checking steeings

Can I confirm a couple of things:

Dropbox files provided - I dont need to use or copy over com.plex.plexconnect.auto.plist, Info.plist, nitoinstaller_0.1-146.deb or update.bash?

(Assuming I get PlexConnect fully working) If I install the current version of SeasonPass, it wont mess up things like Python?  i wont use any SeasonPass Plex plugin

If I direct install XBMC via SSH without SeasonPass. again no new problems with PlexConnect

Regards

Jeff

No for either plist, nito installer or update.bash.


Info.plist is for spoofing you ios to 6.1

Auto.plist and update.bash is for auto updates I’m still testing them.

Nito installer is for jailbroken ios devices to install nito TV etc. you can get it on cydia, I just wanted a backup if they ever removed it.

The current plexconnect.deb does not include auto updates only manual updates by doing this after you ssh into the atv:

cd /Applications/Plexconnect
git pull

which is not the best way to update if the user is currently using plexconnect.

Im testing update options at the moment which is the 1st picture. In a future plexconnect.deb or if I create a autoupdate.deb it will have a option to where the user can ssh into the atv and simply type update.bash which will unload the plist, git pull, then reload the plist. Eventually I want to make this automatic by having a plist called com.plex.plexconnect.auto.plist that will check for updates every 6 hours and if a update is available only then it will unload (stop plexconnect), git pull (update), reload (start plexconnect) on its own.



Ok that makes a lot more sense now, although you may want to update post 219 to reflect this and reduce confusion.
Auto updating, rather than via a script is a bit of a minefield but it will eventually come into the main code anyway so maybe the SSH in and run update.bash is the best way to go for now.

Fixed post #219

I have also included a easy spoof.deb in my dropbox to get all newer apps automatically. Im working on a autoupdate.deb so it will either update on its own or you can manually update by just typing this anywhere in terminal instead of doing post 219 to make it easier to update (nitoTV is the easiest way to install openssh for ssh access):

ssh root@ATVIP
## alpine
update.bash

Hopefully the plist will update automatically once implemented. I need to test still to see if it is or not but for the meantime you should be able to do use the instructions above to update manually once I release the autoupdate.deb for the time being.

edit - autoupdate.deb has been uploaded to my github.

I finally found the correct sqlite3.deb's they are now in my github  :D :D

---------------------------------------------------------------------------------------------------------------------------------------------

I hope this is the last tutorial I need to give on how to install this on iOS 5.x:

Follow these easy terminal commands. I have installed this on multiple atv2's and so have others, set your dns to auto not manual. This automates nearly the entire aTV plexconnect installation for you. ssh into your Atv and enter these commands after your navigated to the folder where you placed them (nitoTV is the easiest way to install openssh for ssh access):

rm -f ~/.ssh/known_hosts
echo "deb http://apt.awkwardtv.org ./" > /etc/apt/sources.list.d/awkwardtv.list
apt-get update
apt-get upgrade
apt-get install git

apt-get -f install

apt-get install git

cd /Applications

git clone git://github.com/wahlmanj/atvjailbreak.git

cd /Applications/atvjailbreak

dpkg -i sqlite3-lib_3.5.9-2_iphoneos-arm.deb

dpkg -i sqlite3_3.5.9-12_iphoneos-arm.deb
dpkg -i python_2.7.3-3_iphoneos-arm.deb

apt-get -f install

dpkg -i sqlite3-lib_3.5.9-2_iphoneos-arm.deb

dpkg -i sqlite3_3.5.9-12_iphoneos-arm.deb

dpkg -i python_2.7.3-3_iphoneos-arm.deb

dpkg -i autoupdate.deb
dpkg -i plexconnect.deb
##once complete the aTV will reboot and you will have a new plexconnect button. Just sign into myplex and you should be all set.

##Optional log back in to your atv via ssh after your atv reboots and type this if you want more apps by spoofing your iOS version to a higher IOS after navigating to the spoof.deb location:

dpkg -i spoof.deb

Hopefuly the autoupdate plist works if not you can manually update by typing this into a terminal window after you ssh into your atv:

update.bash

You must be successfully signed into myplex in PMS. Also you must have your port forwarded and pointed at your PlexConnect host for this to work right on your router tcp/udp. If PlexConnect resides behind for example a synology box you must open these ports as well for it to work outside your lan tcp/udp.

If you do not require it to work outside you lan edit your settings.cfg file on the aTV to enable_plexgdm = True

Regarding #226, I did have to change the settings.cfg to get it to work to see local servers

Fixed by changing to: enable_plexgdm = True

Not sure why this was necessary, as the ATV2 could see the server PC on HOme sharing, and when I logged into the PLex web site, every time I connected with Plexconnect, I was recorded as having connected, but still no libraries visible until I made the change above

Thanks for all the guidance here

Jeff

Beats me I have all mine set to false besides prevent atv update in settings.cfg. Maybe something is weird with your network. That doesn't seem normal to need to do that unless something is not right on your network. You need to sign into myplex even if at home using the PlexConnect button (app). Are you signed into myplex on your pms host on port 32400. Is port 32400 forwarded on your router?

There may well be a problem within my home network, but I wouldnt have the ability to sort it out

From the pfSense router box, there are connections to a central switch (all home traffic goes thru this - apart from local subsidiary switch traffic), from there a number of network cables to subsidiary 4-8 port switches, with short cables from there to the various devices (PC`s, ATV2, receiver etc)

So the ATV is three unmanaged switches from the PMS`s, as the PMS servers are in the basement, everyhing else on other floors

To complicate things, externally there is a dual WAN and a permanent VPN connction also

The port forwarding 32400 is done correctly, I believe, as I can access the PMS servers from anywhere e.g. on iPad externally - each PMS is on a separate WAN, but both on same LAN subnet

I have had some problems with Mac`s finding the Windows shares, and never really figured out why, although got it going eventually

To answer your questions

When I am signed in to myPlex and enable_plexgdm = True, I can see the two PMS servers, both thru a LAN connection, and from outside (WAN)

When I am signed in to myPlex and enable_plexgdm = False, I can see the two PMS servers from outside (WAN) but nothing on LAN

When I am signed out of myPlex and enable_plexgdm = False, I can see no servers, either LAN or WAN

When I am signed out of myPlex and enable_plexgdm = True, I can see the two PMS servers, from the LAN connection, but nothing on WAN

Since it seems clear that the vast majority of users, if not virtually all, can set it up with enable_plexgdm = False, then it probably is something specific to my set up - maybe a problem in one of th s witches?

Again thanks for the help here

Jeff

If you have two PMS devices on your LAN you need to use GDM to see them both locally (possibly also to stop PlexConnect getting confused or only seeing one as well); PlexConnect only allows you to specify one local PMS if you disable GDM and want to specify a PMS manually instead.

Having a VPN connection can often confuse GDM but if it doesn’t for you then I would definitely leave GDM on, especially as this is the default behaviour anyway and most users should not need to manually specify their local PMS.

You definitely have an outlier setup there but hopefully that explains the behaviour you are seeing :wink:

I followed wahlman.j tutorial and installed everything, but I had problem with Plex media server: 0 in settings.

Solved by editing /Applications/Plexconnect settings.cfg with my LAN ip. So I guess that now my Apple TV is not portable anymore, am I correct.

And I also guess that I could use a dyndns redirect to redirect traffic to internal ip or external whenever I need it, correct?

You need to sign Into myplex if you are home or abroad using the .debs I created and modified off of baa’s original method.

You need to sign Into myplex if you are home or abroad using the .debs I created and modified off of baa's original method.

I have logged in but still Plex Media Servers shows 0.

I have solved only by editing settings.cfg with my local IP adrress. And I have also already verified that my Plex server can be reached from outside my LAN.

So you are good to go then?

So you are good to go then?

Yes I am, but as I mentioned I guess that with those settings my AppleTV is not portable unless I use a dyndns solution. Just in case you would like to add something like that to your tutorial.

I have installed this on over 10 devices and all of them are portable so have numerous other users not anywhere near where i live. I would restore to ios 5.3 and redo the steps. You shouldn’t need to edit settings.cfg whatsoever. The only thing I have ever seen someone needing is plexgdm=true nothing else should need to be changed at all in settings.cfg.