Better error reporting for errors when sending video to dreambox
authorChristian Weiske <cweiske@cweiske.de>
Wed, 6 Mar 2019 20:20:40 +0000 (21:20 +0100)
committerChristian Weiske <cweiske@cweiske.de>
Wed, 6 Mar 2019 20:20:40 +0000 (21:20 +0100)
www/functions.php
www/play.php

index ffd6667..b094e36 100644 (file)
@@ -114,6 +114,13 @@ function playVideoOnDreambox($videoUrl, $dreamboxUrl)
     ini_set('track_errors', 1);
     $xml = @file_get_contents($dreamboxUrl . '/web/session');
     if ($xml === false) {
+        if (!isset($http_response_header)) {
+            errorOut(
+                'Error fetching dreambox web interface token: '
+                . $GLOBALS['lastError']
+            );
+        }
+
         list($http, $code, $message) = explode(
             ' ', $http_response_header[0], 3
         );
@@ -161,4 +168,11 @@ function playVideoOnDreambox($videoUrl, $dreamboxUrl)
         );
     }
 }
+
+function errorHandlerStore($number, $message, $file, $line)
+{
+    $GLOBALS['lastError'] = $message;
+    return false;
+}
+$GLOBALS['lastError'] = null;
 ?>
index 983cd7f..8109951 100644 (file)
@@ -8,6 +8,8 @@ if (file_exists($cfgFile)) {
     include $cfgFile;
 }
 
+set_error_handler('errorHandlerStore');
+
 $pageUrl  = getPageUrl();
 $json     = getYoutubeDlJson($pageUrl, $youtubedlPath);
 $videoUrl = extractVideoUrlFromJson($json);