Getting PlexConnect to route through WSJ Video

It used to be that installing PlexConnect as a package on a Synology would let you choose whether to hijack the Trailers app or the WSJ Video app, and then it would just work. Unfortunately, nowadays, choosing WSJ Video doesn’t work; something is clearly wrong in the default settings of the app. Here’s how I went about rectifying that. (The below assumes that you’ve been able to get PlexConnect working before, so it assumes that most of the initial setup, you’re already familiar with.)

Firstly, I generated some SSL certificates, following the advice of this forum post1 and running the following two commands in the Terminal:

openssl req -new -nodes -newkey rsa:2048 -out ~/Desktop/wsj.pem -keyout ~/Desktop/wsj.key -x509 -days 7300 -subj "/C=US/"
openssl x509 -in ~/Desktop/wsj.pem -outform der -out ~/Desktop/wsj.cer && cat ~/Desktop/wsj.key >> ~/Desktop/wsj.pem

Then, I stopped the PlexConnect package from running and SSHed into the DiskStation as root. I copied the Settings file from PlexConnect to the user-facing part of my Synology, by running the following commands:

cp /usr/local/plexconnect/share/PlexConnect/Settings.cfg /volume1/path/to/directory

I put the three files on my Desktop in that same directory, and then edited the Settings.cfg file so the certfile variable was assigned thusly:

certfile = /usr/local/plexconnect/etc/certificates/wsj.pem

Then, I copied the four files to the relevant directories (repeat the last one for the .cer, the .key and .pem files):

cp /volume1/path/to/directory/Settings.cfg /usr/local/plexconnect/share/PlexConnect/
cp /volume1/path/to/directory/PlexConnect/wsj.cer /usr/local/plexconnect/etc/certificates/

Then I started the PlexConnect package again, and everything was working!

  1. For some reason, a similar command given elsewhere gave me errors when I tried to point my Apple TV at it, so I thought it was worth stating explicitly. 

Apple TV, Plex and Netflix from the US

When I moved into my new flat, I got an Apple TV. I love it so much — it connects to the TV in the flat, letting me watch Netflix and YouTube videos, or videos that are in my iTunes library. It also lets me use AirPlay, which is baked into Apple devices; if I’m watching a video on my iPad, I can tap a button and suddenly the video I was watching appears on my television, letting me watch videos either on the sofa or as I wander around doing housework.

This is especially useful for me, because there are a couple of video sources on my iPad that I can’t get on the Apple TV. The first requires some context: I have a Synology NAS1, which is running Plex Media Server2 By running Plex on my Synology, I can watch any of the videos I have downloaded on my iPad (or my Mac, or any other device). But, there isn’t a Plex app for Apple TV, so I have to use the iPad to watch this content and use AirPlay if I want to watch it on my television.

The second video source is Netflix. While the British Netflix is available through the Apple TV, sometimes it’s useful to be able to connect to Netflix in other regions because the video content there is different (the US has many more US sitcoms, for instance; the Dutch site has a lot of blockbusters). I can’t do that through the Apple TV, so I had to connect the iPad to my VPN (Private Internet Access) and then the iPad to watch it.

A photograph of Netflix running on the Apple TV.

It’s a fairly minor inconvenience, but I got more and more annoyed that whenever I wanted to watch videos from Plex or other regions’ Netflix I had to use the iPad. Using my iPad to AirPlay the video to the Apple TV worked fine, but it was annoying if the iPad was running low on battery, or even if I was browsing Reddit and accidentally clicked a link to a video. Heck, even visiting a website with video ads can replace the show you’re watching with something completely different!

Fortunately, however, it’s possible to get your Apple TV to play video from both the sources I list above, and this blog post shows you how to do that. Before we start, I’m assuming that you already have Plex Media Server running on your Synology (and therefore that you have configured your Synology to allow third-party packages). Also, this process caused me a great deal of stress and occasionally went very wrong for me, so make notes of the initial state and don’t blame me for anything that happens as a result of these instructions; you do this at your own risk.

Getting Plex onto the Apple TV

The first step is to visit this very useful post on the Plex forums, which will take you through the process of installing and running PlexConnect on your Synology. It looks scarier than it is, but honestly it’s about five minutes’ work to get everything working. This process neatly addresses the first of my two gripes about the Apple TV, and I can’t imagine I’ll ever miss the WSJ Live app. It’s worth noting that installing PlexConnect will cause your Apple TV to stop receiving updates by default, but this can be changed (I’ll leave how to do so as an exercise for the reader).

Getting US Netflix onto the Apple TV using OpenVPN

Once you’ve got PlexConnect working, if you want to get US Netflix as well, there are a couple of ways to do that. The way I did it was predicated around my choice of VPN, Private Internet Access; they allow connections through OpenVPN but don’t offer what’s called a Smart DNS3, which meant I had to get a little clever. The first thing to do is to visit your Wi-Fi router’s settings and make your Apple TV’s IP address permanent4. Then, on your Apple TV:

  1. Open Settings, then General, then Network, then the name of your network (as before).
  2. Select Configure IP, then select Manual.
  3. Don’t change the first two IP addresses.
  4. Change the IP address for Router and DNS to the IP address of your Synology (the second one should already be set).

Then, on your Synology:

  1. Open Control Panel and head to the Network, before opening the ‘Network Interface’ tab.
  2. Create VPN profile.
  3. Select whichever type of VPN you have. OpenVPN is the best choice if your VPN supports it.
  4. Fill in the details, and make sure you tick the box that allows other devices to use the Synology’s internet connection.
  5. Connect the VPN

Go back to the Apple TV, and open the Netflix app; the content shown should be from the region that you’re VPN’d to. However, there’s an important caveat here: as far as I can tell, PlexConnect doesn’t work when the Synology is connected to a VPN if you’ve followed these instructions. So: disconnect the VPN if you want to watch Plex content, and reconnect it to watch Netflix in other regions.

So, there you have it. You can watch US Netflix content from your sofa using a VPN and PlexConnect. Go forth and binge Parks and Rec!

  1. The DS415+, fact fans! 
  2. A NAS is a box that has some hard drives in it and connects to your router. Once it’s connected, anyone on your network can access the drives, and you can install some simple programs on it that are also accessible to people on your network. One of these programs is Plex, which basically takes video files and organises them for you. But, if you didn’t already know all that, this blog post might not be ideal for you…. 
  3. If you have access to such a thing, then you might be better off following these instructions on the PlexConnect GitHub Wiki; they’re likely to be more useful to you. 
  4. I’m not 100% sure that this step is necessary, but unless you have hella devices on your network, it’s not like it’s going to cause any inconvenience. 

Synology denies Transmission permission

I use Transmission, a popular BitTorrent client developed for OS X and Unix platforms. I also own a Synology DS415+; whilst it’s possible to run Transmission directly on a Synology NAS, I run Transmission on my iMac and set the NAS as the destination folder for my downloads.

The other day, I began to encounter a problem. Whenever I added a new torrent, Transmission would stop downloading at about 1%, with the error Permission Denied (/Synology/Downloads). This was, naturally, quite irritating, so I set out to find out what was happening.

This error is caused by a bug in Yosemite. If you go to the terminal and type

ls /Volumes

you’ll see a list of the names of the volumes connected to your iMac. In my case, something was immediately a little weird; Synology appeared in the list as it should have done, but Synology-1 was also listed. Ejecting the network drive meant that Synology-1 disappeared, but Synology was still listed.

So, the next Terminal command I typed (based on this Ask Different post) was

sudo rmdir /Volumes/Synology

before remounting the Synology from the Finder. This fixed the problem with Transmission and my torrenting can continue in peace. Hooray!

Writing Markdown with Editorial

Since last time I updated, I’ve been playing with a new (to me) iOS app called Editorial. It is, put simply, a Markdown-based text editor which can sync with Dropbox, which is well-designed and very nice to use, and for some, that will be more than enough reason to give it a look.

However, perhaps you’re familiar with Python, or a fan of Automator on OS X, and that is where Editorial becomes even more relevant to your interests. This is because Editorial has support for workflows, which can be written in and run from the app, and these workflows can include scripts in Python. Written by the same developer as Pythonista, Editorial makes it very easy to take your Markdown documents and do cool things with them, either by using workflows with the built-in Automator-style actions or by harnessing the power of Python.

To give you an example of the power of Editorial, let me tell you all what I spent my Tuesday night doing. I found a workflow on the Editorial Workflow Directory that allows the user to post the current document to a WordPress site, and decided to have a go at writing something that would make my life easier. I embarked on a quest to write a similar workflow for posting to LiveJournal.

Now, full disclosure: as part of my day job, I spend a lot of time coding in IDL, but I’ve never really written anything in Python before, and I’ve never used anything that involves XML-RPC before, and I’ve never written any code involving blogging or LiveJournal before. With just a little Googling, a lot of distress at how awful LiveJournal’s documentation is, and some luck, I put together a workflow in Editorial that allows me to easily post to my LiveJournal, and even gives me pop ups showing me my list of tags and a list of moods to pick from. Now, obviously, this might be less useful for some (most) of you than it is for me, but it’s a good example of how easy putting things together in both Editorial and in Python can be!

All in all, I can’t recommend Editorial enough. It feels like the Markdown editor I’ve been waiting for on iOS.

Workflows in Workflow

I have recently been discovering an iOS app called Workflow, which is basically a tool similar to Automator, but available on the iPad. In this blog post I just want to share a couple of workflows that I’ve written for the app, which I’ve been finding useful. (Obviously, your mileage may vary.)

Firstly, a workflow that lets me easily mail links to myself for later. I generally use Instapaper, but sometimes I want to come back to a page on a schedule, rather than just catching up with it when I go through my Instapaper queue. As a result, I wrote a quick workflow that will take the link of the current page, called Email Myself.

Bookmarklet replacements

I’ve been using bookmarklets in Safari to open pages in other apps for ages, but this has the disadvantage that these bookmarklets can only be used from Safari. If I’m reading a webpage in Reeder, for instance, I have to open it in Safari before I can use a bookmarklet to open it in another app. Workflows allow me, in essence, to use a bookmarklet from any app, via the share sheet.

The first workflow that takes advantage of this allows for a Tumblr post to be opened in This is handy if you read Tumblr through an RSS reader like I do, since it allows easier reblogging. Open in is the workflow, and I actually constructed this myself by using Safari on OS X to deconstruct the way in which can call

The next workflows allow for pages to be opened in Tweetbot, my iOS Twitter app of choice. Find User in Tweetbot and Find Tweet in Tweebot are both fairly self-explanatory, and both allow me to avoid using the Twitter website as much as possible.

Finally, a workflow for Basil simply opens the current webpage in Basil. Open in Basil is a very simple workflow and is based upon the bookmarklet that the app itself presents to users.

I hope someone else finds these workflows useful, and I heartily recommend the app!