Schedules Direct URL Change
On November 1st, 2014, the existing SD service is changing the address of the server from which it provides guide data. This article is intended to be a short discussion of options for MythTV users.
Ideally, there would be a DNS change and the IP address for the existing (hard coded) URL would be pointed to a new IP address and no action would be required by MythTV SD users. However, the owner of that domain name (which is not SD) could 'retire' that DNS record at any time leaving MythTV SD users without listings.
There is a temporary DNS change in place now. All queries to webservices.schedulesdirect.tmsdatadirect.com now go to dd.schedulesdirect.org. The webservices.schedulesdirect.tmsdatadirect.com registration expiration date is 2016-09-09 .
Because of this, users of older versions of MythTV will need to choose one of four options in order to continue retrieving SD data:
- Upgrade/update to the current stable release of 0.27.4 (preferred), or alternatively the unsupported 0.26.2* (*packages may not be available)
- Add a line to your hosts file, which overrides the IP address returned by DNS for the name "baked" into the copy of MythTV you're running
- Run a nameserver and use RPZ
- Modify your MythTV source to use the new DNS name for the Schedules Direct data source.
The last three solutions are discussed below. Those running versions below 0.27.4 interested in testing the new server can use any of these right now. The more testers, the less the chance of a surprise on 11/1/2014.
Contents
What users should do now
0.26, 0.27 and 0.28-pre (prelease) users should keep their systems up to date. 0.26 is no longer supported, updated packages may not be available for many distributions, and it is recommended for a number of reasons that users run the latest stable release which is 0.27.4.
Version | Commit | Release Date |
---|---|---|
0.26.2 | 4cb10e5 | October 20, 2014 |
0.27.4 | d78206e | October 15, 2014 |
0.28-pre | 4cb10e5 | October 13, 2014 |
Distribution | Version | Release Date | Comment |
---|---|---|---|
Mythbuntu | 0.26.2 | October 22, 2014 | Fixed in version 2:0.26.2+fixes.20141022.4c4bb29-0ubuntu0mythbuntu1 See Mythbuntu website for more info |
Mythbuntu | 0.27.4 | October 15, 2014 | Fixed in version 2:0.27.4+fixes.20141015.e4f65c8-0ubuntu0mythbuntu# See Mythbuntu website for more info |
Mythbuntu | 0.28-pre | October 13, 2014 | Fixed in version 2:0.28.0~master.20141013.4cb10e5-0ubuntu0mythbuntu# See Mythbuntu website for more info |
What to do if an upgrade/update isn't done
Choose a solution from the next three sections.
The /etc/hosts file solution
Perhaps the simplest is to make the following entry in the backend's /etc/hosts file:
54.85.117.227 webservices.schedulesdirect.tmsdatadirect.com
Is the /etc/hosts entry a proper solution? No, because IP addresses can change. It's not a bad solution, but it's certainly not as good as running on 0.27.4 or above.
The nameserver/Response Policy Zones (RPZ) solution
If the following is used, be sure to remove the /etc/hosts entry.
Warning: This section is of no value without bind version 9.8.1 or greater installed, running and acting as the backend's nameserver. Verify the version before going further.
Also know that this is not intended to be a bind Configuration Reference
The following was written as if the backend is running a nameserver only for itself (the appliance model.)
If a local nameserver is already utilizing RPZ, then it is only necessary to add the last line in the following box to an existing zone file.
Otherwise, add a file named: /etc/bind/db.rpz.localhost* with the following:
$TTL 1h $ORIGIN rpz.localhost. @ IN SOA LOCALHOST. localhost. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS LOCALHOST. webservices.schedulesdirect.tmsdatadirect.com CNAME dd.schedulesdirect.org.
In the file: /etc/bind/named.conf*, add the following inside the options{} statement:
response-policy {zone "rpz.localhost";};
In the same file*, add:
zone "rpz.localhost" { type master; file "/etc/bind/db.rpz.localhost"; };
*Distributions and personal choices will likely change the names of the files in the above examples. Adjust as required.
The build from source solution
Apply the following patch:
--- libs/libmythtv/datadirect.cpp 2014-10-12 10:54:02.000000000 -0400 +++ libs/libmythtv/datadirect.cpp 2014-10-12 10:54:44.000000000 -0400 @@ -555,7 +555,7 @@ "/ztvws/ztvws_login/1,1059,TMS01-1,00.html"); DataDirectURLs urls1( "Schedules Direct", - "http://webservices.schedulesdirect.tmsdatadirect.com" + "http://dd.schedulesdirect.org" "/schedulesdirect/tvlistings/xtvdService", "http://schedulesdirect.org", "/login/index.php");
Other sources of information about the change
The New SD-DD Service announcement (which has a list of open issues.)
The original announcement from SD.
Expiration date
Cast of characters (both of them.)
Abbreviated Name | URL | Description |
---|---|---|
TMS-DD | docs.tms.tribune.com webservices.schedulesdirect.tmsdatadirect.com | Tribune hosted Datadirect Server (going away) |
SD-DD | dd.schedulesdirect.org | SD hosted DataDirect Server |