summaryrefslogtreecommitdiff
path: root/bin/backend.php
blob: 5cca4749e946f677e2fea969b95f1d56c886a416 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?php

header('Content-Type: application/json; charset: utf-8');

if (file_exists('../config.php'))
	include ('../config.php');
else
	include ('../config_default.php');
include ('../getid3/getid3.php');
include ('./utils.php');
include ('./files.php');
include ('./streaminfo.php');
include ('./vdr.php');
include ('./session.php');
include ('./jsonapi.php');

$action=$_REQUEST['action'];
switch ($action)
        {
	        case ("getGlobals"):
			$tree = getGlobals();
			print $tree;
			break;
		case ("getRunningSessions"):
			$tree = getRunningSessions();
			print $tree;
			break;
		case ("getTvCat"):
			$tree =  getTvCat();
        	        print $tree;
			break;
		
		case ("getFullChanList"):
			$tree = getFullChanList();
			print $tree;
			break;
		
		case ("getTvChan"):
			$tree = GetTvChan($_REQUEST['cat']);
        	        print $tree;
			break;
		
		case ("getChanInfo"):
			$tree = getChanInfo($_REQUEST['chan']);
        	        print $tree;
			break;
		
		case ("getRecInfo"):
			$tree = getRecInfo($_REQUEST['rec']);
	       	        print $tree;
			break;
		
		case ("getVidInfo"):
			$tree = getVidInfo($_REQUEST['file']);
        	        print $tree;
			break;
		
		case ("getStreamInfo"):
			$tree = getStreamInfo($_REQUEST['session']);
			print $tree;
			break;
		
		case ("startBroadcast"):
			$tree = startBroadcast($_REQUEST['type'], $_REQUEST['url'], $_REQUEST['mode']);
			print $tree;
			break;
		
		case ("stopBroadcast"):
			$tree = stopBroadcast($_REQUEST['session']);
			print $tree;
			break;
		
		case ("getStreamStatus"):
			$time = time();
			$session = $_REQUEST['session'];
			$prevmsg = $_REQUEST['msg'];
			while((time() - $time) < 29)
			{
				// Get current status
				$status = getStreamStatus($session);
	
				$statusdec = json_decode($status);
				if (($statusdec->message != $prevmsg) || ($statusdec->status == "ready"))
				{
					print $status;
					break;
				}

				usleep(1000);
			}
			break;
		
		case ("getTimers"):
			$tree = getTimers();
                	print $tree;
			break;
		
		case ("editTimer"):
			$tree = editTimer($_REQUEST['id'], $_REQUEST['name'], $_REQUEST['active'], $_REQUEST['channumber'], $_REQUEST['date'], $_REQUEST['starttime'], $_REQUEST['endtime']);
			print $tree;
			break;
		
		case ("delTimer"):
			$tree = delTimer($_REQUEST['id']);
	                print $tree;
			break;
		
		case ("browseFolder"):
			$tree = browseFolder(stripslashes($_REQUEST['path']));
			print $tree;
			break;
		
		case ("streamAudio"):
			$tree = streamAudio($_REQUEST['path'], $_REQUEST['file']);
			print $tree;
			break;
	}

?>