Discussion:
Problem with 3.06 PVR
John Reay
2017-11-01 00:57:06 UTC
Permalink
Can anyone help with this error I'm getting running the web PVR. I
just did a manual upgrade to IP version 3.06 on Linux Mint 17.3.

Running PVR Searches:

INFO: PVR Run: '_Ambulance_Series_2_name_tv'


INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.

Running IP from tty using --pid seems to work though
John Reay
2017-11-01 01:26:28 UTC
Permalink
Further to my previous post...

From the cache refresh

INFO: Indexing tv programmes (concurrent)
...............
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcalba/programmes/schedules/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/channel_islands/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcfour/programmes/schedules/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcnews/programmes/schedules/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/cambridge/this_week
...........
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/east/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/hd/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/east_midlands/this_week
.
WARNING: Failed to download schedule page:
http://www.bbc.co.uk/bbcone/programmes/schedules/london/this_week

etc., ad infinitum...
Post by John Reay
Can anyone help with this error I'm getting running the web PVR. I
just did a manual upgrade to IP version 3.06 on Linux Mint 17.3.
INFO: PVR Run: '_Ambulance_Series_2_name_tv'
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Running IP from tty using --pid seems to work though
John Reay
2017-11-07 08:15:06 UTC
Permalink
I've discovered that if I update the cache from a terminal window
using 'sudo get_iplayer --refresh' instead of just 'get_player
--refresh' everything works fine.
So it's a permissions issue, for some reason. get_player 3.06 running
on Linux Mint 17.3 "Rosa".

...John Reay
Post by John Reay
Further to my previous post...
From the cache refresh
INFO: Indexing tv programmes (concurrent)
...............
http://www.bbc.co.uk/bbcalba/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/channel_islands/this_week
.
http://www.bbc.co.uk/bbcfour/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcnews/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/cambridge/this_week
...........
http://www.bbc.co.uk/bbcone/programmes/schedules/east/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/hd/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/east_midlands/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/london/this_week
etc., ad infinitum...
Post by John Reay
Can anyone help with this error I'm getting running the web PVR. I
just did a manual upgrade to IP version 3.06 on Linux Mint 17.3.
INFO: PVR Run: '_Ambulance_Series_2_name_tv'
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Running IP from tty using --pid seems to work though
artisticforge .
2017-11-07 08:33:06 UTC
Permalink
hello

you should not have to run get_iplayer any version as 'root'.
you have an installation issue or issues.

i used debian / raspbian on Raspberry Pi.

all get_iplayer versions are installed:

/home/<uid>/get_iplayer-X.XX

Everything in that directory is owned by that UID.

I have never had to run get_iplayer as root.
Post by John Reay
I've discovered that if I update the cache from a terminal window
using 'sudo get_iplayer --refresh' instead of just 'get_player
--refresh' everything works fine.
So it's a permissions issue, for some reason. get_player 3.06 running
on Linux Mint 17.3 "Rosa".
...John Reay
Post by John Reay
Further to my previous post...
From the cache refresh
INFO: Indexing tv programmes (concurrent)
...............
http://www.bbc.co.uk/bbcalba/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/channel_islands/this_week
.
http://www.bbc.co.uk/bbcfour/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcnews/programmes/schedules/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/cambridge/this_week
...........
http://www.bbc.co.uk/bbcone/programmes/schedules/east/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/hd/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/east_midlands/this_week
.
http://www.bbc.co.uk/bbcone/programmes/schedules/london/this_week
etc., ad infinitum...
Post by John Reay
Can anyone help with this error I'm getting running the web PVR. I
just did a manual upgrade to IP version 3.06 on Linux Mint 17.3.
INFO: PVR Run: '_Ambulance_Series_2_name_tv'
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188)
does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642.
Running IP from tty using --pid seems to work though
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
--
terry l. ridder ><>
Ralph Corderoy
2017-11-07 12:12:18 UTC
Permalink
Hi John,
Post by John Reay
I've discovered that if I update the cache from a terminal window
using 'sudo get_iplayer --refresh' instead of just 'get_player
--refresh' everything works fine.
So it's a permissions issue, for some reason. get_player 3.06 running
on Linux Mint 17.3 "Rosa".
It might not be a permissions problem, and you should not have to run as
root with sudo. Not unless you've messed things up in the past by
dabbling somehow with root. Based on your previous error report that
you quoted,
Post by John Reay
Post by John Reay
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
have you tried `get_iplayer --refresh --no-index-concurrent'?
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
Ralph Corderoy
2017-11-07 12:21:12 UTC
Permalink
Hi again John,
Post by Ralph Corderoy
Post by John Reay
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
have you tried `get_iplayer --refresh --no-index-concurrent'?
I forgot to mention, Homebrew users on Mac OS suffered these until the
recipe was updated to depend on later versions of Perl modules.
https://github.com/Homebrew/homebrew-core/issues/19956
By using --no-index-concurrent, I think Mojo stops being used and thus
the Perl-module versions won't matter, hopefully.

I use --no-index-concurrent anyway because I don't want to install the
extra Mojo dependencies.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
John Reay
2017-11-07 16:09:43 UTC
Permalink
`get_iplayer --refresh --no-index-concurrent' works for me without
resorting to sudo.

..but how do I get the PVR to use it? Or should I just set it in
preferences for get_iplayer?
Post by Ralph Corderoy
Hi again John,
Post by Ralph Corderoy
Post by John Reay
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
have you tried `get_iplayer --refresh --no-index-concurrent'?
I forgot to mention, Homebrew users on Mac OS suffered these until the
recipe was updated to depend on later versions of Perl modules.
https://github.com/Homebrew/homebrew-core/issues/19956
By using --no-index-concurrent, I think Mojo stops being used and thus
the Perl-module versions won't matter, hopefully.
I use --no-index-concurrent anyway because I don't want to install the
extra Mojo dependencies.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
John Reay
2017-11-07 20:38:59 UTC
Permalink
Seems to have fixed my problem by doing this:

cpanm IO::Socket::SSL

Now everything seems to work. Thanks to all who replied!
Post by John Reay
`get_iplayer --refresh --no-index-concurrent' works for me without
resorting to sudo.
..but how do I get the PVR to use it? Or should I just set it in
preferences for get_iplayer?
Post by Ralph Corderoy
Hi again John,
Post by Ralph Corderoy
Post by John Reay
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
have you tried `get_iplayer --refresh --no-index-concurrent'?
I forgot to mention, Homebrew users on Mac OS suffered these until the
recipe was updated to depend on later versions of Perl modules.
https://github.com/Homebrew/homebrew-core/issues/19956
By using --no-index-concurrent, I think Mojo stops being used and thus
the Perl-module versions won't matter, hopefully.
I use --no-index-concurrent anyway because I don't want to install the
extra Mojo dependencies.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
Jon Crookston
2017-11-08 22:46:22 UTC
Permalink
Frustratingly, while John and I shared similar symptoms, I don't think we had the same problem. I've just installed IO::Socket::SSL but to no avail, and tried --no-index-concurrent.


I'm struggling to know where to look next - there isn't any real clue in the program output - is there a way to find out *why* it fails "to download programme schedule http://www.bbc.co.uk/6music/programmes/schedules/last_week" etc.? I'm not really very familiar with the use of 'proper' software tools for debugging etc., but if I had anything to go on I might try to do a bit more digging.

The output with --debug (below) doesn't seem to tell me much more, does anyone have any other suggestions? The timestamp on the cache files suggest that the last successful refresh was performed at around 9pm on 29th Oct. As far as I can recall, there were no changes to the setup here which might have brought this on. It's not impossible that I updated some software such as my browser, but nothing which I would expect to be directly relevant.

Thanks,
Jon.


$ gip --refresh --type=radio --no-index-concurrent --debug
DEBUG: Parsing options from /home/user/.get_iplayer/options:
DEBUG: Loaded option nocopyright (nocopyright) = 1
DEBUG: Loaded option refreshexclude (refreshexclude) = Radio 5 live,BBC Radio 5 live sports extra,BBC Asian Network,BBC Parliament,BBC News
DEBUG: Loaded option refreshexcludegroupsradio (refreshexcludegroupsradio) = regional,local
DEBUG: Loaded option output (output) = /home/user/media/
DEBUG: Loaded option nopurge (nopurge) = 1
DEBUG: Loaded option refreshinclude (refreshinclude) = s4c
DEBUG: Loaded option refreshexcludegroupstv (refreshexcludegroupstv) = regional,local
DEBUG: Loaded option ffmpeg (ffmpeg) = /usr/local/bin/ffmpeg.exe
DEBUG: Loaded option tvmode (tvmode) = good
DEBUG: Parsing options from .get_iplayer/options:
DEBUG: Loaded option nocopyright (nocopyright) = 1
DEBUG: Loaded option refreshexclude (refreshexclude) = Radio 5 live,BBC Radio 5 live sports extra,BBC Asian Network,BBC Parliament,BBC News
DEBUG: Loaded option refreshexcludegroupsradio (refreshexcludegroupsradio) = regional,local
DEBUG: Loaded option output (output) = /home/user/media/
DEBUG: Loaded option nopurge (nopurge) = 1
DEBUG: Loaded option refreshinclude (refreshinclude) = s4c
DEBUG: Loaded option refreshexcludegroupstv (refreshexcludegroupstv) = regional,local
DEBUG: Loaded option ffmpeg (ffmpeg) = /usr/local/bin/ffmpeg.exe
DEBUG: Loaded option tvmode (tvmode) = good
INFO: encodinglocale = UTF-8
INFO: encodinglocalefs = UTF-8
INFO: encodingconsoleout = UTF-8
INFO: encodingconsolein = UTF-8
INFO: ${^UNICODE} = 0
INFO: Profile dir: /home/user/.get_iplayer
INFO: User options file: /home/user/.get_iplayer/options
INFO: System options file: /etc/get_iplayer/options
Current options:
debug = 1
encodingconsolein = UTF-8
encodingconsoleout = UTF-8
encodinglocale = UTF-8
encodinglocalefs = UTF-8
ffmpeg = /usr/local/bin/ffmpeg.exe
nocopyright = 1
noindexconcurrent = 1
nopurge = 1
output = /home/user/media/
refresh = 1
refreshexclude = Radio 5 live,BBC Radio 5 live sports extra,BBC Asian Network,BBC Parliament,BBC News
refreshexcludegroupsradio = regional,local
refreshexcludegroupstv = regional,local
refreshinclude = s4c
tvmode = good
type = radio
verbose = 1

INFO: Search args: '.*'
DEBUG: arg '.*' is not a programme index number - load specified caches
INFO: Cache format from existing radio cache file: index,type,name,pid,available,expires,episode,seriesnum,episodenum,versions,duration,desc,channel,categories,thumbnail,timeadded,guidance,web
INFO: Got 4336 file cache entries for radio
INFO: Will refresh channel BBC Radio 1
INFO: Will refresh channel BBC Radio 1Xtra
INFO: Will refresh channel BBC Radio 2
INFO: Will refresh channel BBC Radio 3
INFO: Will refresh channel BBC Radio 4
INFO: Will refresh channel BBC Radio 4
INFO: Will refresh channel BBC Radio 4 Extra
INFO: Will refresh channel BBC Radio 6 Music
INFO: Will refresh channel BBC World Service
DEBUG: Using desktop user-agent string: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0'
DEBUG: Using NoCookies user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0'

INFO: Indexing radio programmes (sequential)
DEBUG: Getting feed http://www.bbc.co.uk/1xtra/programmes/schedules/last_week
INFO: Getting URL: http://www.bbc.co.uk/1xtra/programmes/schedules/last_week

WARNING: Failed to download programme schedule http://www.bbc.co.uk/1xtra/programmes/schedules/last_week
DEBUG: Getting feed http://www.bbc.co.uk/1xtra/programmes/schedules/this_week
INFO: Getting URL: http://www.bbc.co.uk/1xtra/programmes/schedules/this_week

WARNING: Failed to download programme schedule http://www.bbc.co.uk/1xtra/programmes/schedules/this_week




________________________________
From: John Reay <***@gmail.com>
To: ***@lists.infradead.org
Sent: Tuesday, 7 November 2017, 20:39
Subject: Re: Problem with 3.06 PVR



Seems to have fixed my problem by doing this:

cpanm IO::Socket::SSL

Now everything seems to work. Thanks to all who replied!
Post by John Reay
`get_iplayer --refresh --no-index-concurrent' works for me without
resorting to sudo.
..but how do I get the PVR to use it? Or should I just set it in
preferences for get_iplayer?
Post by Ralph Corderoy
Hi again John,
Post by Ralph Corderoy
Post by John Reay
INFO: Indexing tv programmes (concurrent)
.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file
SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm
line 1642.
have you tried `get_iplayer --refresh --no-index-concurrent'?
I forgot to mention, Homebrew users on Mac OS suffered these until the
recipe was updated to depend on later versions of Perl modules.
https://github.com/Homebrew/homebrew-core/issues/19956
By using --no-index-concurrent, I think Mojo stops being used and thus
the Perl-module versions won't matter, hopefully.
I use --no-index-concurrent anyway because I don't want to install the
extra Mojo dependencies.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
RS
2017-11-09 14:19:24 UTC
Permalink
From: Jon Crookston
Sent: Wednesday, November 8, 2017 10:46 PM
Post by Jon Crookston
Frustratingly, while John and I shared similar symptoms, I don't think we
had the same problem. I've just installed IO::Socket::SSL but to no avail,
and tried --no-index-concurrent.
I'm struggling to know where to look next - there isn't any real clue in
the program output - is there a way to find out *why* it fails "to download
programme schedule
Post by Jon Crookston
http://www.bbc.co.uk/6music/programmes/schedules/last_week" etc.? I'm not
really very familiar with the use of 'proper' software tools for debugging
etc., but if I had anything to go >on I might try to do a bit more digging.
I have not yet used Linux to run get_iplayer so I cannot help with Linux
dependencies.

Debugging is not a matter of 'proper' software tools; it is a matter of
approach. You should aim to keep everything as simple as possible and test
one thing at a time.

What happens when you click the link in your paragraph above? Does your
browser display a page with a blue-green background with a heading
"Schedule
30 October - 5 November 2017"?
If it doesn't, you need to find out why. There is no point in considering
why get_iplayer cannot analyse the page if your browser cannot see it. If
the browser can display the page, you can then go on to study what
get_iplayer is doing with it. Identify where in the code it is being
processed and the names of relevant variables. Add print statements to
print the values of the variables before and after an operation.
Post by Jon Crookston
The output with --debug (below) doesn't seem to tell me much more, does
anyone have any other suggestions?
The debug output is mainly concerned with processing options. You have
used --nocopyright so it is not even possible to confirm the version you are
running. Remove all the options, including your preferences, and run it
with the defaults. If it works with the defaults, add the options back one
by one.

Best wishes
Richard
d***@surrey.ac.uk
2017-11-09 16:35:41 UTC
Permalink
I had this problem with get_iplayer 3.06 and Ubuntu.

The issue was that my CPAN was not set-up fully so even though I thought I was updating IO::Socket::SSL I actually wasn't.

Start by ensuring that you are using a 2.x.x version of IO::Socket::SSL by running:

perl -MIO::Socket::SSL -e 'print "$IO::Socket::SSL::VERSION\n";'

If you are, then that is not the issue.

If not, try updating using cpanm rather than full-blown cpan (uses a lot less memory):

cpanm install IO::Socket::SSL


David




-----Original Message-----
From: get_iplayer [mailto:get_iplayer-***@lists.infradead.org] On Behalf Of RS
Sent: 09 November 2017 14:19
To: ***@lists.infradead.org
Subject: Re: Problem with 3.06 PVR

From: Jon Crookston
Sent: Wednesday, November 8, 2017 10:46 PM
Post by Jon Crookston
Frustratingly, while John and I shared similar symptoms, I don't think
we had the same problem. I've just installed IO::Socket::SSL but to no
avail, and tried --no-index-concurrent.
I'm struggling to know where to look next - there isn't any real clue
in the program output - is there a way to find out *why* it fails "to
download programme schedule
Post by Jon Crookston
http://www.bbc.co.uk/6music/programmes/schedules/last_week" etc.?
I'm not
really very familiar with the use of 'proper' software tools for
debugging etc., but if I had anything to go >on I might try to do a bit more digging.
I have not yet used Linux to run get_iplayer so I cannot help with Linux dependencies.

Debugging is not a matter of 'proper' software tools; it is a matter of approach. You should aim to keep everything as simple as possible and test one thing at a time.

What happens when you click the link in your paragraph above? Does your browser display a page with a blue-green background with a heading "Schedule
30 October - 5 November 2017"?
If it doesn't, you need to find out why. There is no point in considering why get_iplayer cannot analyse the page if your browser cannot see it. If the browser can display the page, you can then go on to study what get_iplayer is doing with it. Identify where in the code it is being processed and the names of relevant variables. Add print statements to print the values of the variables before and after an operation.
Post by Jon Crookston
The output with --debug (below) doesn't seem to tell me much more, does
anyone have any other suggestions?
The debug output is mainly concerned with processing options. You have used --nocopyright so it is not even possible to confirm the version you are running. Remove all the options, including your preferences, and run it with the defaults. If it works with the defaults, add the options back one by one.

Best wishes
Richard
Ralph Corderoy
2017-11-09 16:07:53 UTC
Permalink
Hi Jon,
Post by Jon Crookston
I'm struggling to know where to look next - there isn't any real clue
in the program output - is there a way to find out *why* it fails "to
download programme schedule
http://www.bbc.co.uk/6music/programmes/schedules/last_week" etc.?
The code ignores the error and just tries again up to a given number of
retries. Try modifying the code to give more information.

Make a back up copy of your get_iplayer script. Edit it and find
`sub request_url_retry' at the start of a line. A few paragraphs down,
add the `$res->dump();' line where it's shown below, then save the file.

for ($i = 0; $i < $retries; $i++) {
$res = $ua->request( HTTP::Request->new( GET => $url ) );
if ( ! $res->is_success ) {
$res->dump();
logger $failmsg if $i == $retries - 1;
} else {
logger $succeedmsg;
last;
}
}

You should now get output on those failures.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
Jon Crookston
2017-11-10 01:34:57 UTC
Permalink
Thank you Ralph, that's a really helpful start. I've done a bit of coding in years gone by but never really touched Perl, and not done anything for about ten years. Adding that output statement told me that:

501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
Content-Type: text/plain
Client-Date: Fri, 10 Nov 2017 00:51:01 GMT
Client-Warning: Internal response

LWP will support https URLs if the LWP::Protocol::https module
is installed.\n


(as an aside: David's point was helpful too - I'm running version 2.052.1 of IO::Socket::SSL (although I don't believe that I previously had this installed - I did install it after John Reay's report that it resolved the issue for him.)

So I installed LWP::Protocol::https (v6.07), with its dependency 'Mozilla-CA' and, as if by magic, everything is back to normal. Just for good measure, I installed the Mojolicious package and I can avoid the warnings and use concurrent indexing.

Thanks again Ralph - I'm sure I could have got there in the end, but it would probably have taken me a couple of hours to work out what to insert into the code and where. Not that I object to putting in some time, I just don't have a lot to spare and could easily spend that time and still be no further forward. So thank you for sharing the knowledge.

As for the cygwin issue, mentioned by a few other posters: I've always run gip under cygwin. I think when I first began to use it there was no windows version available. (According to my download_history, using Richard's method to extract the date from the epoch-timestamp, this was probably in early 2010.) While I've long aspired to run 'real' linux, or at least dual boot, I've never managed to prioritise the time to make it happen, and cygwin is pretty good for what I need. I've never considered cygwin to be 'asking for trouble', but I recognise that it may have limitations.

The thing which I still don't really understand is that nothing changed on my system, and gip became broken. Does this mean that there was a switch from http to https at the BBC's end? If so, I'm surprised that this wasn't more widely known about. Normally, by the time I notice that gip has stopped working I find a lot of traffic on this list from people with the same problem. I remain very grateful to the developer for providing fixes so quickly in such circumstances.

Thank you all. Every day is a school day ;-)

Jon.




________________________________
From: Ralph Corderoy <***@inputplus.co.uk>
To: Jon Crookston <***@yahoo.co.uk>
Cc: ***@lists.infradead.org
Sent: Thursday, 9 November 2017, 16:08
Subject: Re: Problem with 3.06 PVR



Hi Jon,
Post by Jon Crookston
I'm struggling to know where to look next - there isn't any real clue
in the program output - is there a way to find out *why* it fails "to
download programme schedule
http://www.bbc.co.uk/6music/programmes/schedules/last_week" etc.?
The code ignores the error and just tries again up to a given number of
retries. Try modifying the code to give more information.

Make a back up copy of your get_iplayer script. Edit it and find
`sub request_url_retry' at the start of a line. A few paragraphs down,
add the `$res->dump();' line where it's shown below, then save the file.

for ($i = 0; $i < $retries; $i++) {
$res = $ua->request( HTTP::Request->new( GET => $url ) );
if ( ! $res->is_success ) {
$res->dump();
logger $failmsg if $i == $retries - 1;
} else {
logger $succeedmsg;
last;
}
}

You should now get output on those failures.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
Ralph Corderoy
2017-11-10 01:47:17 UTC
Permalink
Hi Jon,
Post by Jon Crookston
501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
Content-Type: text/plain
Client-Date: Fri, 10 Nov 2017 00:51:01 GMT
Client-Warning: Internal response
LWP will support https URLs if the LWP::Protocol::https module
is installed.\n
Well, that's very clear. :-)
If you've time, perhaps you could urge get_iplayer's author, on the
forums I think, to give better feedback to the user on those errors,
perhaps conditionally, as LWP have obviously gone to the effort to make
the information available and it will save others time in the future.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
Jon Crookston
2017-11-10 02:05:42 UTC
Permalink
Agreed Ralph - it would seem sensible to have an option such as --truncate-error-messages or similar, but for the most part it would surely help people to see what the error message is so that they can at least have an attempt at solving it. I for one would have solved my own problem if I'd received this descriptive error message in the first instance.

Does the developer follow this list, or just the other (?squarepenguin) forum?

Thanks.





________________________________
From: Ralph Corderoy <***@inputplus.co.uk>
To: Jon Crookston <***@yahoo.co.uk>
Cc: ***@lists.infradead.org
Sent: Friday, 10 November 2017, 1:48
Subject: Re: Problem with 3.06 PVR



Hi Jon,
Post by Jon Crookston
501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
Content-Type: text/plain
Client-Date: Fri, 10 Nov 2017 00:51:01 GMT
Client-Warning: Internal response
LWP will support https URLs if the LWP::Protocol::https module
is installed.\n
Well, that's very clear. :-)
If you've time, perhaps you could urge get_iplayer's author, on the
forums I think, to give better feedback to the user on those errors,
perhaps conditionally, as LWP have obviously gone to the effort to make
the information available and it will save others time in the future.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
RS
2017-11-10 10:18:41 UTC
Permalink
From: Jon Crookston
Sent: Friday, November 10, 2017 1:34 AM
Post by Jon Crookston
As for the cygwin issue, mentioned by a few other posters: I've always run
gip under cygwin. I think when I first began to use it there was no
windows version available. (According to >my download_history, using
Richard's method to extract the date from the epoch-timestamp, this was
probably in early 2010.) While I've long aspired to run 'real' linux,
or at least >dual boot, I've never managed to prioritise the time to make
it happen, and cygwin is pretty good for what I need. I've never
considered cygwin to be 'asking for trouble', but I >recognise that it may
have limitations.
The thing which I still don't really understand is that nothing changed on
my system, and gip became broken. Does this mean that there was a switch
from http to https at the BBC's >end? If so, I'm surprised that this
wasn't more widely known about. Normally, by the time I notice that gip
has stopped working I find a lot of traffic on this list from people with
the >same problem. I remain very grateful to the developer for providing
fixes so quickly in such circumstances.
The release notes
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release305
show the date for v3.05 as 2017-10-12. The v3.05 release notes say,

Changes in 3.05
Web PVR: Updated to support HTTPS URLs for Quick URL recording. The BBC has
begun redirecting iPlayer episode pages to secure equivalents, and Web PVR
limitations have required changing "https:" to "http:" for pages used in the
Quick URL box. This did not affect the CLI or recording from search results
in Web PVR.

That may have some connection with the problem you had.

I have never used Cygwin so I am not denigrating it. I have been using
get_iplayer since it started (2008?) and I have so far only used the Windows
version. For Windows there has always been the Windows installer which
packages everything needed to run it. Packages have also been produced for
Ubuntu and Raspbian and maybe other distributions. Using the packages saves
effort. In addition there are lots of users using the same configuration so
that any problems get reported and fixed quickly. If you use a
configuration noone else is using you are on your own (relatively).

On top of that any emulator adds its own limitations to the limitations of
the underlying operating system. I get the impression from the web pages
about Cygwin that there are a lot of choices to be made. There must be
scope for problems to be introduced by leaving something out of Cygwin.

As for reporting errors, I suspect DinkyPumpkin does read this listserver,
but the only official route for reporting errors is the forum. dinky will
only reply in the forum.
https://squarepenguin.co.uk/forums/

Anyway I'm glad you got it fixed.

Best wishes
Richard
CJB
2017-11-10 11:42:48 UTC
Permalink
All the debate about code is beyond me. I do remember Frotran and Basic though.

Re: my case. I have re-installed Windows v3.6

I then again renamed the tv.cache and then did a refresh. I got about
114 'pages' of files. But these only amount to about 250KB of file.
The radio cache file runs at about 2,500KB.

About 244 tv new programmes were picked up - not a lot for a new blank
cache file.

A blank search of the tv listings started at 0 days - so the refresh
picked up some new programmes. My main test is to search for Blue
Planet but this consistently it failed to show.

BTW CLS with --pid=xxxxxx works fine.

I now need to go back to version of GiP when I last got a tv refresh.
That was for about 3.05 or 3.04.

Frankly for me 3.06 simply doesn't do the job. And I've missed some
really good programmes. But searching the iPlayer site and then doing
a 'manual' download with CLS takes too much time.

CJB.
Post by RS
From: Jon Crookston
Sent: Friday, November 10, 2017 1:34 AM
Post by Jon Crookston
As for the cygwin issue, mentioned by a few other posters: I've always run
gip under cygwin. I think when I first began to use it there was no
windows version available. (According to >my download_history, using
Richard's method to extract the date from the epoch-timestamp, this was
probably in early 2010.) While I've long aspired to run 'real' linux,
or at least >dual boot, I've never managed to prioritise the time to make
it happen, and cygwin is pretty good for what I need. I've never
considered cygwin to be 'asking for trouble', but I >recognise that it may
have limitations.
The thing which I still don't really understand is that nothing changed on
my system, and gip became broken. Does this mean that there was a switch
from http to https at the BBC's >end? If so, I'm surprised that this
wasn't more widely known about. Normally, by the time I notice that gip
has stopped working I find a lot of traffic on this list from people with
the >same problem. I remain very grateful to the developer for providing
fixes so quickly in such circumstances.
The release notes
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release305
show the date for v3.05 as 2017-10-12. The v3.05 release notes say,
Changes in 3.05
Web PVR: Updated to support HTTPS URLs for Quick URL recording. The BBC has
begun redirecting iPlayer episode pages to secure equivalents, and Web PVR
limitations have required changing "https:" to "http:" for pages used in the
Quick URL box. This did not affect the CLI or recording from search results
in Web PVR.
That may have some connection with the problem you had.
I have never used Cygwin so I am not denigrating it. I have been using
get_iplayer since it started (2008?) and I have so far only used the Windows
version. For Windows there has always been the Windows installer which
packages everything needed to run it. Packages have also been produced for
Ubuntu and Raspbian and maybe other distributions. Using the packages saves
effort. In addition there are lots of users using the same configuration so
that any problems get reported and fixed quickly. If you use a
configuration noone else is using you are on your own (relatively).
On top of that any emulator adds its own limitations to the limitations of
the underlying operating system. I get the impression from the web pages
about Cygwin that there are a lot of choices to be made. There must be
scope for problems to be introduced by leaving something out of Cygwin.
As for reporting errors, I suspect DinkyPumpkin does read this listserver,
but the only official route for reporting errors is the forum. dinky will
only reply in the forum.
https://squarepenguin.co.uk/forums/
Anyway I'm glad you got it fixed.
Best wishes
Richard
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
RS
2017-11-10 12:26:29 UTC
Permalink
From: CJB
Sent: Friday, November 10, 2017 11:42 AM
Post by CJB
I then again renamed the tv.cache and then did a refresh. I got about
114 'pages' of files. But these only amount to about 250KB of file.
The radio cache file runs at about 2,500KB.
About 244 tv new programmes were picked up - not a lot for a new blank
cache file.
Have you run the Windows installer at least since installing v3.00?

Have you tried

Do this first
Immediately after installing get_iplayer 3.00, run:
get_iplayer --cache-init --type="tv,radio"

as set out in
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release300
RS
2017-11-10 14:53:52 UTC
Permalink
Post by RS
Have you tried
Do this first
get_iplayer --cache-init --type="tv,radio"
as set out in
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release300
It seems the correct command to rebuild your cache after reinstalling is

get_iplayer --cache-rebuild --type=tv,radio

as shown here
https://squarepenguin.co.uk/forums/thread-1577-post-7065.html#pid7065

245 tv programmes was what I got from a refresh earlier today, probably
since last night. At least you now seem to be getting the latest programmes
in your cache, so you will eventually get a complete cache. You can only
add the last two weeks anyway.

Best wishes
Richard
Ralph Corderoy
2017-11-10 16:08:00 UTC
Permalink
Hi Richard,
Post by RS
get_iplayer --cache-rebuild --type=tv,radio
...
Post by RS
You can only add the last two weeks anyway.
--cache-rebuild implies --refresh-limit=30, unless that's already been
set to some other value. 30 (days) is the current maximum.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
CJB
2017-11-10 16:37:56 UTC
Permalink
Thank you that tip.

I did a cache refresh / rebuild with CLS and got many thousands of
entries for tv and radio.

As I said CLS seems to work OK. It is the Windows PVR that is screwed
for refreshing the t.v. cache.

Chris B.
Post by Ralph Corderoy
Hi Richard,
Post by RS
get_iplayer --cache-rebuild --type=tv,radio
...
Post by RS
You can only add the last two weeks anyway.
--cache-rebuild implies --refresh-limit=30, unless that's already been
set to some other value. 30 (days) is the current maximum.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
_______________________________________________
get_iplayer mailing list
http://lists.infradead.org/mailman/listinfo/get_iplayer
RS
2017-11-10 16:43:28 UTC
Permalink
From: Ralph Corderoy
Sent: Friday, November 10, 2017 4:08 PM
Post by Ralph Corderoy
Post by RS
get_iplayer --cache-rebuild --type=tv,radio
...
Post by Ralph Corderoy
Post by RS
You can only add the last two weeks anyway.
--cache-rebuild implies --refresh-limit=30, unless that's already been
set to some other value. 30 (days) is the current maximum.
Hi Ralph

The way the cache is refreshed has changed so much recently that I may be
confusing a historical regime with the present one.

My understanding is that the 30 day limit refers to how long entries remain
in the cache. Programmes older than 30 days are discarded. The schedules
only exist for this week and last week, so it is not possible to add
programmes more than 2 weeks old. Future programmes can also be added, but
I do not know how they are handled.

The v3.00 release notes
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release300
state,
The slower updates are compensated for by the fact that the cache is now
updated only once per calendar week (Mon-Sun). The cache will be updated the
first time get_iplayer runs during the week.

My cache still seems to refresh every 4 hours, so I may have got it
completely wrong.

Best wishes
Richard
Ralph Corderoy
2017-11-10 17:26:50 UTC
Permalink
Hi Richard,
Post by RS
The way the cache is refreshed has changed so much recently that I may
be confusing a historical regime with the present one.
Yes, the arms race does make it tricky to keep up. I only dig when
something stops working.
Post by RS
My understanding is that the 30 day limit refers to how long entries
remain in the cache. Programmes older than 30 days are discarded.
It currently controls how many whole-weeks back we go in retrieving
schedules like https://www.bbc.co.uk/schedules/p00fzl6n/2017/w$w for BBC
One, where $w is the week number of the year, e.g. today is in week 45.

Entries in the cache are purged by get_links() if they don't have an
"expires" time, or it's before "now", or its "timeadded" is more than 30
days ago. That 30 days is fixed and defined as $min_timeadded.
Post by RS
The schedules only exist for this week and last week, so it is not
possible to add programmes more than 2 weeks old.
I've just got all those for {01..45} and they're all available. I think
it's just get_iplayer doesn't want to slow things down by getting the
older ones, even though they obviously contain programmes that could
still be available, e.g. _This Week_ is typically online for a year.
(They can't give it away!) This suggests if one comes back from a
three-month cruise that overriding the 30-day limit could be useful.
Post by RS
The v3.00 release notes
https://github.com/get-iplayer/get_iplayer/wiki/release300to309#release300
state,
The slower updates are compensated for by the fact that the cache is
now updated only once per calendar week (Mon-Sun). The cache will be
updated the first time get_iplayer runs during the week.
My cache still seems to refresh every 4 hours, so I may have got it
completely wrong.
I think it's changed again since 3.00. The --expiry option defaults to
four hours now; if the cache is older than that then it is refreshed.
(It's also refreshed if explicitly requested, or it doesn't exist.) I
always specify a very high --expiry option because I explicit refresh
the cache once each morning, without waiting for it to finish, and then
don't want it delay any of my later runs of get_iplayer during the day.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
RS
2017-11-10 19:20:41 UTC
Permalink
This post might be inappropriate. Click to display it.
Jon Crookston
2017-11-02 22:56:21 UTC
Permalink
I'm experiencing the same behaviour when trying to refresh the cache. It's been like this for a few days (?six or eight), and I updated from 3.02 to 3.06 without changing the behaviour. I don't have Mojolicious, but I don't think this is causing the problem, is it?

I run under cygwin within windows, using a bash terminal window.



$ gip --refresh --type=tv
WARNING: Please download and run latest installer or install the Mojolicious Perl module for concurrent indexing of tv programmes.

INFO: Indexing tv programmes (sequential)

WARNING: Failed to download programme schedule http://www.bbc.co.uk/bbcfour/programmes/schedules/last_week

WARNING: Failed to download programme schedule http://www.bbc.co.uk/bbcfour/programmes/schedules/this_week




Downloading using --pid seems to be working ok. Does anyone have any idea what might be the problem?


Thanks in advance.

Jon.



_________________________________________________________

John Reay john.reay at gmail.com Tue Oct 31 18:26:28 PDT 2017


Further to my previous post...
From the cache refresh INFO: Indexing tv programmes (concurrent)
...............
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcalba/programmes/schedules/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcone/programmes/schedules/channel_islands/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcfour/programmes/schedules/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcnews/programmes/schedules/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcone/programmes/schedules/cambridge/this_week ...........
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcone/programmes/schedules/east/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcone/programmes/schedules/hd/this_week .
WARNING: Failed to download schedule page: http://www.bbc.co.uk/bbcone/programmes/schedules/east_midlands/this_week .
Can anyone help with this error I'm getting running the web PVR. I >just did a manual upgrade to IP version 3.06 on Linux Mint 17.3. >>Running PVR Searches: >>INFO: PVR Run: '_Ambulance_Series_2_name_tv' >>>INFO: Indexing tv programmes (concurrent) >.....Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file >SCALAR(0xfeb188) does not exist at /usr/share/perl5/IO/Socket/SSL.pm >line 1642. >Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188) >does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642. >Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188) >does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642. >Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188) >does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642. >Mojo::Reactor::Poll: I/O watcher failed: SSL_ca_file SCALAR(0xfeb188) >does not exist at /usr/share/perl5/IO/Socket/SSL.pm line 1642. >>Running IP from tty using --pid seems to work though
C E Macfarlane
2017-11-10 11:47:39 UTC
Permalink
--
www.macfh.co.uk/MacFH.html
Post by d***@surrey.ac.uk
If not, try updating using cpanm rather than full-blown cpan
cpanm install IO::Socket::SSL
Note that perl uses the TMPDIR environment setting, and its absence can lead
to some problems with memory, particularly with embedded devices, but
perhaps also with Linux PCs. Presuming you have a /tmp directory, you need
to include in one of, in order of preference ...
/etc/environment
/etc/profile
~/.profile
... the following line ...
export TMPDIR='/tmp'
Ralph Corderoy
2017-11-10 12:00:09 UTC
Permalink
Post by C E Macfarlane
Note that perl uses the TMPDIR environment setting, and its absence
can lead to some problems with memory, particularly with embedded
devices, but perhaps also with Linux PCs. Presuming you have a /tmp
directory, you need to include in one of, in order of preference ...
If TMPDIR isn't set then /tmp will be the default AIUI so the only
reason to normally set it is when /tmp isn't big enough, e.g. it's a
tmpfs that's using RAM, and then it needs to be set to somewhere else.
--
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy
Loading...