Difference between revisions of "Schedules Direct URL Change"

From MythTV Official Wiki
Jump to: navigation, search
m (Llib moved page Schedules Direct Replacement Service to Schedules Direct URL Change: Less drastic name)
(Updates)
Line 1: Line 1:
 
As some have heard, on November 1st, 2014, the existing SD service is changing. This article is intended to be a short discussion of options for MythTV users.
 
As some have heard, on November 1st, 2014, the existing SD service is changing. 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) hostname
+
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 hostname (which
+
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 out of service.
+
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. ''mythfilldatabase'' users will go the new site without taking any action.
 +
As stated above, this change is likely to go away after 11/1/2014.'''
  
 
Because of this, users of older versions of MythTV will need to choose one of four options in order to continue retrieving SD data:
 
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 to {{CurrentRelease}}
+
* Upgrade to 0.27.4 or above
  
 
* 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
 
* 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
Line 15: Line 18:
 
* Modify your MythTV sources to use a different DNS name for the Schedules Direct data source.
 
* Modify your MythTV sources to use a different DNS name for the Schedules Direct data source.
  
The last three solutions are discussed below. Those running versions below {{CurrentRelease}} interested in testing the new server can use any of
+
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.
 
these right now. The more testers, the less the chance of a surprise on 11/1/2014.
  
 
== What '''must''' users do prior to November 1st, 2014? ==
 
== What '''must''' users do prior to November 1st, 2014? ==
  
0.27 and 0.28-pre users should keep their systems
+
0.27 and 0.28-pre users should keep their systems up to date.
up to date with current fixes.
 
  
 
<br>
 
<br>
Line 81: Line 83:
  
 
Is the ''/etc/hosts'' entry a proper solution? No, because IP addresses can change.
 
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 {{CurrentRelease}}.
+
It's not a bad solution, but it's certainly not as good as running on 0.27.4
 +
or above.
  
{{Note box|The IP address has already changed twice during beta testing.}}
 
<br>
 
 
== The nameserver/Response Policy Zones (RPZ) solution ==
 
== The nameserver/Response Policy Zones (RPZ) solution ==
  
Line 141: Line 142:
 
<br>
 
<br>
  
== Solution for users that build from source ==
+
== The build from source solution ==
  
Locate the line to change with the following command and
+
Apply the following patch:
replace the hostname with the new one above. Be prepared to
 
remove the change when the official commit is pushed.
 
 
 
<pre>
 
git grep webservices.schedulesdirect.tmsdatadirect.com
 
</pre>
 
  
The actual patch looks like this, and substitutes the new URL for the old one. Note the '-' and '+' markers:
 
 
<pre>
 
<pre>
 
--- libs/libmythtv/datadirect.cpp    2014-10-12 10:54:02.000000000 -0400
 
--- libs/libmythtv/datadirect.cpp    2014-10-12 10:54:02.000000000 -0400
Line 170: Line 164:
 
Yes.
 
Yes.
  
The [http://forums.schedulesdirect.org/viewtopic.php?f=3&t=2578 announcement] from SD.
+
The SD [http://forums.schedulesdirect.org/viewtopic.php?f=8&t=2599 Going Live] announcement
 +
(which has a list of open issues.)
  
List of [http://forums.schedulesdirect.org/viewtopic.php?f=8&t=2591 open issues], also from SD.
+
The [http://forums.schedulesdirect.org/viewtopic.php?f=3&t=2578 original announcement] from SD.
  
 
The mythtv-users mailing list under the thread: ''Schedules Direct DataDirect replacement service testing''.
 
The mythtv-users mailing list under the thread: ''Schedules Direct DataDirect replacement service testing''.

Revision as of 17:42, 19 October 2014

As some have heard, on November 1st, 2014, the existing SD service is changing. 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. mythfilldatabase users will go the new site without taking any action. As stated above, this change is likely to go away after 11/1/2014.

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 to 0.27.4 or above
  • 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 sources to use a different 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.

What must users do prior to November 1st, 2014?

0.27 and 0.28-pre users should keep their systems up to date.


MythTV Releases
Version Commit Release Date
0.27 d78206e October 15, 2014
0.28-pre 4cb10e5 October 13, 2014


Distribution Releases
Distribution Version Release Date Comment
Mythbuntu 0.27 October 15, 2015 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 must be done on November 1st.

If the above was followed, nothing.

Users running 0.26 and below should 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.png Warning: The following 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

Distributions and personal choices will likely change the names of the files in the following examples. Adjust as required.

Finally, 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";
};


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");

Are there any other sources of information about the change?

Yes.

The SD Going Live announcement (which has a list of open issues.)

The original announcement from SD.

The mythtv-users mailing list under the thread: Schedules Direct DataDirect replacement service testing. Or, it's archive). Please don't start new testing threads. If you make a report on the testing thread, please mention which version of MythTV you're running (if you run mythfilldatabase by hand, it will tell you, right at the beginning of its logs).

Discussions on the developer's channel.

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