mirakurun 4.0.0-beta.3 → 4.0.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/api.d.ts +3 -0
  2. package/api.yml +50 -1
  3. package/config/channels.yml +117 -74
  4. package/doc/Configuration.md +6 -0
  5. package/lib/Mirakurun/Channel.js +43 -7
  6. package/lib/Mirakurun/Channel.js.map +1 -1
  7. package/lib/Mirakurun/ChannelItem.d.ts +8 -17
  8. package/lib/Mirakurun/ChannelItem.js +66 -58
  9. package/lib/Mirakurun/ChannelItem.js.map +1 -1
  10. package/lib/Mirakurun/EPG.js +5 -4
  11. package/lib/Mirakurun/EPG.js.map +1 -1
  12. package/lib/Mirakurun/Event.d.ts +1 -1
  13. package/lib/Mirakurun/Event.js +9 -7
  14. package/lib/Mirakurun/Event.js.map +1 -1
  15. package/lib/Mirakurun/Program.js +50 -12
  16. package/lib/Mirakurun/Program.js.map +1 -1
  17. package/lib/Mirakurun/Server.js +70 -39
  18. package/lib/Mirakurun/Server.js.map +1 -1
  19. package/lib/Mirakurun/Service.js +44 -7
  20. package/lib/Mirakurun/Service.js.map +1 -1
  21. package/lib/Mirakurun/ServiceItem.js +15 -2
  22. package/lib/Mirakurun/ServiceItem.js.map +1 -1
  23. package/lib/Mirakurun/TSDecoder.js +50 -7
  24. package/lib/Mirakurun/TSDecoder.js.map +1 -1
  25. package/lib/Mirakurun/TSFilter.js +86 -43
  26. package/lib/Mirakurun/TSFilter.js.map +1 -1
  27. package/lib/Mirakurun/Tuner.d.ts +1 -1
  28. package/lib/Mirakurun/Tuner.js +46 -9
  29. package/lib/Mirakurun/Tuner.js.map +1 -1
  30. package/lib/Mirakurun/TunerDevice.js +55 -17
  31. package/lib/Mirakurun/TunerDevice.js.map +1 -1
  32. package/lib/Mirakurun/api/channels/{type}/{channel}/services/{id}/stream.js +38 -2
  33. package/lib/Mirakurun/api/channels/{type}/{channel}/services/{id}/stream.js.map +1 -1
  34. package/lib/Mirakurun/api/channels/{type}/{channel}/services/{id}.js +38 -2
  35. package/lib/Mirakurun/api/channels/{type}/{channel}/services/{id}.js.map +1 -1
  36. package/lib/Mirakurun/api/channels/{type}/{channel}/services.js +38 -2
  37. package/lib/Mirakurun/api/channels/{type}/{channel}/services.js.map +1 -1
  38. package/lib/Mirakurun/api/channels/{type}/{channel}/stream.js +38 -2
  39. package/lib/Mirakurun/api/channels/{type}/{channel}/stream.js.map +1 -1
  40. package/lib/Mirakurun/api/channels/{type}/{channel}.js +39 -3
  41. package/lib/Mirakurun/api/channels/{type}/{channel}.js.map +1 -1
  42. package/lib/Mirakurun/api/channels/{type}.js +40 -4
  43. package/lib/Mirakurun/api/channels/{type}.js.map +1 -1
  44. package/lib/Mirakurun/api/channels.js +40 -4
  45. package/lib/Mirakurun/api/channels.js.map +1 -1
  46. package/lib/Mirakurun/api/config/channels/scan.d.ts +8 -6
  47. package/lib/Mirakurun/api/config/channels/scan.js +534 -152
  48. package/lib/Mirakurun/api/config/channels/scan.js.map +1 -1
  49. package/lib/Mirakurun/api/config/channels.js +34 -1
  50. package/lib/Mirakurun/api/config/channels.js.map +1 -1
  51. package/lib/Mirakurun/api/config/server.js +34 -1
  52. package/lib/Mirakurun/api/config/server.js.map +1 -1
  53. package/lib/Mirakurun/api/config/tuners.js +34 -1
  54. package/lib/Mirakurun/api/config/tuners.js.map +1 -1
  55. package/lib/Mirakurun/api/events/stream.js +4 -1
  56. package/lib/Mirakurun/api/events/stream.js.map +1 -1
  57. package/lib/Mirakurun/api/events.js +38 -2
  58. package/lib/Mirakurun/api/events.js.map +1 -1
  59. package/lib/Mirakurun/api/iptv/discover.json.js +38 -2
  60. package/lib/Mirakurun/api/iptv/discover.json.js.map +1 -1
  61. package/lib/Mirakurun/api/iptv/lineup.json.js +38 -2
  62. package/lib/Mirakurun/api/iptv/lineup.json.js.map +1 -1
  63. package/lib/Mirakurun/api/iptv/lineup_status.json.js +34 -1
  64. package/lib/Mirakurun/api/iptv/lineup_status.json.js.map +1 -1
  65. package/lib/Mirakurun/api/iptv/playlist.js +5 -2
  66. package/lib/Mirakurun/api/iptv/playlist.js.map +1 -1
  67. package/lib/Mirakurun/api/iptv/xmltv.js +5 -2
  68. package/lib/Mirakurun/api/iptv/xmltv.js.map +1 -1
  69. package/lib/Mirakurun/api/programs/{id}/stream.js +38 -2
  70. package/lib/Mirakurun/api/programs/{id}/stream.js.map +1 -1
  71. package/lib/Mirakurun/api/programs/{id}.js +38 -2
  72. package/lib/Mirakurun/api/programs/{id}.js.map +1 -1
  73. package/lib/Mirakurun/api/programs.js +38 -2
  74. package/lib/Mirakurun/api/programs.js.map +1 -1
  75. package/lib/Mirakurun/api/restart.js +34 -1
  76. package/lib/Mirakurun/api/restart.js.map +1 -1
  77. package/lib/Mirakurun/api/services/{id}/logo.js +5 -2
  78. package/lib/Mirakurun/api/services/{id}/logo.js.map +1 -1
  79. package/lib/Mirakurun/api/services/{id}/stream.js +38 -2
  80. package/lib/Mirakurun/api/services/{id}/stream.js.map +1 -1
  81. package/lib/Mirakurun/api/services/{id}.js +39 -3
  82. package/lib/Mirakurun/api/services/{id}.js.map +1 -1
  83. package/lib/Mirakurun/api/services.js +40 -4
  84. package/lib/Mirakurun/api/services.js.map +1 -1
  85. package/lib/Mirakurun/api/status.js +5 -2
  86. package/lib/Mirakurun/api/status.js.map +1 -1
  87. package/lib/Mirakurun/api/tuners/{index}/process.js +38 -2
  88. package/lib/Mirakurun/api/tuners/{index}/process.js.map +1 -1
  89. package/lib/Mirakurun/api/tuners/{index}.js +38 -2
  90. package/lib/Mirakurun/api/tuners/{index}.js.map +1 -1
  91. package/lib/Mirakurun/api/tuners.js +38 -2
  92. package/lib/Mirakurun/api/tuners.js.map +1 -1
  93. package/lib/Mirakurun/api/version.js +34 -1
  94. package/lib/Mirakurun/api/version.js.map +1 -1
  95. package/lib/Mirakurun/common.d.ts +1 -0
  96. package/lib/Mirakurun/common.js +6 -1
  97. package/lib/Mirakurun/common.js.map +1 -1
  98. package/lib/Mirakurun/config.d.ts +3 -0
  99. package/lib/Mirakurun/config.js +61 -5
  100. package/lib/Mirakurun/config.js.map +1 -1
  101. package/lib/Mirakurun/db.js +35 -2
  102. package/lib/Mirakurun/db.js.map +1 -1
  103. package/lib/Mirakurun/log.js +35 -5
  104. package/lib/Mirakurun/log.js.map +1 -1
  105. package/lib/Mirakurun/rpc.js +46 -7
  106. package/lib/Mirakurun/rpc.js.map +1 -1
  107. package/lib/Mirakurun/system.js +38 -2
  108. package/lib/Mirakurun/system.js.map +1 -1
  109. package/lib/client.js +47 -14
  110. package/lib/client.js.map +1 -1
  111. package/lib/epgdump.js +45 -9
  112. package/lib/epgdump.js.map +1 -1
  113. package/lib/remote.js +4 -1
  114. package/lib/remote.js.map +1 -1
  115. package/lib/server.js +46 -10
  116. package/lib/server.js.map +1 -1
  117. package/lib/tsconfig.tsbuildinfo +1 -1
  118. package/lib/ui/index.bundle.js +911 -1206
  119. package/lib/ui/index.bundle.js.map +1 -1
  120. package/lib/ui/redoc-ui.html +37 -0
  121. package/lib/ui/vendors.bundle.js +18700 -13127
  122. package/lib/ui/vendors.bundle.js.map +1 -1
  123. package/package.json +14 -14
  124. package/lib/ui/swagger-ui.html +0 -40
package/api.d.ts CHANGED
@@ -239,6 +239,9 @@ export interface ConfigServer {
239
239
  disableWebUI?: boolean;
240
240
  allowIPv4CidrRanges?: string[];
241
241
  allowIPv6CidrRanges?: string[];
242
+ allowOrigins: string[];
243
+ allowPNA: boolean;
244
+ tsplayEndpoint: string;
242
245
  }
243
246
 
244
247
  export enum LogLevel {
package/api.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  swagger: '2.0'
2
2
  info:
3
3
  title: Mirakurun
4
- version: ~
4
+ version: '0.0.0'
5
5
  description: DVR Tuner Server for Japanese TV.
6
6
  contact:
7
7
  name: Chinachu Project
@@ -572,6 +572,55 @@ definitions:
572
572
  latest:
573
573
  type: string
574
574
 
575
+ ChannelScanStatus:
576
+ type: object
577
+ description: "Current status of a channel scan operation"
578
+ properties:
579
+ status:
580
+ type: string
581
+ description: "Current scan status"
582
+ enum:
583
+ - not_started
584
+ - scanning
585
+ - completed
586
+ - cancelled
587
+ - error
588
+ isScanning:
589
+ type: boolean
590
+ description: "Whether a scan is currently in progress"
591
+ type:
592
+ $ref: '#/definitions/ChannelType'
593
+ description: "Channel type being scanned"
594
+ dryRun:
595
+ type: boolean
596
+ description: "Whether this is a dry run (no changes will be saved)"
597
+ progress:
598
+ type: integer
599
+ description: "Scan progress percentage (0-100)"
600
+ currentChannel:
601
+ type: string
602
+ description: "Channel currently being scanned"
603
+ scanLog:
604
+ type: array
605
+ description: "Log of scan events"
606
+ items:
607
+ type: string
608
+ newCount:
609
+ type: integer
610
+ description: "Number of new channels found"
611
+ takeoverCount:
612
+ type: integer
613
+ description: "Number of existing channels merged"
614
+ result:
615
+ type: array
616
+ description: "Complete channel configuration"
617
+ items:
618
+ $ref: "#/definitions/ConfigChannelsItem"
619
+ startTime:
620
+ $ref: '#/definitions/UnixtimeMS'
621
+ updateTime:
622
+ $ref: '#/definitions/UnixtimeMS'
623
+
575
624
  Status:
576
625
  type: object
577
626
  properties:
@@ -1,140 +1,197 @@
1
1
  - name: TOKYO MX
2
2
  type: GR
3
3
  channel: '16'
4
+ isDisabled: true
4
5
 
5
6
  - name: フジテレビ
6
7
  type: GR
7
8
  channel: '21'
9
+ isDisabled: true
8
10
 
9
11
  - name: TBS
10
12
  type: GR
11
13
  channel: '22'
14
+ isDisabled: true
12
15
 
13
- - name: テレビ東京
16
+ - name: テレ東
14
17
  type: GR
15
18
  channel: '23'
19
+ isDisabled: true
16
20
 
17
21
  - name: テレビ朝日
18
22
  type: GR
19
23
  channel: '24'
24
+ isDisabled: true
20
25
 
21
26
  - name: 日テレ
22
27
  type: GR
23
28
  channel: '25'
29
+ isDisabled: true
24
30
 
25
- - name: NHKEテレ・東京
31
+ - name: NHKEテレ
26
32
  type: GR
27
33
  channel: '26'
34
+ isDisabled: true
28
35
 
29
- - name: NHK総合・東京
36
+ - name: NHK総合
30
37
  type: GR
31
38
  channel: '27'
39
+ isDisabled: true
32
40
 
33
- - name: NHK BS1
41
+ - name: BS朝日1
34
42
  type: BS
35
- channel: BS15_0
36
- serviceId: 101
43
+ channel: BS01_0
44
+ serviceId: 151
45
+ isDisabled: true
37
46
 
38
- - name: NHK BS1 (Sub)
47
+ - name: BS朝日2
39
48
  type: BS
40
- channel: BS15_0
41
- serviceId: 102
49
+ channel: BS01_0
50
+ serviceId: 152
51
+ isDisabled: true
52
+
53
+ - name: BS朝日3
54
+ type: BS
55
+ channel: BS01_0
56
+ serviceId: 153
57
+ isDisabled: true
58
+
59
+ - name: BS-TBS
60
+ type: BS
61
+ channel: BS01_1
62
+ serviceId: 161
63
+ isDisabled: true
64
+
65
+ - name: BS-TBS
66
+ type: BS
67
+ channel: BS01_1
68
+ serviceId: 162
69
+ isDisabled: true
70
+
71
+ - name: BS-TBS
72
+ type: BS
73
+ channel: BS01_1
74
+ serviceId: 163
75
+ isDisabled: true
76
+
77
+ - name: BSテレ東
78
+ type: BS
79
+ channel: BS01_2
80
+ serviceId: 171
81
+ isDisabled: true
82
+
83
+ - name: BSテレ東2
84
+ type: BS
85
+ channel: BS01_2
86
+ serviceId: 172
87
+ isDisabled: true
88
+
89
+ - name: BSテレ東3
90
+ type: BS
91
+ channel: BS01_2
92
+ serviceId: 173
93
+ isDisabled: true
42
94
 
43
- - name: NHKBSプレミアム
95
+ - name: BS11イレブン
44
96
  type: BS
45
- channel: BS03_1
46
- serviceId: 103
97
+ channel: BS09_0
98
+ serviceId: 211
99
+ isDisabled: true
47
100
 
48
- - name: NHKBSプレミアム
101
+ - name: BS12トゥエルビ
49
102
  type: BS
50
- channel: BS03_1
51
- serviceId: 104
103
+ channel: BS09_2
104
+ serviceId: 222
105
+ isDisabled: true
52
106
 
53
107
  - name: BS日テレ
54
108
  type: BS
55
109
  channel: BS13_0
56
110
  serviceId: 141
111
+ isDisabled: true
57
112
 
58
113
  - name: BS日テレ
59
114
  type: BS
60
115
  channel: BS13_0
61
116
  serviceId: 142
117
+ isDisabled: true
62
118
 
63
- - name: BS朝日1
64
- type: BS
65
- channel: BS01_0
66
- serviceId: 151
67
-
68
- - name: BS朝日2
119
+ - name: BS日テレ
69
120
  type: BS
70
- channel: BS01_0
71
- serviceId: 152
121
+ channel: BS13_0
122
+ serviceId: 143
123
+ isDisabled: true
72
124
 
73
- - name: BS-TBS
125
+ - name: BSフジ・181
74
126
  type: BS
75
- channel: BS01_1
76
- serviceId: 161
127
+ channel: BS13_1
128
+ serviceId: 181
129
+ isDisabled: true
77
130
 
78
- - name: BSテレ東
131
+ - name: BSフジ・182
79
132
  type: BS
80
- channel: BS01_2
81
- serviceId: 171
133
+ channel: BS13_1
134
+ serviceId: 182
135
+ isDisabled: true
82
136
 
83
- - name: BSフジ・181
137
+ - name: BSフジ・183
84
138
  type: BS
85
139
  channel: BS13_1
86
- serviceId: 181
140
+ serviceId: 183
141
+ isDisabled: true
87
142
 
88
- - name: WOWOWプライム
143
+ - name: 放送大学テレビ
89
144
  type: BS
90
- channel: BS03_0
91
- serviceId: 191
145
+ channel: BS13_2
146
+ serviceId: 231
92
147
  isDisabled: true
93
148
 
94
- - name: WOWOWライブ
149
+ - name: 放送大学テレビ
95
150
  type: BS
96
- channel: BS05_0
97
- serviceId: 192
151
+ channel: BS13_2
152
+ serviceId: 232
98
153
  isDisabled: true
99
154
 
100
- - name: WOWOWシネマ
155
+ - name: NHK BS
101
156
  type: BS
102
- channel: BS05_1
103
- serviceId: 193
157
+ channel: BS15_0
158
+ serviceId: 101
104
159
  isDisabled: true
105
160
 
106
- - name: BS11イレブン
161
+ - name: NHK BS
107
162
  type: BS
108
- channel: BS09_0
109
- serviceId: 211
163
+ channel: BS15_0
164
+ serviceId: 102
165
+ isDisabled: true
110
166
 
111
- - name: BSスカパー!
167
+ - name: BS10
112
168
  type: BS
113
- channel: BS11_1
114
- serviceId: 241
169
+ channel: BS15_2
170
+ serviceId: 200
171
+ isDisabled: true
115
172
 
116
- - name: テレ朝チャンネル1
117
- type: CS
118
- channel: CS2
119
- serviceId: 298
173
+ - name: BSよしもと
174
+ type: BS
175
+ channel: BS23_1
176
+ serviceId: 265
120
177
  isDisabled: true
121
178
 
122
- - name: テレ朝チャンネル2
123
- type: CS
124
- channel: CS2
125
- serviceId: 299
179
+ - name: BS松竹東急
180
+ type: BS
181
+ channel: BS23_3
182
+ serviceId: 260
126
183
  isDisabled: true
127
184
 
128
- - name: 日テレプラス
185
+ - name: ショップチャンネル
129
186
  type: CS
130
- channel: CS24
131
- serviceId: 300
187
+ channel: CS8
188
+ serviceId: 55
132
189
  isDisabled: true
133
190
 
134
- - name: AT-X
191
+ - name: QVC
135
192
  type: CS
136
- channel: CS16
137
- serviceId: 333
193
+ channel: CS22
194
+ serviceId: 161
138
195
  isDisabled: true
139
196
 
140
197
  - name: BS SPTV
@@ -143,17 +200,3 @@
143
200
  serviceId: 33353
144
201
  satellite: JCSAT3A
145
202
  isDisabled: true
146
-
147
- - name: AT-X HD
148
- type: SKY
149
- channel: ATXHD
150
- serviceId: 33435
151
- satellite: JCSAT3A
152
- isDisabled: true
153
-
154
- - name: AXN HD
155
- type: SKY
156
- channel: AXNHD
157
- serviceId: 33418
158
- satellite: JCSAT4A
159
- isDisabled: true
@@ -29,6 +29,9 @@ disableEITParsing: false # boolean
29
29
  disableWebUI: false # boolean
30
30
  allowIPv4CidrRanges: ["10.0.0.0/8", "127.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"] # array of string
31
31
  allowIPv6CidrRanges: ["fc00::/7"] # array of string
32
+ allowOrigins: ["https://mirakurun-secure-contexts-api.pages.dev"] # array of string
33
+ allowPNA: true # boolean
34
+ tsplayEndpoint: https://mirakurun-secure-contexts-api.pages.dev/tsplay/ # string
32
35
  ```
33
36
 
34
37
  ### Environment Variables (Docker)
@@ -47,6 +50,9 @@ DISABLE_EIT_PARSING
47
50
  DISABLE_WEB_UI
48
51
  ALLOW_IPV4_CIDR_RANGES
49
52
  ALLOW_IPV6_CIDR_RANGES
53
+ ALLOW_ORIGINS
54
+ ALLOW_PNA
55
+ TSPLAY_ENDPOINT
50
56
  ```
51
57
 
52
58
  ## tuners.yml
@@ -1,14 +1,50 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const log = require("./log");
4
- const _1 = require("./_");
5
- const status_1 = require("./status");
6
- const queue_1 = require("./queue");
7
- const ChannelItem_1 = require("./ChannelItem");
39
+ const log = __importStar(require("./log"));
40
+ const _1 = __importDefault(require("./_"));
41
+ const status_1 = __importDefault(require("./status"));
42
+ const queue_1 = __importDefault(require("./queue"));
43
+ const ChannelItem_1 = __importDefault(require("./ChannelItem"));
8
44
  class Channel {
45
+ _items = [];
46
+ _epgGatheringInterval = _1.default.config.server.epgGatheringInterval || 1000 * 60 * 30;
9
47
  constructor() {
10
- this._items = [];
11
- this._epgGatheringInterval = _1.default.config.server.epgGatheringInterval || 1000 * 60 * 30;
12
48
  this._load();
13
49
  if (_1.default.config.server.disableEITParsing !== true) {
14
50
  setTimeout(this._epgGatherer.bind(this), 1000 * 60);
@@ -1 +1 @@
1
- {"version":3,"file":"Channel.js","sourceRoot":"","sources":["../../src/Mirakurun/Channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Channel.js","sourceRoot":"","sources":["../../src/Mirakurun/Channel.ts"],"names":[],"mappings":"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"}
@@ -4,24 +4,15 @@ import * as config from "./config";
4
4
  import ServiceItem from "./ServiceItem";
5
5
  import TSFilter from "./TSFilter";
6
6
  export default class ChannelItem {
7
- private _name;
8
- private _type;
9
- private _channel;
10
- private _satellite;
11
- private _space;
12
- private _freq;
13
- private _polarity;
14
- private _tsmfRelTs;
7
+ readonly name: string;
8
+ readonly type: common.ChannelType;
9
+ readonly channel: string;
10
+ readonly satellite: string;
11
+ readonly space: number;
12
+ readonly freq: number;
13
+ readonly polarity: "H" | "V";
14
+ readonly tsmfRelTs: number;
15
15
  constructor(config: config.Channel);
16
- get name(): string;
17
- get type(): common.ChannelType;
18
- get channel(): string;
19
- get satellite(): string;
20
- get space(): number;
21
- get freq(): number;
22
- get polarity(): "H" | "V";
23
- get tsmfRelTs(): number;
24
- toJSON(): config.Channel;
25
16
  addService(serviceId: number): void;
26
17
  getServices(): ServiceItem[];
27
18
  getStream(user: common.User, output: stream.Writable): Promise<TSFilter>;
@@ -1,19 +1,63 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const _1 = require("./_");
4
- const queue_1 = require("./queue");
5
- const log = require("./log");
6
- const ServiceItem_1 = require("./ServiceItem");
39
+ const _1 = __importDefault(require("./_"));
40
+ const queue_1 = __importDefault(require("./queue"));
41
+ const log = __importStar(require("./log"));
42
+ const ServiceItem_1 = __importDefault(require("./ServiceItem"));
7
43
  class ChannelItem {
44
+ name;
45
+ type;
46
+ channel;
47
+ satellite;
48
+ space;
49
+ freq;
50
+ polarity;
51
+ tsmfRelTs;
8
52
  constructor(config) {
9
- this._name = config.name;
10
- this._type = config.type;
11
- this._channel = config.channel;
12
- this._satellite = config.satellite;
13
- this._space = config.space;
14
- this._freq = config.freq;
15
- this._polarity = config.polarity;
16
- this._tsmfRelTs = config.tsmfRelTs;
53
+ this.name = config.name;
54
+ this.type = config.type;
55
+ this.channel = config.channel;
56
+ this.satellite = config.satellite;
57
+ this.space = config.space;
58
+ this.freq = config.freq;
59
+ this.polarity = config.polarity;
60
+ this.tsmfRelTs = config.tsmfRelTs;
17
61
  if (config.serviceId) {
18
62
  this.addService(config.serviceId);
19
63
  }
@@ -26,42 +70,6 @@ class ChannelItem {
26
70
  }
27
71
  }, 3000);
28
72
  }
29
- get name() {
30
- return this._name;
31
- }
32
- get type() {
33
- return this._type;
34
- }
35
- get channel() {
36
- return this._channel;
37
- }
38
- get satellite() {
39
- return this._satellite;
40
- }
41
- get space() {
42
- return this._space;
43
- }
44
- get freq() {
45
- return this._freq;
46
- }
47
- get polarity() {
48
- return this._polarity;
49
- }
50
- get tsmfRelTs() {
51
- return this._tsmfRelTs;
52
- }
53
- toJSON() {
54
- return {
55
- type: this._type,
56
- channel: this._channel,
57
- name: this._name,
58
- satellite: this._satellite,
59
- space: this._space,
60
- freq: this._freq,
61
- polarity: this._polarity,
62
- tsmfRelTs: this._tsmfRelTs
63
- };
64
- }
65
73
  addService(serviceId) {
66
74
  if (!_1.default.service) {
67
75
  process.nextTick(() => this.addService(serviceId));
@@ -70,25 +78,25 @@ class ChannelItem {
70
78
  if (_1.default.service.findByChannel(this).some(service => service.serviceId === serviceId) === true) {
71
79
  return;
72
80
  }
73
- log.debug("ChannelItem#'%s' serviceId=%d check has queued", this._name, serviceId);
81
+ log.debug("ChannelItem#'%s' serviceId=%d check has queued", this.name, serviceId);
74
82
  queue_1.default.add(async () => {
75
- log.info("ChannelItem#'%s' serviceId=%d check has started", this._name, serviceId);
83
+ log.info("ChannelItem#'%s' serviceId=%d check has started", this.name, serviceId);
76
84
  let services;
77
85
  try {
78
86
  services = await _1.default.tuner.getServices(this);
79
87
  }
80
88
  catch (e) {
81
- log.warn("ChannelItem#'%s' serviceId=%d check has failed [%s]", this._name, serviceId, e);
89
+ log.warn("ChannelItem#'%s' serviceId=%d check has failed [%s]", this.name, serviceId, e);
82
90
  setTimeout(() => this.addService(serviceId), 180000);
83
91
  return;
84
92
  }
85
93
  const service = services.find(service => service.serviceId === serviceId);
86
94
  if (!service) {
87
- log.warn("ChannelItem#'%s' serviceId=%d check has failed [no service]", this._name, serviceId);
95
+ log.warn("ChannelItem#'%s' serviceId=%d check has failed [no service]", this.name, serviceId);
88
96
  setTimeout(() => this.addService(serviceId), 3600000);
89
97
  return;
90
98
  }
91
- log.debug("ChannelItem#'%s' serviceId=%d: %s", this._name, serviceId, JSON.stringify(service, null, " "));
99
+ log.debug("ChannelItem#'%s' serviceId=%d: %s", this.name, serviceId, JSON.stringify(service, null, " "));
92
100
  _1.default.service.add(new ServiceItem_1.default(this, service.networkId, service.serviceId, service.name, service.type, service.logoId));
93
101
  });
94
102
  }
@@ -99,19 +107,19 @@ class ChannelItem {
99
107
  return _1.default.tuner.initChannelStream(this, user, output);
100
108
  }
101
109
  serviceScan(add) {
102
- log.debug("ChannelItem#'%s' service scan has queued", this._name);
110
+ log.debug("ChannelItem#'%s' service scan has queued", this.name);
103
111
  queue_1.default.add(async () => {
104
- log.info("ChannelItem#'%s' service scan has started", this._name);
112
+ log.info("ChannelItem#'%s' service scan has started", this.name);
105
113
  let services;
106
114
  try {
107
115
  services = await _1.default.tuner.getServices(this);
108
116
  }
109
117
  catch (e) {
110
- log.warn("ChannelItem#'%s' service scan has failed [%s]", this._name, e);
118
+ log.warn("ChannelItem#'%s' service scan has failed [%s]", this.name, e);
111
119
  setTimeout(() => this.serviceScan(add), add ? 180000 : 3600000);
112
120
  return;
113
121
  }
114
- log.debug("ChannelItem#'%s' services: %s", this._name, JSON.stringify(services, null, " "));
122
+ log.debug("ChannelItem#'%s' services: %s", this.name, JSON.stringify(services, null, " "));
115
123
  services.forEach(service => {
116
124
  const item = _1.default.service.get(service.networkId, service.serviceId);
117
125
  if (item !== null) {
@@ -126,7 +134,7 @@ class ChannelItem {
126
134
  _1.default.service.add(new ServiceItem_1.default(this, service.networkId, service.serviceId, service.name, service.type, service.logoId, service.remoteControlKeyId));
127
135
  }
128
136
  });
129
- log.info("ChannelItem#'%s' service scan has finished", this._name);
137
+ log.info("ChannelItem#'%s' service scan has finished", this.name);
130
138
  });
131
139
  }
132
140
  }