@sigmaott/base-next 1.0.6

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 (733) hide show
  1. package/README.md +1 -0
  2. package/hyrd-ui.preset.ts +463 -0
  3. package/i18n.config.ts +3 -0
  4. package/locales/en.yaml +719 -0
  5. package/locales/vi.yaml +726 -0
  6. package/nuxt-config.ts +23 -0
  7. package/nuxt.config.ts +267 -0
  8. package/package.json +119 -0
  9. package/public/routes.json +34 -0
  10. package/src/MediaInfoModule.wasm +0 -0
  11. package/src/api/api.ts +15 -0
  12. package/src/api/axios.ts +125 -0
  13. package/src/api/service-loading.ts +50 -0
  14. package/src/api-client-auth/.openapi-generator/FILES +83 -0
  15. package/src/api-client-auth/.openapi-generator/VERSION +1 -0
  16. package/src/api-client-auth/.openapi-generator-ignore +23 -0
  17. package/src/api-client-auth/api/admin-groups-api.ts +612 -0
  18. package/src/api-client-auth/api/admin-members-api.ts +708 -0
  19. package/src/api-client-auth/api/administration-api-groups-api.ts +547 -0
  20. package/src/api-client-auth/api/administration-apps-api.ts +709 -0
  21. package/src/api-client-auth/api/administration-packages-api.ts +547 -0
  22. package/src/api-client-auth/api/api-groups-api.ts +296 -0
  23. package/src/api-client-auth/api/apps-api.ts +1613 -0
  24. package/src/api-client-auth/api/basic-credential-api.ts +950 -0
  25. package/src/api-client-auth/api/groups-api.ts +702 -0
  26. package/src/api-client-auth/api/members-api.ts +708 -0
  27. package/src/api-client-auth/api/members-on-premise-api.ts +351 -0
  28. package/src/api-client-auth/api/packages-api.ts +296 -0
  29. package/src/api-client-auth/api/users-api.ts +1387 -0
  30. package/src/api-client-auth/api.ts +30 -0
  31. package/src/api-client-auth/base.ts +72 -0
  32. package/src/api-client-auth/common.ts +150 -0
  33. package/src/api-client-auth/configuration.ts +101 -0
  34. package/src/api-client-auth/git_push.sh +57 -0
  35. package/src/api-client-auth/index.ts +18 -0
  36. package/src/api-client-auth/models/add-member-dto.ts +42 -0
  37. package/src/api-client-auth/models/admin-permission.ts +44 -0
  38. package/src/api-client-auth/models/api-group-collection.ts +57 -0
  39. package/src/api-client-auth/models/api-group.ts +80 -0
  40. package/src/api-client-auth/models/api.ts +44 -0
  41. package/src/api-client-auth/models/app-collection.ts +57 -0
  42. package/src/api-client-auth/models/app.ts +147 -0
  43. package/src/api-client-auth/models/backdoor-cred.ts +39 -0
  44. package/src/api-client-auth/models/basic-cred-collection.ts +57 -0
  45. package/src/api-client-auth/models/basic-cred.ts +83 -0
  46. package/src/api-client-auth/models/change-password-dto.ts +42 -0
  47. package/src/api-client-auth/models/create-admin-group-dto.ts +39 -0
  48. package/src/api-client-auth/models/create-api-group-dto.ts +42 -0
  49. package/src/api-client-auth/models/create-app-by-user-dto.ts +36 -0
  50. package/src/api-client-auth/models/create-app-dto.ts +65 -0
  51. package/src/api-client-auth/models/create-basic-cred-dto.ts +39 -0
  52. package/src/api-client-auth/models/create-group-dto.ts +39 -0
  53. package/src/api-client-auth/models/create-package-dto.ts +48 -0
  54. package/src/api-client-auth/models/create-user-dto.ts +60 -0
  55. package/src/api-client-auth/models/free-trial.ts +54 -0
  56. package/src/api-client-auth/models/general-app.ts +48 -0
  57. package/src/api-client-auth/models/generate-app-id.ts +30 -0
  58. package/src/api-client-auth/models/group-collection.ts +57 -0
  59. package/src/api-client-auth/models/group.ts +75 -0
  60. package/src/api-client-auth/models/index.ts +60 -0
  61. package/src/api-client-auth/models/invite-email-dto.ts +30 -0
  62. package/src/api-client-auth/models/invite-member-dto.ts +36 -0
  63. package/src/api-client-auth/models/live-stream-quota.ts +42 -0
  64. package/src/api-client-auth/models/login-dto.ts +36 -0
  65. package/src/api-client-auth/models/login-result.ts +39 -0
  66. package/src/api-client-auth/models/member-collection.ts +57 -0
  67. package/src/api-client-auth/models/member.ts +92 -0
  68. package/src/api-client-auth/models/package-collection.ts +57 -0
  69. package/src/api-client-auth/models/package-permission.ts +44 -0
  70. package/src/api-client-auth/models/package.ts +66 -0
  71. package/src/api-client-auth/models/permission.ts +44 -0
  72. package/src/api-client-auth/models/quota.ts +45 -0
  73. package/src/api-client-auth/models/re-get-password-dto.ts +30 -0
  74. package/src/api-client-auth/models/register-dto.ts +54 -0
  75. package/src/api-client-auth/models/register-through-email-dto.ts +36 -0
  76. package/src/api-client-auth/models/rename-app-dto.ts +30 -0
  77. package/src/api-client-auth/models/resend-confirmation-dto.ts +30 -0
  78. package/src/api-client-auth/models/resend-invitation-dto.ts +30 -0
  79. package/src/api-client-auth/models/resend-result.ts +36 -0
  80. package/src/api-client-auth/models/reset-password-dto.ts +36 -0
  81. package/src/api-client-auth/models/revoke-basic-dto.ts +38 -0
  82. package/src/api-client-auth/models/signup-result.ts +45 -0
  83. package/src/api-client-auth/models/token-check-result.ts +36 -0
  84. package/src/api-client-auth/models/trial-remaining-days.ts +42 -0
  85. package/src/api-client-auth/models/update-admin-group-dto.ts +39 -0
  86. package/src/api-client-auth/models/update-api-group-dto.ts +30 -0
  87. package/src/api-client-auth/models/update-app-by-admin-dto.ts +48 -0
  88. package/src/api-client-auth/models/update-app-by-user-dto.ts +36 -0
  89. package/src/api-client-auth/models/update-basic-cred-dto.ts +30 -0
  90. package/src/api-client-auth/models/update-group-dto.ts +39 -0
  91. package/src/api-client-auth/models/update-member-dto.ts +30 -0
  92. package/src/api-client-auth/models/update-package-dto.ts +42 -0
  93. package/src/api-client-auth/models/update-password-member-dto.ts +30 -0
  94. package/src/api-client-auth/models/update-user-by-user-dto.ts +48 -0
  95. package/src/api-client-auth/models/user.ts +120 -0
  96. package/src/api-client-auth/models/validate-app-id.ts +36 -0
  97. package/src/api-client-billing/.openapi-generator/FILES +38 -0
  98. package/src/api-client-billing/.openapi-generator/VERSION +1 -0
  99. package/src/api-client-billing/.openapi-generator-ignore +23 -0
  100. package/src/api-client-billing/api/invoice-api.ts +363 -0
  101. package/src/api-client-billing/api/payment-methods-api.ts +414 -0
  102. package/src/api-client-billing/api/payment-plan-api.ts +121 -0
  103. package/src/api-client-billing/api/subscriptions-api.ts +121 -0
  104. package/src/api-client-billing/api/usages-api.ts +121 -0
  105. package/src/api-client-billing/api/vnpay-provider-api.ts +327 -0
  106. package/src/api-client-billing/api.ts +23 -0
  107. package/src/api-client-billing/base.ts +72 -0
  108. package/src/api-client-billing/common.ts +150 -0
  109. package/src/api-client-billing/configuration.ts +101 -0
  110. package/src/api-client-billing/git_push.sh +57 -0
  111. package/src/api-client-billing/index.ts +18 -0
  112. package/src/api-client-billing/models/common-paginate-response.ts +48 -0
  113. package/src/api-client-billing/models/dto-billing-item-info.ts +60 -0
  114. package/src/api-client-billing/models/dto-billing-item.ts +36 -0
  115. package/src/api-client-billing/models/dto-create-draft-invoice-request.ts +33 -0
  116. package/src/api-client-billing/models/dto-create-draft-invoice-response.ts +57 -0
  117. package/src/api-client-billing/models/dto-create-vnpay-card-form.ts +48 -0
  118. package/src/api-client-billing/models/dto-return-uri-response.ts +30 -0
  119. package/src/api-client-billing/models/index.ts +22 -0
  120. package/src/api-client-billing/models/invoices-get200-response.ts +42 -0
  121. package/src/api-client-billing/models/model-charge.ts +47 -0
  122. package/src/api-client-billing/models/model-charges-usage.ts +57 -0
  123. package/src/api-client-billing/models/model-graduated-range.ts +48 -0
  124. package/src/api-client-billing/models/model-info.ts +42 -0
  125. package/src/api-client-billing/models/model-invoice.ts +105 -0
  126. package/src/api-client-billing/models/model-item-usage.ts +54 -0
  127. package/src/api-client-billing/models/model-payment-method.ts +135 -0
  128. package/src/api-client-billing/models/model-product.ts +51 -0
  129. package/src/api-client-billing/models/model-properties.ts +39 -0
  130. package/src/api-client-billing/models/model-quota.ts +48 -0
  131. package/src/api-client-billing/models/model-subscription.ts +51 -0
  132. package/src/api-client-billing/models/model-usage-payment.ts +87 -0
  133. package/src/api-client-billing/models/payment-methods-get200-response.ts +42 -0
  134. package/src/api-client-billing/models/subscriptions-get200-response.ts +42 -0
  135. package/src/api-client-machine/.openapi-generator/FILES +90 -0
  136. package/src/api-client-machine/.openapi-generator/VERSION +1 -0
  137. package/src/api-client-machine/.openapi-generator-ignore +23 -0
  138. package/src/api-client-machine/api/apps-config-api.ts +523 -0
  139. package/src/api-client-machine/api/component-clusters-api.ts +741 -0
  140. package/src/api-client-machine/api/expose-api.ts +141 -0
  141. package/src/api-client-machine/api/machine-actions-api.ts +850 -0
  142. package/src/api-client-machine/api/machines-api.ts +524 -0
  143. package/src/api-client-machine/api/networks-api.ts +375 -0
  144. package/src/api-client-machine/api/sigma-clusters-api.ts +741 -0
  145. package/src/api-client-machine/api/sigma-machine-actions-api.ts +292 -0
  146. package/src/api-client-machine/api/sigma-machine-apps-configuration-api.ts +523 -0
  147. package/src/api-client-machine/api/sigma-machines-api.ts +557 -0
  148. package/src/api-client-machine/api/sigma-vod-server-api.ts +478 -0
  149. package/src/api-client-machine/api/sigma-vod-server-app-config-api.ts +980 -0
  150. package/src/api-client-machine/api/transcoder-configuration-api.ts +359 -0
  151. package/src/api-client-machine/api.ts +30 -0
  152. package/src/api-client-machine/base.ts +72 -0
  153. package/src/api-client-machine/common.ts +150 -0
  154. package/src/api-client-machine/configuration.ts +101 -0
  155. package/src/api-client-machine/git_push.sh +57 -0
  156. package/src/api-client-machine/index.ts +18 -0
  157. package/src/api-client-machine/models/actions-to-app-dto.ts +38 -0
  158. package/src/api-client-machine/models/add-license-machine-dto.ts +30 -0
  159. package/src/api-client-machine/models/app-status.ts +47 -0
  160. package/src/api-client-machine/models/check-quota-limit-result.ts +36 -0
  161. package/src/api-client-machine/models/cluster-log.ts +54 -0
  162. package/src/api-client-machine/models/component-cluster-collection.ts +57 -0
  163. package/src/api-client-machine/models/component-cluster.ts +116 -0
  164. package/src/api-client-machine/models/create-component-machine-cluster-dto.ts +86 -0
  165. package/src/api-client-machine/models/create-sigma-machine-cluster-dto.ts +77 -0
  166. package/src/api-client-machine/models/create-vodroute-dto.ts +42 -0
  167. package/src/api-client-machine/models/decklink-collection.ts +57 -0
  168. package/src/api-client-machine/models/decklink.ts +42 -0
  169. package/src/api-client-machine/models/http-app.ts +45 -0
  170. package/src/api-client-machine/models/https-config.ts +42 -0
  171. package/src/api-client-machine/models/index.ts +67 -0
  172. package/src/api-client-machine/models/info-channel.ts +42 -0
  173. package/src/api-client-machine/models/ingest-app.ts +60 -0
  174. package/src/api-client-machine/models/ingest-config.ts +74 -0
  175. package/src/api-client-machine/models/ingest-update-config-dto.ts +68 -0
  176. package/src/api-client-machine/models/machine-cluster-collection.ts +57 -0
  177. package/src/api-client-machine/models/machine-cluster.ts +120 -0
  178. package/src/api-client-machine/models/machine-details-license.ts +42 -0
  179. package/src/api-client-machine/models/machine-details.ts +127 -0
  180. package/src/api-client-machine/models/machine-dto.ts +42 -0
  181. package/src/api-client-machine/models/machine-dump.ts +108 -0
  182. package/src/api-client-machine/models/machine.ts +42 -0
  183. package/src/api-client-machine/models/network-collection.ts +57 -0
  184. package/src/api-client-machine/models/network-interface.ts +36 -0
  185. package/src/api-client-machine/models/network.ts +66 -0
  186. package/src/api-client-machine/models/origin-config.ts +50 -0
  187. package/src/api-client-machine/models/origin-update-config-dto.ts +59 -0
  188. package/src/api-client-machine/models/packager-component-cluster.ts +42 -0
  189. package/src/api-client-machine/models/packager-live-cluster.ts +42 -0
  190. package/src/api-client-machine/models/packager-to-component-cluster.ts +51 -0
  191. package/src/api-client-machine/models/quotas-result.ts +30 -0
  192. package/src/api-client-machine/models/registration-config.ts +48 -0
  193. package/src/api-client-machine/models/sigma-cluster-ingest-config.ts +42 -0
  194. package/src/api-client-machine/models/sigma-cluster-origin-config.ts +30 -0
  195. package/src/api-client-machine/models/sigma-ingest-config-entity.ts +42 -0
  196. package/src/api-client-machine/models/sigma-ingest-config.ts +42 -0
  197. package/src/api-client-machine/models/sigma-origin-config-entity.ts +30 -0
  198. package/src/api-client-machine/models/sigma-origin-config.ts +30 -0
  199. package/src/api-client-machine/models/stats.ts +57 -0
  200. package/src/api-client-machine/models/status.ts +36 -0
  201. package/src/api-client-machine/models/stop-channel.ts +48 -0
  202. package/src/api-client-machine/models/transcoder-apps.ts +42 -0
  203. package/src/api-client-machine/models/transcoder-collection.ts +57 -0
  204. package/src/api-client-machine/models/transcoder-component-cluster.ts +42 -0
  205. package/src/api-client-machine/models/transcoder-license.ts +42 -0
  206. package/src/api-client-machine/models/transcoder-live-cluster.ts +42 -0
  207. package/src/api-client-machine/models/transcoder-live-to-component-cluster.ts +45 -0
  208. package/src/api-client-machine/models/transcoder-network.ts +42 -0
  209. package/src/api-client-machine/models/transcoder.ts +276 -0
  210. package/src/api-client-machine/models/update-app-config-dto-config-data.ts +33 -0
  211. package/src/api-client-machine/models/update-app-config-dto.ts +33 -0
  212. package/src/api-client-machine/models/update-app-config-of-sigma-vod-server-dto-config-data.ts +30 -0
  213. package/src/api-client-machine/models/update-app-config-of-sigma-vod-server-dto.ts +33 -0
  214. package/src/api-client-machine/models/update-component-cluster-dto.ts +72 -0
  215. package/src/api-client-machine/models/update-machine-cluster-dto.ts +63 -0
  216. package/src/api-client-machine/models/update-machine-dto.ts +42 -0
  217. package/src/api-client-machine/models/update-packager-live-cluster.ts +42 -0
  218. package/src/api-client-machine/models/update-packager-to-component-cluster.ts +51 -0
  219. package/src/api-client-machine/models/update-route-config-of-sigma-vod-server.ts +33 -0
  220. package/src/api-client-machine/models/update-route-config-sigma-machine.ts +42 -0
  221. package/src/api-client-machine/models/update-transcoder-live-cluster.ts +42 -0
  222. package/src/api-client-machine/models/update-transcoder-to-component-cluster.ts +45 -0
  223. package/src/api-client-machine/models/video-encoder.ts +56 -0
  224. package/src/api-client-machine/models/vodroute.ts +60 -0
  225. package/src/api-client-noti/.openapi-generator/FILES +13 -0
  226. package/src/api-client-noti/.openapi-generator/VERSION +1 -0
  227. package/src/api-client-noti/.openapi-generator-ignore +23 -0
  228. package/src/api-client-noti/api/notification-api.ts +386 -0
  229. package/src/api-client-noti/api.ts +18 -0
  230. package/src/api-client-noti/base.ts +72 -0
  231. package/src/api-client-noti/common.ts +150 -0
  232. package/src/api-client-noti/configuration.ts +101 -0
  233. package/src/api-client-noti/git_push.sh +57 -0
  234. package/src/api-client-noti/index.ts +18 -0
  235. package/src/api-client-noti/models/index.ts +2 -0
  236. package/src/api-client-noti/models/notification-collection.ts +57 -0
  237. package/src/api-client-noti/models/notification.ts +101 -0
  238. package/src/api-client-transcode/.openapi-generator/FILES +129 -0
  239. package/src/api-client-transcode/.openapi-generator/VERSION +1 -0
  240. package/src/api-client-transcode/.openapi-generator-ignore +23 -0
  241. package/src/api-client-transcode/api/alert-logs-apiapi.ts +281 -0
  242. package/src/api-client-transcode/api/channel-package-inputs-apiapi.ts +650 -0
  243. package/src/api-client-transcode/api/channel-transcode-inputs-apiapi.ts +650 -0
  244. package/src/api-client-transcode/api/channels-crudapiapi.ts +869 -0
  245. package/src/api-client-transcode/api/channels-job-action-apiapi.ts +434 -0
  246. package/src/api-client-transcode/api/drm-credentials-api.ts +525 -0
  247. package/src/api-client-transcode/api/event-channel-action-apiapi.ts +363 -0
  248. package/src/api-client-transcode/api/event-channel-crudapiapi.ts +545 -0
  249. package/src/api-client-transcode/api/fast-channel-action-apiapi.ts +301 -0
  250. package/src/api-client-transcode/api/fast-channel-apiapi.ts +525 -0
  251. package/src/api-client-transcode/api/fast-channel-programs-api-api.ts +525 -0
  252. package/src/api-client-transcode/api/multi-channel-action-apiapi.ts +387 -0
  253. package/src/api-client-transcode/api/sigma-transcode-live-interactive-action-api.ts +152 -0
  254. package/src/api-client-transcode/api/single-channel-action-apiapi.ts +1155 -0
  255. package/src/api-client-transcode/api/transcode-templates-apiapi.ts +541 -0
  256. package/src/api-client-transcode/api.ts +32 -0
  257. package/src/api-client-transcode/base.ts +71 -0
  258. package/src/api-client-transcode/common.ts +138 -0
  259. package/src/api-client-transcode/configuration.ts +101 -0
  260. package/src/api-client-transcode/git_push.sh +57 -0
  261. package/src/api-client-transcode/index.ts +18 -0
  262. package/src/api-client-transcode/models/ads-dto.ts +137 -0
  263. package/src/api-client-transcode/models/alert-log-collection.ts +55 -0
  264. package/src/api-client-transcode/models/audio-watermark-dto.ts +59 -0
  265. package/src/api-client-transcode/models/blackout-slate-dto.ts +36 -0
  266. package/src/api-client-transcode/models/catchup-dto.ts +43 -0
  267. package/src/api-client-transcode/models/channel-collection.ts +55 -0
  268. package/src/api-client-transcode/models/channel-config-advance-dto-info.ts +25 -0
  269. package/src/api-client-transcode/models/channel-config-advance-dto.ts +121 -0
  270. package/src/api-client-transcode/models/channel-config-advance-info-dto.ts +78 -0
  271. package/src/api-client-transcode/models/channel-config-base.ts +69 -0
  272. package/src/api-client-transcode/models/channel-config-blackout-entity.ts +36 -0
  273. package/src/api-client-transcode/models/channel-config-dto.ts +72 -0
  274. package/src/api-client-transcode/models/channel-config-interactive-entity.ts +30 -0
  275. package/src/api-client-transcode/models/channel-config-template-dto.ts +66 -0
  276. package/src/api-client-transcode/models/channel-detail-catchup-dto.ts +37 -0
  277. package/src/api-client-transcode/models/channel-detail-dto.ts +69 -0
  278. package/src/api-client-transcode/models/channel-detail-input.ts +43 -0
  279. package/src/api-client-transcode/models/channel-detail-package.ts +50 -0
  280. package/src/api-client-transcode/models/channel-detail-transcode.ts +37 -0
  281. package/src/api-client-transcode/models/channel-job-detail.ts +84 -0
  282. package/src/api-client-transcode/models/channel-stats.ts +36 -0
  283. package/src/api-client-transcode/models/channel-template-data-dto.ts +59 -0
  284. package/src/api-client-transcode/models/channel-template-dto-data.ts +28 -0
  285. package/src/api-client-transcode/models/channel-template-dto.ts +63 -0
  286. package/src/api-client-transcode/models/channel.ts +168 -0
  287. package/src/api-client-transcode/models/create-alert-log-dto.ts +138 -0
  288. package/src/api-client-transcode/models/create-channel-dto.ts +84 -0
  289. package/src/api-client-transcode/models/create-drm-credential-dto.ts +63 -0
  290. package/src/api-client-transcode/models/create-event-channel-dto-targets.ts +26 -0
  291. package/src/api-client-transcode/models/create-event-channel-dto.ts +76 -0
  292. package/src/api-client-transcode/models/create-fast-channel-dto.ts +42 -0
  293. package/src/api-client-transcode/models/create-fast-program-dto.ts +72 -0
  294. package/src/api-client-transcode/models/drm-credential-collection.ts +55 -0
  295. package/src/api-client-transcode/models/drm-credential-entity.ts +87 -0
  296. package/src/api-client-transcode/models/drm-data-dto.ts +54 -0
  297. package/src/api-client-transcode/models/drm-data-entity.ts +54 -0
  298. package/src/api-client-transcode/models/drm-dto.ts +103 -0
  299. package/src/api-client-transcode/models/event-channel-collection.ts +55 -0
  300. package/src/api-client-transcode/models/event-channel-config-dto.ts +78 -0
  301. package/src/api-client-transcode/models/event-channel-config-entity.ts +75 -0
  302. package/src/api-client-transcode/models/event-channel-input-dto.ts +45 -0
  303. package/src/api-client-transcode/models/event-channel-input-entity.ts +45 -0
  304. package/src/api-client-transcode/models/event-channel-transcoder-dto.ts +56 -0
  305. package/src/api-client-transcode/models/event-channel.ts +147 -0
  306. package/src/api-client-transcode/models/event-profile-dto.ts +62 -0
  307. package/src/api-client-transcode/models/event-target-data-dto.ts +95 -0
  308. package/src/api-client-transcode/models/event-target-dto.ts +49 -0
  309. package/src/api-client-transcode/models/fast-channel-collection.ts +55 -0
  310. package/src/api-client-transcode/models/fast-channel.ts +75 -0
  311. package/src/api-client-transcode/models/fast-program-collection.ts +55 -0
  312. package/src/api-client-transcode/models/fast-program.ts +84 -0
  313. package/src/api-client-transcode/models/fingerprint-dto.ts +42 -0
  314. package/src/api-client-transcode/models/index.ts +104 -0
  315. package/src/api-client-transcode/models/input-collection.ts +55 -0
  316. package/src/api-client-transcode/models/input-data-dto.ts +104 -0
  317. package/src/api-client-transcode/models/input-data-item-dto.ts +42 -0
  318. package/src/api-client-transcode/models/input-dto.ts +30 -0
  319. package/src/api-client-transcode/models/input-entity.ts +30 -0
  320. package/src/api-client-transcode/models/input-info-response.ts +31 -0
  321. package/src/api-client-transcode/models/input-info.ts +123 -0
  322. package/src/api-client-transcode/models/input-machine-config.ts +45 -0
  323. package/src/api-client-transcode/models/input-program.ts +66 -0
  324. package/src/api-client-transcode/models/interactive-dto.ts +30 -0
  325. package/src/api-client-transcode/models/interactive-publish-dto.ts +30 -0
  326. package/src/api-client-transcode/models/job-entity.ts +102 -0
  327. package/src/api-client-transcode/models/low-latency-dto.ts +68 -0
  328. package/src/api-client-transcode/models/machine-config-dto.ts +75 -0
  329. package/src/api-client-transcode/models/main-input-dto.ts +62 -0
  330. package/src/api-client-transcode/models/main-input-entity.ts +54 -0
  331. package/src/api-client-transcode/models/maintenance-dto.ts +30 -0
  332. package/src/api-client-transcode/models/manifest-dto.ts +62 -0
  333. package/src/api-client-transcode/models/package-input-collection.ts +55 -0
  334. package/src/api-client-transcode/models/package-input-data-dto.ts +99 -0
  335. package/src/api-client-transcode/models/package-input-list.ts +36 -0
  336. package/src/api-client-transcode/models/package-input.ts +115 -0
  337. package/src/api-client-transcode/models/post-input-dto.ts +48 -0
  338. package/src/api-client-transcode/models/post-input-entity.ts +48 -0
  339. package/src/api-client-transcode/models/pre-input-dto.ts +54 -0
  340. package/src/api-client-transcode/models/pre-input-entity.ts +54 -0
  341. package/src/api-client-transcode/models/preset-dto.ts +247 -0
  342. package/src/api-client-transcode/models/profile-default-response-dto.ts +30 -0
  343. package/src/api-client-transcode/models/profile-dto.ts +62 -0
  344. package/src/api-client-transcode/models/profile-entity.ts +60 -0
  345. package/src/api-client-transcode/models/scte35-dto.ts +36 -0
  346. package/src/api-client-transcode/models/start-over-dto.ts +30 -0
  347. package/src/api-client-transcode/models/switch-input-dto.ts +56 -0
  348. package/src/api-client-transcode/models/switch-input-entity.ts +44 -0
  349. package/src/api-client-transcode/models/target-data-dto.ts +101 -0
  350. package/src/api-client-transcode/models/target-dto.ts +44 -0
  351. package/src/api-client-transcode/models/target-entity.ts +55 -0
  352. package/src/api-client-transcode/models/target-profile-dto.ts +71 -0
  353. package/src/api-client-transcode/models/target-profile.ts +71 -0
  354. package/src/api-client-transcode/models/target-template-dto.ts +44 -0
  355. package/src/api-client-transcode/models/target-update-dto.ts +50 -0
  356. package/src/api-client-transcode/models/transcode-input.ts +144 -0
  357. package/src/api-client-transcode/models/transcoder.ts +36 -0
  358. package/src/api-client-transcode/models/trick-play-dto.ts +54 -0
  359. package/src/api-client-transcode/models/update-channel-dto-targets.ts +27 -0
  360. package/src/api-client-transcode/models/update-channel-dto.ts +84 -0
  361. package/src/api-client-transcode/models/update-drm-management-dto.ts +63 -0
  362. package/src/api-client-transcode/models/update-event-channel-dto.ts +76 -0
  363. package/src/api-client-transcode/models/update-fast-channel-dto.ts +42 -0
  364. package/src/api-client-transcode/models/update-fast-program-dto.ts +30 -0
  365. package/src/api-client-transcode/models/watermark-dto.ts +66 -0
  366. package/src/api-client-transcode/models/watermark-entity.ts +102 -0
  367. package/src/app/spa-loading-template.html +127 -0
  368. package/src/app.config.ts +2 -0
  369. package/src/assets/global.css.ts +3 -0
  370. package/src/assets/scss/element/dark.scss +13 -0
  371. package/src/assets/scss/element/index.scss +26 -0
  372. package/src/assets/scss/index.scss +181 -0
  373. package/src/components/AdvancedFilter/SSAdvancedFilterItem.vue +180 -0
  374. package/src/components/AdvancedFilter/SSAdvancedFilterItemCustom.vue +165 -0
  375. package/src/components/AdvancedFilter/SSAdvancedFilterItemDefined.vue +298 -0
  376. package/src/components/AdvancedFilter/SSAdvancedFilterItemSchedule.vue +293 -0
  377. package/src/components/AdvancedFilter/SSAdvancedFilterMain.vue +196 -0
  378. package/src/components/AdvancedFilter/types.ts +37 -0
  379. package/src/components/AdvancedFilterReport/SSAdvancedFilterReportItem.vue +110 -0
  380. package/src/components/AdvancedFilterReport/SSAdvancedFilterReportItemDefined.vue +159 -0
  381. package/src/components/AdvancedFilterReport/SSAdvancedFilterReportMain.vue +197 -0
  382. package/src/components/AdvancedFilterReport/types.ts +19 -0
  383. package/src/components/AdvancedFilterSsai/SSAdvancedFilterSsaiItem.vue +102 -0
  384. package/src/components/AdvancedFilterSsai/SSAdvancedFilterSsaiItemDefined.vue +119 -0
  385. package/src/components/AdvancedFilterSsai/SSAdvancedFilterSsaiMain.vue +194 -0
  386. package/src/components/AdvancedFilterSsai/types.ts +19 -0
  387. package/src/components/Asset/AssetAddPlaylist.vue +169 -0
  388. package/src/components/Asset/AssetExtra.vue +46 -0
  389. package/src/components/Asset/AssetImportLinks.vue +281 -0
  390. package/src/components/Asset/AssetInfiniteSelect.vue +62 -0
  391. package/src/components/Asset/AssetItem.vue +194 -0
  392. package/src/components/Asset/AssetItemPreview.vue +117 -0
  393. package/src/components/Asset/AssetList.vue +869 -0
  394. package/src/components/Asset/AssetMeta.vue +97 -0
  395. package/src/components/Asset/AssetPicker.vue +204 -0
  396. package/src/components/Asset/AssetPlaylist.vue +414 -0
  397. package/src/components/Asset/AssetPlaylistInfiniteSelect.vue +136 -0
  398. package/src/components/Asset/AssetPlaylistModalAdd.vue +138 -0
  399. package/src/components/Asset/AssetPreview.vue +89 -0
  400. package/src/components/Asset/AssetShareModal.vue +131 -0
  401. package/src/components/Asset/AssetTable.vue +365 -0
  402. package/src/components/Asset/FormUploadAsset.vue +647 -0
  403. package/src/components/Asset/FormUploadAssetItem.vue +115 -0
  404. package/src/components/Asset/FormUploadAssetProgress.vue +161 -0
  405. package/src/components/Asset/Scrubber.vue +57 -0
  406. package/src/components/Asset/VideoPlayer.vue +226 -0
  407. package/src/components/Asset/VideoPreview.vue +102 -0
  408. package/src/components/Asset/VideoPreviewConfig.vue +329 -0
  409. package/src/components/Asset/VideoPreviewConfigMessage.vue +120 -0
  410. package/src/components/Asset/VideoPreviewConfigVod.vue +287 -0
  411. package/src/components/Asset/VideoPreviewNew.vue +66 -0
  412. package/src/components/Asset/VideoPreviewNewLoader.vue +144 -0
  413. package/src/components/Asset/VideoPreviewWrapper.vue +208 -0
  414. package/src/components/Asset/asset-context.ts +24 -0
  415. package/src/components/Asset/usePickerStore.ts +55 -0
  416. package/src/components/AuthLayout/AuthLayoutSimple.vue +150 -0
  417. package/src/components/AuthLayout/index.vue +151 -0
  418. package/src/components/AutoRefresh/AutoRefresh.vue +91 -0
  419. package/src/components/AutoRefresh/AutoRefreshOld.vue +87 -0
  420. package/src/components/AutoRefresh/useRefresh.ts +93 -0
  421. package/src/components/BackButton.vue +13 -0
  422. package/src/components/Card/CardInfo.vue +21 -0
  423. package/src/components/Channel/AIConfig.vue +101 -0
  424. package/src/components/Channel/AdvancedForm.vue +542 -0
  425. package/src/components/Channel/ChannelListGrid.vue +154 -0
  426. package/src/components/Channel/ConfigBlackout.vue +98 -0
  427. package/src/components/Channel/ConfigCensorship.vue +387 -0
  428. package/src/components/Channel/ConfigForensicWatermark.vue +152 -0
  429. package/src/components/Channel/ConfigForm.vue +102 -0
  430. package/src/components/Channel/ConfigInformation.vue +191 -0
  431. package/src/components/Channel/ConfigInteraction.vue +11 -0
  432. package/src/components/Channel/ConfigNameModifier.vue +15 -0
  433. package/src/components/Channel/ConfigOptionItem.vue +114 -0
  434. package/src/components/Channel/ConfigOptions.vue +181 -0
  435. package/src/components/Channel/ConfigPte.vue +368 -0
  436. package/src/components/Channel/ConfigScte.vue +442 -0
  437. package/src/components/Channel/ConfigTranscoder.vue +353 -0
  438. package/src/components/Channel/ConfigWaterMarkAudio.vue +52 -0
  439. package/src/components/Channel/ConfigWatermark.vue +76 -0
  440. package/src/components/Channel/ConfigWatermarkEventChannel.vue +86 -0
  441. package/src/components/Channel/ConfigWatermarkItem.vue +239 -0
  442. package/src/components/Channel/HeaderItem.vue +75 -0
  443. package/src/components/Channel/InputDetail.vue +68 -0
  444. package/src/components/Channel/InputForm.vue +175 -0
  445. package/src/components/Channel/InputList.vue +38 -0
  446. package/src/components/Channel/InputPackageDetail.vue +125 -0
  447. package/src/components/Channel/MediaProfileFormModal.vue +79 -0
  448. package/src/components/Channel/MediaProfileModify.vue +229 -0
  449. package/src/components/Channel/MessageButtonGetHelp.vue +30 -0
  450. package/src/components/Channel/MessageTooltipAi.vue +29 -0
  451. package/src/components/Channel/MultipleSelectProfile.vue +312 -0
  452. package/src/components/Channel/PackageInputItem.vue +13 -0
  453. package/src/components/Channel/PresetConfigItem.vue +1957 -0
  454. package/src/components/Channel/PresetConfigItemExtra.vue +59 -0
  455. package/src/components/Channel/PresetConfigItemPId.vue +145 -0
  456. package/src/components/Channel/ProfileConfigItem.vue +829 -0
  457. package/src/components/Channel/ProfileDetailsList.vue +160 -0
  458. package/src/components/Channel/ProfileForm.vue +134 -0
  459. package/src/components/Channel/ProfileList.vue +228 -0
  460. package/src/components/Channel/SelectServer.vue +134 -0
  461. package/src/components/Channel/SignalLoss.vue +92 -0
  462. package/src/components/Channel/SwitchInputButton.vue +38 -0
  463. package/src/components/Channel/TargetCatchup.vue +75 -0
  464. package/src/components/Channel/TargetDataInfo.vue +100 -0
  465. package/src/components/Channel/TargetDestination.vue +375 -0
  466. package/src/components/Channel/TargetDrm.vue +518 -0
  467. package/src/components/Channel/TargetForm.vue +136 -0
  468. package/src/components/Channel/TargetList.vue +159 -0
  469. package/src/components/Channel/TargetLowLatency.vue +107 -0
  470. package/src/components/Channel/TargetMabrOutput.vue +58 -0
  471. package/src/components/Channel/TargetMabrOutputItem.vue +91 -0
  472. package/src/components/Channel/TargetManifest.vue +94 -0
  473. package/src/components/Channel/TargetNetworkInterface.vue +95 -0
  474. package/src/components/Channel/TargetOutputMultiplex.vue +237 -0
  475. package/src/components/Channel/TargetOutputType.vue +201 -0
  476. package/src/components/Channel/TargetOutputUdp.vue +200 -0
  477. package/src/components/Channel/TargetPreset.vue +541 -0
  478. package/src/components/Channel/TargetProfileAudioGroup.vue +27 -0
  479. package/src/components/Channel/TargetProfileProgram.vue +43 -0
  480. package/src/components/Channel/TargetProfileURI.vue +68 -0
  481. package/src/components/Channel/TargetSrtOutput.vue +35 -0
  482. package/src/components/Channel/TargetSrtOutputItem.vue +83 -0
  483. package/src/components/Channel/TargetStartover.vue +40 -0
  484. package/src/components/Channel/WarningName.vue +39 -0
  485. package/src/components/Channel/WarningOutput.vue +40 -0
  486. package/src/components/CollapseTagsTooltip/CollapseTagsTooltip.vue +87 -0
  487. package/src/components/CollapseTagsTooltip/index.ts +1 -0
  488. package/src/components/CopyButton.vue +46 -0
  489. package/src/components/CopyText.vue +40 -0
  490. package/src/components/CopyTextButton.vue +40 -0
  491. package/src/components/DefaultLayout/DefaultLayout.vue +134 -0
  492. package/src/components/DefaultLayout/GlobalASide.vue +75 -0
  493. package/src/components/DefaultLayout/GlobalFooter.vue +15 -0
  494. package/src/components/DefaultLayout/GlobalHeader.vue +43 -0
  495. package/src/components/DefaultLayout/Logo.vue +35 -0
  496. package/src/components/DefaultLayout/Menu.vue +464 -0
  497. package/src/components/DefaultLayout/RightMenu.vue +93 -0
  498. package/src/components/DialogWarningAddLicense.vue +37 -0
  499. package/src/components/Epg/Epg.vue +24 -0
  500. package/src/components/Epg/components/Channel.vue +28 -0
  501. package/src/components/Epg/components/Channels.vue +33 -0
  502. package/src/components/Epg/components/Layout.vue +121 -0
  503. package/src/components/Epg/components/Line.vue +41 -0
  504. package/src/components/Epg/components/Loader.vue +23 -0
  505. package/src/components/Epg/components/Program.vue +101 -0
  506. package/src/components/Epg/components/SideBar.vue +18 -0
  507. package/src/components/Epg/components/Timeline.vue +72 -0
  508. package/src/components/Epg/helpers/common.ts +68 -0
  509. package/src/components/Epg/helpers/epg.ts +192 -0
  510. package/src/components/Epg/helpers/index.ts +5 -0
  511. package/src/components/Epg/helpers/interfaces.ts +54 -0
  512. package/src/components/Epg/helpers/time.ts +51 -0
  513. package/src/components/Epg/helpers/types.ts +26 -0
  514. package/src/components/Epg/helpers/variables.ts +33 -0
  515. package/src/components/Epg/hooks/index.ts +2 -0
  516. package/src/components/Epg/hooks/useEpg.ts +160 -0
  517. package/src/components/Epg/hooks/useLayout.ts +187 -0
  518. package/src/components/Epg/hooks/useProgram.ts +63 -0
  519. package/src/components/Epg/hooks/useTimeline.ts +35 -0
  520. package/src/components/Epg/index.ts +4 -0
  521. package/src/components/Epg/store.ts +85 -0
  522. package/src/components/Epg/theme.ts +44 -0
  523. package/src/components/Exception/403.png +0 -0
  524. package/src/components/Exception/403.vue +58 -0
  525. package/src/components/Exception/404.png +0 -0
  526. package/src/components/Exception/404.vue +59 -0
  527. package/src/components/Exception/500.png +0 -0
  528. package/src/components/Exception/500.vue +39 -0
  529. package/src/components/Exception/index.scss +30 -0
  530. package/src/components/Field.vue +193 -0
  531. package/src/components/FilterQuerySchema/FilterQuerySchemaForm.vue +200 -0
  532. package/src/components/FilterQuerySchema/QueryTag.vue +109 -0
  533. package/src/components/FilterQuerySchema/Tag.vue +68 -0
  534. package/src/components/FilterTimeDimensions.vue +265 -0
  535. package/src/components/FilterTimeDimensionsSingle.vue +214 -0
  536. package/src/components/HelpPanel.vue +87 -0
  537. package/src/components/HexagonPro.vue +7 -0
  538. package/src/components/IconCopyButton.vue +43 -0
  539. package/src/components/InformationLabel.vue +67 -0
  540. package/src/components/Input/InputTags.vue +136 -0
  541. package/src/components/Input/index.ts +1 -0
  542. package/src/components/MainDefaultLayout/index.vue +120 -0
  543. package/src/components/NoticeAddLicense.vue +20 -0
  544. package/src/components/NoticeRunningOutResources.vue +20 -0
  545. package/src/components/Pagination.vue +61 -0
  546. package/src/components/QueryBuilder/QueryBuilder.vue +141 -0
  547. package/src/components/QueryBuilder/components/inputs/DateInputField.vue +105 -0
  548. package/src/components/QueryBuilder/components/inputs/FieldSelect.vue +44 -0
  549. package/src/components/QueryBuilder/components/inputs/InputMultiSelect.vue +60 -0
  550. package/src/components/QueryBuilder/components/inputs/InputSelect.vue +39 -0
  551. package/src/components/QueryBuilder/components/inputs/NumberInputField.vue +91 -0
  552. package/src/components/QueryBuilder/components/inputs/OperatorSelect.vue +59 -0
  553. package/src/components/QueryBuilder/components/inputs/TextInput.vue +40 -0
  554. package/src/components/QueryBuilder/components/inputs/TimeInputField.vue +114 -0
  555. package/src/components/QueryBuilder/components/inputs/logics.ts +27 -0
  556. package/src/components/QueryBuilder/components/item/InputMultiOptions.vue +56 -0
  557. package/src/components/QueryBuilder/components/item/QueryGroup.vue +71 -0
  558. package/src/components/QueryBuilder/components/item/QueryGroupActions.vue +76 -0
  559. package/src/components/QueryBuilder/components/item/QueryRule.vue +233 -0
  560. package/src/components/QueryBuilder/useConfigStore.ts +27 -0
  561. package/src/components/QueryBuilder/utils/config.ts +194 -0
  562. package/src/components/QueryBuilder/utils/index.ts +3 -0
  563. package/src/components/QueryBuilder/utils/mongodb.ts +175 -0
  564. package/src/components/QueryBuilder/utils/rules.ts +213 -0
  565. package/src/components/RecommendedConfigurationPTE.vue +238 -0
  566. package/src/components/Server/MachineConfig.vue +333 -0
  567. package/src/components/Server/ServerConfig.vue +599 -0
  568. package/src/components/Server/useQueryMachine.ts +380 -0
  569. package/src/components/Server/validator.ts +13 -0
  570. package/src/components/SwitchDark.vue +19 -0
  571. package/src/components/SwitchLang.vue +31 -0
  572. package/src/components/TableEmpty.vue +50 -0
  573. package/src/components/Toast/ToastNoti.vue +52 -0
  574. package/src/components/Tool/ForensicWatermarkingDialog.vue +39 -0
  575. package/src/components/Tool/FormRecord.vue +162 -0
  576. package/src/components/Tool/FormUpload.vue +118 -0
  577. package/src/components/Tool/ResultChecking.vue +103 -0
  578. package/src/components/Tool/Watermarking.vue +159 -0
  579. package/src/components/Tool/record.js +92 -0
  580. package/src/components/Tooltip/Ellipsis.vue +52 -0
  581. package/src/components/Tooltip/index.vue +47 -0
  582. package/src/components/app/AppList.vue +50 -0
  583. package/src/components/button/Button.vue +27 -0
  584. package/src/components/button/index.ts +37 -0
  585. package/src/components/context-menu/ContextMenu.vue +15 -0
  586. package/src/components/context-menu/ContextMenuCheckboxItem.vue +39 -0
  587. package/src/components/context-menu/ContextMenuContent.vue +35 -0
  588. package/src/components/context-menu/ContextMenuGroup.vue +11 -0
  589. package/src/components/context-menu/ContextMenuItem.vue +33 -0
  590. package/src/components/context-menu/ContextMenuLabel.vue +24 -0
  591. package/src/components/context-menu/ContextMenuPortal.vue +11 -0
  592. package/src/components/context-menu/ContextMenuRadioGroup.vue +19 -0
  593. package/src/components/context-menu/ContextMenuRadioItem.vue +39 -0
  594. package/src/components/context-menu/ContextMenuSeparator.vue +19 -0
  595. package/src/components/context-menu/ContextMenuShortcut.vue +13 -0
  596. package/src/components/context-menu/ContextMenuSub.vue +19 -0
  597. package/src/components/context-menu/ContextMenuSubContent.vue +34 -0
  598. package/src/components/context-menu/ContextMenuSubTrigger.vue +33 -0
  599. package/src/components/context-menu/ContextMenuTrigger.vue +13 -0
  600. package/src/components/context-menu/index.ts +14 -0
  601. package/src/components/dashboard/SSDashboardChartRoot.vue +18 -0
  602. package/src/components/dashboard/SSDashboardDocument.vue +45 -0
  603. package/src/components/dashboard/SSDashboardEmpty.vue +16 -0
  604. package/src/components/dashboard/SSDashboardGuideline.vue +45 -0
  605. package/src/components/dashboard/SSDashboardInfo.vue +36 -0
  606. package/src/components/dashboard/SSDashboardInfoRoot.vue +9 -0
  607. package/src/components/dashboard/SSDashboardInfoTime.vue +38 -0
  608. package/src/components/markdown/Markdown.vue +295 -0
  609. package/src/components/tabs/Tabs.vue +15 -0
  610. package/src/components/tabs/TabsContent.vue +22 -0
  611. package/src/components/tabs/TabsList.vue +22 -0
  612. package/src/components/tabs/TabsTrigger.vue +26 -0
  613. package/src/composables/asset.ts +13 -0
  614. package/src/composables/channel.ts +333 -0
  615. package/src/composables/country.ts +788 -0
  616. package/src/composables/error.ts +24 -0
  617. package/src/composables/form.ts +351 -0
  618. package/src/composables/getBuildTime.ts +7 -0
  619. package/src/composables/micro.ts +113 -0
  620. package/src/composables/microState.ts +22 -0
  621. package/src/composables/notiGlobal.ts +19 -0
  622. package/src/composables/plan.ts +162 -0
  623. package/src/composables/refReset.ts +12 -0
  624. package/src/composables/resetInfiniteQueryPagination.ts +18 -0
  625. package/src/composables/route.ts +19 -0
  626. package/src/composables/toast.ts +21 -0
  627. package/src/composables/useApp.ts +6 -0
  628. package/src/composables/useAsyncSchema.ts +58 -0
  629. package/src/composables/useChannelActions.ts +151 -0
  630. package/src/composables/useComplexSearchParam.ts +293 -0
  631. package/src/composables/useFilterSchema.ts +106 -0
  632. package/src/composables/useGetInputDetail.ts +36 -0
  633. package/src/composables/useGetServerAddLicense.ts +21 -0
  634. package/src/composables/useJobPreview.ts +438 -0
  635. package/src/composables/useLayoutStore.ts +106 -0
  636. package/src/composables/usePermission.ts +5 -0
  637. package/src/composables/usePickerStore.ts +53 -0
  638. package/src/composables/useQueryAssets.ts +56 -0
  639. package/src/composables/useQueryParams.ts +20 -0
  640. package/src/composables/useRouteParams.ts +36 -0
  641. package/src/composables/useRouteQueries.ts +54 -0
  642. package/src/composables/useRouterHistory.ts +76 -0
  643. package/src/composables/useSearchQuery.ts +27 -0
  644. package/src/composables/useTooltipEllipsis.ts +12 -0
  645. package/src/constants/env.ts +11 -0
  646. package/src/constants/filterable.ts +32 -0
  647. package/src/constants/languageCode.ts +185 -0
  648. package/src/constants/micro.ts +1 -0
  649. package/src/constants/queryKeys.ts +11 -0
  650. package/src/constants/regex.ts +8 -0
  651. package/src/constants/storage.ts +41 -0
  652. package/src/enums/index.ts +24 -0
  653. package/src/layouts/empty.vue +7 -0
  654. package/src/modules/api-party/kit.ts +30 -0
  655. package/src/modules/api-party/module.ts +259 -0
  656. package/src/modules/api-party/openapi.ts +74 -0
  657. package/src/modules/api-party/runtime/composables/$api.ts +157 -0
  658. package/src/modules/api-party/runtime/composables/useApiData.ts +229 -0
  659. package/src/modules/api-party/runtime/constants.ts +1 -0
  660. package/src/modules/api-party/runtime/formData.ts +85 -0
  661. package/src/modules/api-party/runtime/server/$api.ts +29 -0
  662. package/src/modules/api-party/runtime/server/handler.ts +92 -0
  663. package/src/modules/api-party/runtime/types.ts +97 -0
  664. package/src/modules/api-party/runtime/utils.ts +43 -0
  665. package/src/pages/403.vue +11 -0
  666. package/src/pages/500.vue +11 -0
  667. package/src/pages/[...all].vue +11 -0
  668. package/src/pages/login.vue +67 -0
  669. package/src/plugins/auth.ts +10 -0
  670. package/src/plugins/build-time.ts +5 -0
  671. package/src/plugins/dayjs.ts +14 -0
  672. package/src/plugins/i18n.ts +6 -0
  673. package/src/plugins/router.ts +6 -0
  674. package/src/plugins/vue-json-pretty.ts +5 -0
  675. package/src/plugins/vue-query.ts +41 -0
  676. package/src/plugins/wujie.ts +19 -0
  677. package/src/public/apple-touch-icon.png +0 -0
  678. package/src/public/audio-recorder.js +31 -0
  679. package/src/public/build-time.json +1 -0
  680. package/src/public/favicon.ico +0 -0
  681. package/src/public/icon-block-free-app.png +0 -0
  682. package/src/public/maskable-icon.png +0 -0
  683. package/src/public/nuxt.svg +3 -0
  684. package/src/public/preview/step-1.png +0 -0
  685. package/src/public/preview/step-2.png +0 -0
  686. package/src/public/preview/step-3.png +0 -0
  687. package/src/public/pwa-192x192.png +0 -0
  688. package/src/public/pwa-512x512.png +0 -0
  689. package/src/public/robots.txt +2 -0
  690. package/src/public/vite.png +0 -0
  691. package/src/pwa/config.ts +61 -0
  692. package/src/pwa/index.ts +194 -0
  693. package/src/pwa/runtime/VitePwaManifest.ts +33 -0
  694. package/src/pwa/types.ts +56 -0
  695. package/src/pwa/utils.ts +16 -0
  696. package/src/schemas/authServiceApi.json +6709 -0
  697. package/src/schemas/billingApi.json +1083 -0
  698. package/src/schemas/chatApi.json +497 -0
  699. package/src/schemas/libraryApi.json +2009 -0
  700. package/src/schemas/licenseApi.json +772 -0
  701. package/src/schemas/livestreamApi.json +3354 -0
  702. package/src/schemas/lrmApi.json +2848 -0
  703. package/src/schemas/machineApi.json +4604 -0
  704. package/src/schemas/metricApi.json +141 -0
  705. package/src/schemas/notificationApi.json +1 -0
  706. package/src/schemas/playoutApi.json +8315 -0
  707. package/src/schemas/ssaiApi.json +1108 -0
  708. package/src/schemas/transcodeApi.json +9670 -0
  709. package/src/schemas/vastControlApi.json +961 -0
  710. package/src/schemas/vodApi.json +3974 -0
  711. package/src/server/plugins/loading.css +111 -0
  712. package/src/server/plugins/loading.html +12 -0
  713. package/src/server/plugins/loading.ts +134 -0
  714. package/src/templates/pwa.client.ts +136 -0
  715. package/src/utils/$apiOptions.ts +79 -0
  716. package/src/utils/app.ts +23 -0
  717. package/src/utils/cn.ts +3 -0
  718. package/src/utils/format.ts +88 -0
  719. package/src/utils/gen-routes.ts +100 -0
  720. package/src/utils/helper.ts +56 -0
  721. package/src/utils/micro.ts +207 -0
  722. package/src/utils/popoverSelectAttrs.ts +24 -0
  723. package/src/utils/popup.ts +96 -0
  724. package/src/utils/pwa.ts +86 -0
  725. package/src/utils/query-filter.ts +111 -0
  726. package/src/utils/table.ts +35 -0
  727. package/src/utils/tryCatch.ts +25 -0
  728. package/src/utils/utils.ts +58 -0
  729. package/src/utils/validator.ts +185 -0
  730. package/src/utils/videojs.ts +490 -0
  731. package/src/utils/wujie.ts +1 -0
  732. package/tsconfig.json +3 -0
  733. package/uno.config.ts +375 -0
@@ -0,0 +1,3354 @@
1
+ {
2
+ "openapi": "3.0.0",
3
+ "paths": {
4
+ "/api/livestream/presets": {
5
+ "get": {
6
+ "operationId": "PresetsController_getAll",
7
+ "parameters": [
8
+ {
9
+ "name": "sort",
10
+ "required": false,
11
+ "in": "query",
12
+ "example": "created_at|desc;filename|asc",
13
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
14
+ "schema": {
15
+ "type": "string"
16
+ }
17
+ },
18
+ {
19
+ "name": "page",
20
+ "required": false,
21
+ "in": "query",
22
+ "example": "1",
23
+ "description": "pagination number",
24
+ "schema": {
25
+ "type": "number"
26
+ }
27
+ },
28
+ {
29
+ "name": "perPage",
30
+ "required": false,
31
+ "in": "query",
32
+ "example": "10",
33
+ "description": "",
34
+ "schema": {
35
+ "type": "number"
36
+ }
37
+ },
38
+ {
39
+ "name": "limit",
40
+ "required": false,
41
+ "in": "query",
42
+ "example": "10",
43
+ "description": "",
44
+ "schema": {
45
+ "type": "number"
46
+ }
47
+ },
48
+ {
49
+ "name": "offset",
50
+ "required": false,
51
+ "in": "query",
52
+ "example": "0",
53
+ "description": "",
54
+ "schema": {
55
+ "type": "number"
56
+ }
57
+ },
58
+ {
59
+ "name": "fields",
60
+ "required": false,
61
+ "in": "query",
62
+ "example": "id,name,url",
63
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
64
+ "schema": {
65
+ "type": "string"
66
+ }
67
+ },
68
+ {
69
+ "name": "populates",
70
+ "required": false,
71
+ "in": "query",
72
+ "example": "author,book",
73
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
74
+ "schema": {
75
+ "type": "string"
76
+ }
77
+ }
78
+ ],
79
+ "responses": {
80
+ "200": {
81
+ "description": "",
82
+ "content": {
83
+ "application/json": {
84
+ "schema": {
85
+ "$ref": "#/components/schemas/PresetCollection"
86
+ }
87
+ }
88
+ }
89
+ }
90
+ },
91
+ "tags": [
92
+ "presets"
93
+ ]
94
+ },
95
+ "post": {
96
+ "operationId": "PresetsController_create",
97
+ "parameters": [],
98
+ "requestBody": {
99
+ "required": true,
100
+ "content": {
101
+ "application/json": {
102
+ "schema": {
103
+ "$ref": "#/components/schemas/CreatePresetDto"
104
+ }
105
+ }
106
+ }
107
+ },
108
+ "responses": {
109
+ "201": {
110
+ "description": "",
111
+ "content": {
112
+ "application/json": {
113
+ "schema": {
114
+ "$ref": "#/components/schemas/Preset"
115
+ }
116
+ }
117
+ }
118
+ }
119
+ },
120
+ "tags": [
121
+ "presets"
122
+ ]
123
+ }
124
+ },
125
+ "/api/livestream/presets/{id}": {
126
+ "get": {
127
+ "operationId": "PresetsController_get",
128
+ "parameters": [
129
+ {
130
+ "name": "id",
131
+ "required": true,
132
+ "in": "path",
133
+ "schema": {
134
+ "type": "string"
135
+ }
136
+ }
137
+ ],
138
+ "responses": {
139
+ "200": {
140
+ "description": "",
141
+ "content": {
142
+ "application/json": {
143
+ "schema": {
144
+ "$ref": "#/components/schemas/Preset"
145
+ }
146
+ }
147
+ }
148
+ }
149
+ },
150
+ "tags": [
151
+ "presets"
152
+ ]
153
+ },
154
+ "patch": {
155
+ "operationId": "PresetsController_update",
156
+ "parameters": [
157
+ {
158
+ "name": "id",
159
+ "required": true,
160
+ "in": "path",
161
+ "schema": {
162
+ "type": "string"
163
+ }
164
+ }
165
+ ],
166
+ "requestBody": {
167
+ "required": true,
168
+ "content": {
169
+ "application/json": {
170
+ "schema": {
171
+ "$ref": "#/components/schemas/UpdatePresetDto"
172
+ }
173
+ }
174
+ }
175
+ },
176
+ "responses": {
177
+ "200": {
178
+ "description": "",
179
+ "content": {
180
+ "application/json": {
181
+ "schema": {
182
+ "$ref": "#/components/schemas/Preset"
183
+ }
184
+ }
185
+ }
186
+ }
187
+ },
188
+ "tags": [
189
+ "presets"
190
+ ]
191
+ },
192
+ "delete": {
193
+ "operationId": "PresetsController_delete",
194
+ "parameters": [
195
+ {
196
+ "name": "id",
197
+ "required": true,
198
+ "in": "path",
199
+ "schema": {
200
+ "type": "string"
201
+ }
202
+ }
203
+ ],
204
+ "responses": {
205
+ "200": {
206
+ "description": "",
207
+ "content": {
208
+ "application/json": {
209
+ "schema": {
210
+ "$ref": "#/components/schemas/Preset"
211
+ }
212
+ }
213
+ }
214
+ }
215
+ },
216
+ "tags": [
217
+ "presets"
218
+ ]
219
+ }
220
+ },
221
+ "/api/livestream/profiles": {
222
+ "get": {
223
+ "operationId": "HttpProfilesController_getAll",
224
+ "parameters": [
225
+ {
226
+ "name": "sort",
227
+ "required": false,
228
+ "in": "query",
229
+ "example": "created_at|desc;filename|asc",
230
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
231
+ "schema": {
232
+ "type": "string"
233
+ }
234
+ },
235
+ {
236
+ "name": "page",
237
+ "required": false,
238
+ "in": "query",
239
+ "example": "1",
240
+ "description": "pagination number",
241
+ "schema": {
242
+ "type": "number"
243
+ }
244
+ },
245
+ {
246
+ "name": "perPage",
247
+ "required": false,
248
+ "in": "query",
249
+ "example": "10",
250
+ "description": "",
251
+ "schema": {
252
+ "type": "number"
253
+ }
254
+ },
255
+ {
256
+ "name": "limit",
257
+ "required": false,
258
+ "in": "query",
259
+ "example": "10",
260
+ "description": "",
261
+ "schema": {
262
+ "type": "number"
263
+ }
264
+ },
265
+ {
266
+ "name": "offset",
267
+ "required": false,
268
+ "in": "query",
269
+ "example": "0",
270
+ "description": "",
271
+ "schema": {
272
+ "type": "number"
273
+ }
274
+ },
275
+ {
276
+ "name": "fields",
277
+ "required": false,
278
+ "in": "query",
279
+ "example": "id,name,url",
280
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
281
+ "schema": {
282
+ "type": "string"
283
+ }
284
+ },
285
+ {
286
+ "name": "populates",
287
+ "required": false,
288
+ "in": "query",
289
+ "example": "author,book",
290
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
291
+ "schema": {
292
+ "type": "string"
293
+ }
294
+ }
295
+ ],
296
+ "responses": {
297
+ "200": {
298
+ "description": "",
299
+ "content": {
300
+ "application/json": {
301
+ "schema": {
302
+ "$ref": "#/components/schemas/ProfileCollection"
303
+ }
304
+ }
305
+ }
306
+ }
307
+ },
308
+ "tags": [
309
+ "profiles"
310
+ ]
311
+ },
312
+ "post": {
313
+ "operationId": "HttpProfilesController_create",
314
+ "parameters": [],
315
+ "requestBody": {
316
+ "required": true,
317
+ "content": {
318
+ "application/json": {
319
+ "schema": {
320
+ "$ref": "#/components/schemas/CreateProfileDto"
321
+ }
322
+ }
323
+ }
324
+ },
325
+ "responses": {
326
+ "201": {
327
+ "description": "",
328
+ "content": {
329
+ "application/json": {
330
+ "schema": {
331
+ "$ref": "#/components/schemas/Profile"
332
+ }
333
+ }
334
+ }
335
+ }
336
+ },
337
+ "tags": [
338
+ "profiles"
339
+ ]
340
+ }
341
+ },
342
+ "/api/livestream/profiles/{id}": {
343
+ "get": {
344
+ "operationId": "HttpProfilesController_get",
345
+ "parameters": [
346
+ {
347
+ "name": "id",
348
+ "required": true,
349
+ "in": "path",
350
+ "schema": {
351
+ "type": "string"
352
+ }
353
+ }
354
+ ],
355
+ "responses": {
356
+ "200": {
357
+ "description": "",
358
+ "content": {
359
+ "application/json": {
360
+ "schema": {
361
+ "$ref": "#/components/schemas/Profile"
362
+ }
363
+ }
364
+ }
365
+ }
366
+ },
367
+ "tags": [
368
+ "profiles"
369
+ ]
370
+ },
371
+ "patch": {
372
+ "operationId": "HttpProfilesController_update",
373
+ "parameters": [
374
+ {
375
+ "name": "id",
376
+ "required": true,
377
+ "in": "path",
378
+ "schema": {
379
+ "type": "string"
380
+ }
381
+ }
382
+ ],
383
+ "requestBody": {
384
+ "required": true,
385
+ "content": {
386
+ "application/json": {
387
+ "schema": {
388
+ "$ref": "#/components/schemas/UpdateProfileDto"
389
+ }
390
+ }
391
+ }
392
+ },
393
+ "responses": {
394
+ "200": {
395
+ "description": "",
396
+ "content": {
397
+ "application/json": {
398
+ "schema": {
399
+ "$ref": "#/components/schemas/Profile"
400
+ }
401
+ }
402
+ }
403
+ }
404
+ },
405
+ "tags": [
406
+ "profiles"
407
+ ]
408
+ },
409
+ "delete": {
410
+ "operationId": "HttpProfilesController_delete",
411
+ "parameters": [
412
+ {
413
+ "name": "id",
414
+ "required": true,
415
+ "in": "path",
416
+ "schema": {
417
+ "type": "string"
418
+ }
419
+ }
420
+ ],
421
+ "responses": {
422
+ "200": {
423
+ "description": "",
424
+ "content": {
425
+ "application/json": {
426
+ "schema": {
427
+ "$ref": "#/components/schemas/Profile"
428
+ }
429
+ }
430
+ }
431
+ }
432
+ },
433
+ "tags": [
434
+ "profiles"
435
+ ]
436
+ }
437
+ },
438
+ "/api/livestream/profiles/bulk/{ids}": {
439
+ "get": {
440
+ "operationId": "HttpProfilesController_getBulk",
441
+ "parameters": [
442
+ {
443
+ "name": "ids",
444
+ "required": true,
445
+ "in": "path",
446
+ "schema": {
447
+ "type": "string"
448
+ }
449
+ }
450
+ ],
451
+ "responses": {
452
+ "200": {
453
+ "description": ""
454
+ }
455
+ },
456
+ "tags": [
457
+ "profiles"
458
+ ]
459
+ }
460
+ },
461
+ "/api/livestream/settings/app": {
462
+ "get": {
463
+ "operationId": "SettingController_findOne",
464
+ "summary": "Get Setting machine",
465
+ "description": "Get Setting machine",
466
+ "parameters": [],
467
+ "responses": {
468
+ "200": {
469
+ "description": "",
470
+ "content": {
471
+ "application/json": {
472
+ "schema": {
473
+ "$ref": "#/components/schemas/SettingConfig"
474
+ }
475
+ }
476
+ }
477
+ }
478
+ },
479
+ "tags": [
480
+ "Settings"
481
+ ],
482
+ "security": [
483
+ {
484
+ "basic": []
485
+ }
486
+ ]
487
+ }
488
+ },
489
+ "/api/livestream/settings": {
490
+ "post": {
491
+ "operationId": "SettingController_create",
492
+ "summary": "Get Setting machine",
493
+ "description": "Get Setting machine",
494
+ "parameters": [],
495
+ "requestBody": {
496
+ "required": true,
497
+ "content": {
498
+ "application/json": {
499
+ "schema": {
500
+ "$ref": "#/components/schemas/SettingDto"
501
+ }
502
+ }
503
+ }
504
+ },
505
+ "responses": {
506
+ "201": {
507
+ "description": "",
508
+ "content": {
509
+ "application/json": {
510
+ "schema": {
511
+ "$ref": "#/components/schemas/SettingConfig"
512
+ }
513
+ }
514
+ }
515
+ }
516
+ },
517
+ "tags": [
518
+ "Settings"
519
+ ],
520
+ "security": [
521
+ {
522
+ "basic": []
523
+ }
524
+ ]
525
+ }
526
+ },
527
+ "/api/livestream/settings/app/check": {
528
+ "get": {
529
+ "operationId": "SettingController_check",
530
+ "summary": "Check setting",
531
+ "description": "Check setting",
532
+ "parameters": [],
533
+ "responses": {
534
+ "200": {
535
+ "description": "",
536
+ "content": {
537
+ "application/json": {
538
+ "schema": {
539
+ "$ref": "#/components/schemas/CheckSetting"
540
+ }
541
+ }
542
+ }
543
+ }
544
+ },
545
+ "tags": [
546
+ "Settings"
547
+ ],
548
+ "security": [
549
+ {
550
+ "basic": []
551
+ }
552
+ ]
553
+ }
554
+ },
555
+ "/api/livestream/channels": {
556
+ "post": {
557
+ "operationId": "ChannelController_create",
558
+ "summary": "Create Livestream Insert Channel",
559
+ "description": "Create Livestream Insert Channel",
560
+ "parameters": [],
561
+ "requestBody": {
562
+ "required": true,
563
+ "content": {
564
+ "application/json": {
565
+ "schema": {
566
+ "$ref": "#/components/schemas/CreateChannelDto"
567
+ }
568
+ }
569
+ }
570
+ },
571
+ "responses": {
572
+ "201": {
573
+ "description": "",
574
+ "content": {
575
+ "application/json": {
576
+ "schema": {
577
+ "$ref": "#/components/schemas/Channel"
578
+ }
579
+ }
580
+ }
581
+ }
582
+ },
583
+ "tags": [
584
+ "Channel"
585
+ ],
586
+ "security": [
587
+ {
588
+ "basic": []
589
+ }
590
+ ]
591
+ },
592
+ "get": {
593
+ "operationId": "ChannelController_findAll",
594
+ "summary": "Get Livestream Channel Collection",
595
+ "description": "Get Livestream Channel Collection",
596
+ "parameters": [
597
+ {
598
+ "name": "sort",
599
+ "required": false,
600
+ "in": "query",
601
+ "example": "created_at|desc;filename|asc",
602
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
603
+ "schema": {
604
+ "type": "string"
605
+ }
606
+ },
607
+ {
608
+ "name": "page",
609
+ "required": false,
610
+ "in": "query",
611
+ "example": "1",
612
+ "description": "pagination number",
613
+ "schema": {
614
+ "type": "number"
615
+ }
616
+ },
617
+ {
618
+ "name": "perPage",
619
+ "required": false,
620
+ "in": "query",
621
+ "example": "10",
622
+ "description": "",
623
+ "schema": {
624
+ "type": "number"
625
+ }
626
+ },
627
+ {
628
+ "name": "limit",
629
+ "required": false,
630
+ "in": "query",
631
+ "example": "10",
632
+ "description": "",
633
+ "schema": {
634
+ "type": "number"
635
+ }
636
+ },
637
+ {
638
+ "name": "offset",
639
+ "required": false,
640
+ "in": "query",
641
+ "example": "0",
642
+ "description": "",
643
+ "schema": {
644
+ "type": "number"
645
+ }
646
+ },
647
+ {
648
+ "name": "fields",
649
+ "required": false,
650
+ "in": "query",
651
+ "example": "id,name,url",
652
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
653
+ "schema": {
654
+ "type": "string"
655
+ }
656
+ },
657
+ {
658
+ "name": "populates",
659
+ "required": false,
660
+ "in": "query",
661
+ "example": "author,book",
662
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
663
+ "schema": {
664
+ "type": "string"
665
+ }
666
+ }
667
+ ],
668
+ "responses": {
669
+ "200": {
670
+ "description": "",
671
+ "content": {
672
+ "application/json": {
673
+ "schema": {
674
+ "$ref": "#/components/schemas/ChannelCollection"
675
+ }
676
+ }
677
+ }
678
+ }
679
+ },
680
+ "tags": [
681
+ "Channel"
682
+ ],
683
+ "security": [
684
+ {
685
+ "basic": []
686
+ }
687
+ ]
688
+ }
689
+ },
690
+ "/api/livestream/channels/{id}": {
691
+ "get": {
692
+ "operationId": "ChannelController_findOne",
693
+ "summary": "Get Livestream Channel By Id",
694
+ "description": "Get Livestream Channel By Id",
695
+ "parameters": [
696
+ {
697
+ "name": "id",
698
+ "required": true,
699
+ "in": "path",
700
+ "schema": {
701
+ "type": "string"
702
+ }
703
+ }
704
+ ],
705
+ "responses": {
706
+ "200": {
707
+ "description": "",
708
+ "content": {
709
+ "application/json": {
710
+ "schema": {
711
+ "$ref": "#/components/schemas/Channel"
712
+ }
713
+ }
714
+ }
715
+ }
716
+ },
717
+ "tags": [
718
+ "Channel"
719
+ ],
720
+ "security": [
721
+ {
722
+ "basic": []
723
+ }
724
+ ]
725
+ },
726
+ "patch": {
727
+ "operationId": "ChannelController_update",
728
+ "summary": "Update Livestream Channel By Id",
729
+ "description": "Update Livestream Channel By Id",
730
+ "parameters": [
731
+ {
732
+ "name": "id",
733
+ "required": true,
734
+ "in": "path",
735
+ "schema": {
736
+ "type": "string"
737
+ }
738
+ }
739
+ ],
740
+ "requestBody": {
741
+ "required": true,
742
+ "content": {
743
+ "application/json": {
744
+ "schema": {
745
+ "$ref": "#/components/schemas/UpdateChannelDto"
746
+ }
747
+ }
748
+ }
749
+ },
750
+ "responses": {
751
+ "200": {
752
+ "description": "",
753
+ "content": {
754
+ "application/json": {
755
+ "schema": {
756
+ "$ref": "#/components/schemas/Channel"
757
+ }
758
+ }
759
+ }
760
+ }
761
+ },
762
+ "tags": [
763
+ "Channel"
764
+ ],
765
+ "security": [
766
+ {
767
+ "basic": []
768
+ }
769
+ ]
770
+ },
771
+ "delete": {
772
+ "operationId": "ChannelController_remove",
773
+ "summary": "Delete Livestream Channel By Id",
774
+ "description": "Delete Livestream Channel By Id",
775
+ "parameters": [
776
+ {
777
+ "name": "id",
778
+ "required": true,
779
+ "in": "path",
780
+ "schema": {
781
+ "type": "string"
782
+ }
783
+ }
784
+ ],
785
+ "responses": {
786
+ "200": {
787
+ "description": "",
788
+ "content": {
789
+ "application/json": {
790
+ "schema": {
791
+ "$ref": "#/components/schemas/Channel"
792
+ }
793
+ }
794
+ }
795
+ }
796
+ },
797
+ "tags": [
798
+ "Channel"
799
+ ],
800
+ "security": [
801
+ {
802
+ "basic": []
803
+ }
804
+ ]
805
+ }
806
+ },
807
+ "/api/livestream/channels/{id}/reset-token": {
808
+ "patch": {
809
+ "operationId": "ChannelController_resetToken",
810
+ "summary": "Reset Token Channel By Id",
811
+ "description": "Reset Token Channel By Id",
812
+ "parameters": [
813
+ {
814
+ "name": "id",
815
+ "required": true,
816
+ "in": "path",
817
+ "schema": {
818
+ "type": "string"
819
+ }
820
+ }
821
+ ],
822
+ "responses": {
823
+ "200": {
824
+ "description": "",
825
+ "content": {
826
+ "application/json": {
827
+ "schema": {
828
+ "$ref": "#/components/schemas/Channel"
829
+ }
830
+ }
831
+ }
832
+ }
833
+ },
834
+ "tags": [
835
+ "Channel"
836
+ ],
837
+ "security": [
838
+ {
839
+ "basic": []
840
+ }
841
+ ]
842
+ }
843
+ },
844
+ "/api/livestream/channels/{id}/stop": {
845
+ "delete": {
846
+ "operationId": "ChannelController_stop",
847
+ "summary": "Stop Livestream Channel By Id",
848
+ "description": "Stop Livestream Channel By Id",
849
+ "parameters": [
850
+ {
851
+ "name": "id",
852
+ "required": true,
853
+ "in": "path",
854
+ "schema": {
855
+ "type": "string"
856
+ }
857
+ }
858
+ ],
859
+ "responses": {
860
+ "200": {
861
+ "description": "",
862
+ "content": {
863
+ "application/json": {
864
+ "schema": {
865
+ "$ref": "#/components/schemas/Channel"
866
+ }
867
+ }
868
+ }
869
+ }
870
+ },
871
+ "tags": [
872
+ "Channel"
873
+ ],
874
+ "security": [
875
+ {
876
+ "basic": []
877
+ }
878
+ ]
879
+ }
880
+ },
881
+ "/api/livestream/channels/{id}/start": {
882
+ "patch": {
883
+ "operationId": "ChannelController_start",
884
+ "summary": "Stop Livestream Channel By Id",
885
+ "description": "Stop Livestream Channel By Id",
886
+ "parameters": [
887
+ {
888
+ "name": "id",
889
+ "required": true,
890
+ "in": "path",
891
+ "schema": {
892
+ "type": "string"
893
+ }
894
+ }
895
+ ],
896
+ "responses": {
897
+ "200": {
898
+ "description": "",
899
+ "content": {
900
+ "application/json": {
901
+ "schema": {
902
+ "$ref": "#/components/schemas/Channel"
903
+ }
904
+ }
905
+ }
906
+ }
907
+ },
908
+ "tags": [
909
+ "Channel"
910
+ ],
911
+ "security": [
912
+ {
913
+ "basic": []
914
+ }
915
+ ]
916
+ }
917
+ },
918
+ "/api/livestream/channels/actions/get-tags": {
919
+ "get": {
920
+ "operationId": "ChannelController_getTags",
921
+ "summary": "Get list Tags using in Channel",
922
+ "description": "Get list Tags using in Channel",
923
+ "parameters": [
924
+ {
925
+ "name": "search",
926
+ "required": true,
927
+ "in": "query",
928
+ "schema": {
929
+ "type": "string"
930
+ }
931
+ }
932
+ ],
933
+ "responses": {
934
+ "200": {
935
+ "description": "",
936
+ "content": {
937
+ "application/json": {
938
+ "schema": {
939
+ "$ref": "#/components/schemas/TagsDto"
940
+ }
941
+ }
942
+ }
943
+ }
944
+ },
945
+ "tags": [
946
+ "Channel"
947
+ ],
948
+ "security": [
949
+ {
950
+ "basic": []
951
+ }
952
+ ]
953
+ }
954
+ },
955
+ "/api/livestream/sessions": {
956
+ "get": {
957
+ "operationId": "SessionController_findAll",
958
+ "summary": "Get Session Collection",
959
+ "description": "Get Session Collection",
960
+ "parameters": [
961
+ {
962
+ "name": "sort",
963
+ "required": false,
964
+ "in": "query",
965
+ "example": "created_at|desc;filename|asc",
966
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
967
+ "schema": {
968
+ "type": "string"
969
+ }
970
+ },
971
+ {
972
+ "name": "page",
973
+ "required": false,
974
+ "in": "query",
975
+ "example": "1",
976
+ "description": "pagination number",
977
+ "schema": {
978
+ "type": "number"
979
+ }
980
+ },
981
+ {
982
+ "name": "perPage",
983
+ "required": false,
984
+ "in": "query",
985
+ "example": "10",
986
+ "description": "",
987
+ "schema": {
988
+ "type": "number"
989
+ }
990
+ },
991
+ {
992
+ "name": "limit",
993
+ "required": false,
994
+ "in": "query",
995
+ "example": "10",
996
+ "description": "",
997
+ "schema": {
998
+ "type": "number"
999
+ }
1000
+ },
1001
+ {
1002
+ "name": "offset",
1003
+ "required": false,
1004
+ "in": "query",
1005
+ "example": "0",
1006
+ "description": "",
1007
+ "schema": {
1008
+ "type": "number"
1009
+ }
1010
+ },
1011
+ {
1012
+ "name": "fields",
1013
+ "required": false,
1014
+ "in": "query",
1015
+ "example": "id,name,url",
1016
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1017
+ "schema": {
1018
+ "type": "string"
1019
+ }
1020
+ },
1021
+ {
1022
+ "name": "populates",
1023
+ "required": false,
1024
+ "in": "query",
1025
+ "example": "author,book",
1026
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1027
+ "schema": {
1028
+ "type": "string"
1029
+ }
1030
+ }
1031
+ ],
1032
+ "responses": {
1033
+ "200": {
1034
+ "description": "",
1035
+ "content": {
1036
+ "application/json": {
1037
+ "schema": {
1038
+ "$ref": "#/components/schemas/SessionCollection"
1039
+ }
1040
+ }
1041
+ }
1042
+ }
1043
+ },
1044
+ "tags": [
1045
+ "Sessions"
1046
+ ],
1047
+ "security": [
1048
+ {
1049
+ "basic": []
1050
+ }
1051
+ ]
1052
+ }
1053
+ },
1054
+ "/api/livestream/sessions/{id}": {
1055
+ "get": {
1056
+ "operationId": "SessionController_getSessionById",
1057
+ "summary": "Get Session by Id",
1058
+ "description": "Get Session by Id",
1059
+ "parameters": [
1060
+ {
1061
+ "name": "id",
1062
+ "required": true,
1063
+ "in": "path",
1064
+ "schema": {
1065
+ "type": "string"
1066
+ }
1067
+ }
1068
+ ],
1069
+ "responses": {
1070
+ "200": {
1071
+ "description": "",
1072
+ "content": {
1073
+ "application/json": {
1074
+ "schema": {
1075
+ "$ref": "#/components/schemas/Session"
1076
+ }
1077
+ }
1078
+ }
1079
+ }
1080
+ },
1081
+ "tags": [
1082
+ "Sessions"
1083
+ ],
1084
+ "security": [
1085
+ {
1086
+ "basic": []
1087
+ }
1088
+ ]
1089
+ },
1090
+ "delete": {
1091
+ "operationId": "SessionController_delete",
1092
+ "summary": "Delete Session",
1093
+ "description": "Delete Session By Id",
1094
+ "parameters": [
1095
+ {
1096
+ "name": "id",
1097
+ "required": true,
1098
+ "in": "path",
1099
+ "schema": {
1100
+ "type": "string"
1101
+ }
1102
+ }
1103
+ ],
1104
+ "responses": {
1105
+ "200": {
1106
+ "description": "",
1107
+ "content": {
1108
+ "application/json": {
1109
+ "schema": {
1110
+ "$ref": "#/components/schemas/Session"
1111
+ }
1112
+ }
1113
+ }
1114
+ }
1115
+ },
1116
+ "tags": [
1117
+ "Sessions"
1118
+ ],
1119
+ "security": [
1120
+ {
1121
+ "basic": []
1122
+ }
1123
+ ]
1124
+ }
1125
+ },
1126
+ "/api/livestream/sessions/{id}/finish": {
1127
+ "delete": {
1128
+ "operationId": "SessionController_finish",
1129
+ "summary": "Finish Session",
1130
+ "description": "Get Session",
1131
+ "parameters": [
1132
+ {
1133
+ "name": "id",
1134
+ "required": true,
1135
+ "in": "path",
1136
+ "schema": {
1137
+ "type": "string"
1138
+ }
1139
+ }
1140
+ ],
1141
+ "responses": {
1142
+ "200": {
1143
+ "description": "",
1144
+ "content": {
1145
+ "application/json": {
1146
+ "schema": {
1147
+ "$ref": "#/components/schemas/Session"
1148
+ }
1149
+ }
1150
+ }
1151
+ }
1152
+ },
1153
+ "tags": [
1154
+ "Sessions"
1155
+ ],
1156
+ "security": [
1157
+ {
1158
+ "basic": []
1159
+ }
1160
+ ]
1161
+ }
1162
+ },
1163
+ "/api/livestream/sessions/{id}/rename": {
1164
+ "patch": {
1165
+ "operationId": "SessionController_rename",
1166
+ "summary": "Rename Session",
1167
+ "description": "Rename Session",
1168
+ "parameters": [
1169
+ {
1170
+ "name": "id",
1171
+ "required": true,
1172
+ "in": "path",
1173
+ "schema": {
1174
+ "type": "string"
1175
+ }
1176
+ }
1177
+ ],
1178
+ "requestBody": {
1179
+ "required": true,
1180
+ "content": {
1181
+ "application/json": {
1182
+ "schema": {
1183
+ "$ref": "#/components/schemas/RenameSessionDto"
1184
+ }
1185
+ }
1186
+ }
1187
+ },
1188
+ "responses": {
1189
+ "200": {
1190
+ "description": "",
1191
+ "content": {
1192
+ "application/json": {
1193
+ "schema": {
1194
+ "$ref": "#/components/schemas/Session"
1195
+ }
1196
+ }
1197
+ }
1198
+ }
1199
+ },
1200
+ "tags": [
1201
+ "Sessions"
1202
+ ],
1203
+ "security": [
1204
+ {
1205
+ "basic": []
1206
+ }
1207
+ ]
1208
+ }
1209
+ },
1210
+ "/api/livestream/sessions/{id}/status": {
1211
+ "get": {
1212
+ "operationId": "SessionController_getStatus",
1213
+ "summary": "Get Status Session",
1214
+ "description": "Get Status Session",
1215
+ "parameters": [
1216
+ {
1217
+ "name": "id",
1218
+ "required": true,
1219
+ "in": "path",
1220
+ "schema": {
1221
+ "type": "string"
1222
+ }
1223
+ }
1224
+ ],
1225
+ "responses": {
1226
+ "200": {
1227
+ "description": "",
1228
+ "content": {
1229
+ "application/json": {
1230
+ "schema": {
1231
+ "$ref": "#/components/schemas/GetSessionStatus"
1232
+ }
1233
+ }
1234
+ }
1235
+ }
1236
+ },
1237
+ "tags": [
1238
+ "Sessions"
1239
+ ],
1240
+ "security": [
1241
+ {
1242
+ "basic": []
1243
+ }
1244
+ ]
1245
+ }
1246
+ },
1247
+ "/api/livestream/tasks": {
1248
+ "get": {
1249
+ "operationId": "TaskController_findAll",
1250
+ "summary": "Get Task Collection",
1251
+ "description": "Get Task Collection",
1252
+ "parameters": [
1253
+ {
1254
+ "name": "sort",
1255
+ "required": false,
1256
+ "in": "query",
1257
+ "example": "created_at|desc;filename|asc",
1258
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
1259
+ "schema": {
1260
+ "type": "string"
1261
+ }
1262
+ },
1263
+ {
1264
+ "name": "page",
1265
+ "required": false,
1266
+ "in": "query",
1267
+ "example": "1",
1268
+ "description": "pagination number",
1269
+ "schema": {
1270
+ "type": "number"
1271
+ }
1272
+ },
1273
+ {
1274
+ "name": "perPage",
1275
+ "required": false,
1276
+ "in": "query",
1277
+ "example": "10",
1278
+ "description": "",
1279
+ "schema": {
1280
+ "type": "number"
1281
+ }
1282
+ },
1283
+ {
1284
+ "name": "limit",
1285
+ "required": false,
1286
+ "in": "query",
1287
+ "example": "10",
1288
+ "description": "",
1289
+ "schema": {
1290
+ "type": "number"
1291
+ }
1292
+ },
1293
+ {
1294
+ "name": "offset",
1295
+ "required": false,
1296
+ "in": "query",
1297
+ "example": "0",
1298
+ "description": "",
1299
+ "schema": {
1300
+ "type": "number"
1301
+ }
1302
+ },
1303
+ {
1304
+ "name": "fields",
1305
+ "required": false,
1306
+ "in": "query",
1307
+ "example": "id,name,url",
1308
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1309
+ "schema": {
1310
+ "type": "string"
1311
+ }
1312
+ },
1313
+ {
1314
+ "name": "populates",
1315
+ "required": false,
1316
+ "in": "query",
1317
+ "example": "author,book",
1318
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1319
+ "schema": {
1320
+ "type": "string"
1321
+ }
1322
+ }
1323
+ ],
1324
+ "responses": {
1325
+ "200": {
1326
+ "description": "",
1327
+ "content": {
1328
+ "application/json": {
1329
+ "schema": {
1330
+ "$ref": "#/components/schemas/TaskCollection"
1331
+ }
1332
+ }
1333
+ }
1334
+ }
1335
+ },
1336
+ "tags": [
1337
+ "Task"
1338
+ ],
1339
+ "security": [
1340
+ {
1341
+ "basic": []
1342
+ }
1343
+ ]
1344
+ },
1345
+ "post": {
1346
+ "operationId": "TaskController_create",
1347
+ "summary": "Create Task",
1348
+ "description": "Create Task",
1349
+ "parameters": [],
1350
+ "requestBody": {
1351
+ "required": true,
1352
+ "content": {
1353
+ "application/json": {
1354
+ "schema": {
1355
+ "$ref": "#/components/schemas/CreateTaskDto"
1356
+ }
1357
+ }
1358
+ }
1359
+ },
1360
+ "responses": {
1361
+ "201": {
1362
+ "description": "",
1363
+ "content": {
1364
+ "application/json": {
1365
+ "schema": {
1366
+ "$ref": "#/components/schemas/Task"
1367
+ }
1368
+ }
1369
+ }
1370
+ }
1371
+ },
1372
+ "tags": [
1373
+ "Task"
1374
+ ],
1375
+ "security": [
1376
+ {
1377
+ "basic": []
1378
+ }
1379
+ ]
1380
+ }
1381
+ },
1382
+ "/api/livestream/tasks/{id}": {
1383
+ "delete": {
1384
+ "operationId": "TaskController_delete",
1385
+ "summary": "Delete task in session",
1386
+ "description": "Delete Session By Id",
1387
+ "parameters": [
1388
+ {
1389
+ "name": "id",
1390
+ "required": true,
1391
+ "in": "path",
1392
+ "schema": {
1393
+ "type": "string"
1394
+ }
1395
+ }
1396
+ ],
1397
+ "responses": {
1398
+ "200": {
1399
+ "description": "",
1400
+ "content": {
1401
+ "application/json": {
1402
+ "schema": {
1403
+ "$ref": "#/components/schemas/Task"
1404
+ }
1405
+ }
1406
+ }
1407
+ }
1408
+ },
1409
+ "tags": [
1410
+ "Task"
1411
+ ],
1412
+ "security": [
1413
+ {
1414
+ "basic": []
1415
+ }
1416
+ ]
1417
+ }
1418
+ },
1419
+ "/api/livestream/events": {
1420
+ "get": {
1421
+ "operationId": "EventController_findAll",
1422
+ "summary": "Get Events Collection",
1423
+ "description": "Get Events Collection",
1424
+ "parameters": [
1425
+ {
1426
+ "name": "sort",
1427
+ "required": false,
1428
+ "in": "query",
1429
+ "example": "created_at|desc;filename|asc",
1430
+ "description": "Use only allowed properties separated by semicolon; default is ascending created_at; prefix name with hyphen/minus sign to get descending order",
1431
+ "schema": {
1432
+ "type": "string"
1433
+ }
1434
+ },
1435
+ {
1436
+ "name": "page",
1437
+ "required": false,
1438
+ "in": "query",
1439
+ "example": "1",
1440
+ "description": "pagination number",
1441
+ "schema": {
1442
+ "type": "number"
1443
+ }
1444
+ },
1445
+ {
1446
+ "name": "perPage",
1447
+ "required": false,
1448
+ "in": "query",
1449
+ "example": "10",
1450
+ "description": "",
1451
+ "schema": {
1452
+ "type": "number"
1453
+ }
1454
+ },
1455
+ {
1456
+ "name": "limit",
1457
+ "required": false,
1458
+ "in": "query",
1459
+ "example": "10",
1460
+ "description": "",
1461
+ "schema": {
1462
+ "type": "number"
1463
+ }
1464
+ },
1465
+ {
1466
+ "name": "offset",
1467
+ "required": false,
1468
+ "in": "query",
1469
+ "example": "0",
1470
+ "description": "",
1471
+ "schema": {
1472
+ "type": "number"
1473
+ }
1474
+ },
1475
+ {
1476
+ "name": "fields",
1477
+ "required": false,
1478
+ "in": "query",
1479
+ "example": "id,name,url",
1480
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1481
+ "schema": {
1482
+ "type": "string"
1483
+ }
1484
+ },
1485
+ {
1486
+ "name": "populates",
1487
+ "required": false,
1488
+ "in": "query",
1489
+ "example": "author,book",
1490
+ "description": "Nevertheless, you may choose that some fields would always be sent along with the requested fields, in the response payload. Like the id for example.",
1491
+ "schema": {
1492
+ "type": "string"
1493
+ }
1494
+ }
1495
+ ],
1496
+ "responses": {
1497
+ "200": {
1498
+ "description": "",
1499
+ "content": {
1500
+ "application/json": {
1501
+ "schema": {
1502
+ "$ref": "#/components/schemas/EventCollection"
1503
+ }
1504
+ }
1505
+ }
1506
+ }
1507
+ },
1508
+ "tags": [
1509
+ "Events"
1510
+ ],
1511
+ "security": [
1512
+ {
1513
+ "basic": []
1514
+ }
1515
+ ]
1516
+ }
1517
+ },
1518
+ "/api/livestream/usage-quota/{quota}": {
1519
+ "get": {
1520
+ "operationId": "UsageQuotaController_checkQuota",
1521
+ "parameters": [
1522
+ {
1523
+ "name": "quota",
1524
+ "required": true,
1525
+ "in": "path",
1526
+ "schema": {
1527
+ "type": "string"
1528
+ }
1529
+ }
1530
+ ],
1531
+ "responses": {
1532
+ "200": {
1533
+ "description": ""
1534
+ }
1535
+ }
1536
+ }
1537
+ },
1538
+ "/api/livestream/usage-quota/usages/{resource}": {
1539
+ "get": {
1540
+ "operationId": "UsageQuotaController_usage",
1541
+ "parameters": [
1542
+ {
1543
+ "name": "resource",
1544
+ "required": true,
1545
+ "in": "path",
1546
+ "schema": {
1547
+ "type": "string"
1548
+ }
1549
+ }
1550
+ ],
1551
+ "responses": {
1552
+ "200": {
1553
+ "description": ""
1554
+ }
1555
+ }
1556
+ }
1557
+ }
1558
+ },
1559
+ "info": {
1560
+ "title": "Live Stream Channel",
1561
+ "description": "Sigma Streaming Platform Live Stream Channel ",
1562
+ "version": "1.0",
1563
+ "contact": {}
1564
+ },
1565
+ "tags": [],
1566
+ "servers": [],
1567
+ "components": {
1568
+ "securitySchemes": {
1569
+ "basic": {
1570
+ "type": "http",
1571
+ "scheme": "basic"
1572
+ }
1573
+ },
1574
+ "schemas": {
1575
+ "Preset": {
1576
+ "type": "object",
1577
+ "properties": {
1578
+ "name": {
1579
+ "type": "string",
1580
+ "sortable": true,
1581
+ "filterable": true
1582
+ },
1583
+ "description": {
1584
+ "type": "string",
1585
+ "sortable": true,
1586
+ "filterable": true
1587
+ },
1588
+ "type": {
1589
+ "enum": [
1590
+ "video",
1591
+ "audio",
1592
+ "data"
1593
+ ],
1594
+ "type": "string",
1595
+ "sortable": true,
1596
+ "filterable": true
1597
+ },
1598
+ "createdAt": {
1599
+ "format": "date-time",
1600
+ "type": "string",
1601
+ "filterable": true,
1602
+ "sortable": true
1603
+ },
1604
+ "codec": {
1605
+ "type": "object"
1606
+ },
1607
+ "fps": {
1608
+ "type": "number"
1609
+ },
1610
+ "height": {
1611
+ "type": "number"
1612
+ },
1613
+ "width": {
1614
+ "type": "number"
1615
+ },
1616
+ "bitrate": {
1617
+ "type": "number"
1618
+ },
1619
+ "minRate": {
1620
+ "type": "number"
1621
+ },
1622
+ "maxRate": {
1623
+ "type": "number"
1624
+ },
1625
+ "cbr": {
1626
+ "type": "boolean"
1627
+ },
1628
+ "option": {
1629
+ "type": "string"
1630
+ },
1631
+ "sampleRate": {
1632
+ "type": "number"
1633
+ },
1634
+ "channel": {
1635
+ "type": "number"
1636
+ },
1637
+ "profile": {
1638
+ "type": "string"
1639
+ },
1640
+ "videoProfile": {
1641
+ "type": "string"
1642
+ },
1643
+ "volume": {
1644
+ "enum": [
1645
+ "+5dB",
1646
+ "-10dB",
1647
+ "0.5",
1648
+ "2",
1649
+ "loudnorm"
1650
+ ],
1651
+ "type": "string"
1652
+ },
1653
+ "pixelFormat": {
1654
+ "enum": [
1655
+ "yuv420p",
1656
+ "yuv444p",
1657
+ "yuv420p10le",
1658
+ "yuv444p10le"
1659
+ ],
1660
+ "type": "string"
1661
+ },
1662
+ "scaleType": {
1663
+ "enum": [
1664
+ "fitWidth",
1665
+ "fitHeight",
1666
+ "fitInside",
1667
+ "fitCrop",
1668
+ "fitBoth",
1669
+ "source"
1670
+ ],
1671
+ "type": "string"
1672
+ },
1673
+ "cq": {
1674
+ "type": "number"
1675
+ },
1676
+ "interlaced": {
1677
+ "type": "boolean"
1678
+ },
1679
+ "bframe": {
1680
+ "type": "number"
1681
+ },
1682
+ "id": {
1683
+ "type": "string"
1684
+ },
1685
+ "updatedAt": {
1686
+ "format": "date-time",
1687
+ "type": "string"
1688
+ },
1689
+ "language": {
1690
+ "type": "string"
1691
+ },
1692
+ "label": {
1693
+ "type": "string"
1694
+ },
1695
+ "hdr": {
1696
+ "type": "string"
1697
+ }
1698
+ },
1699
+ "required": [
1700
+ "createdAt",
1701
+ "channel",
1702
+ "id",
1703
+ "updatedAt",
1704
+ "hdr"
1705
+ ]
1706
+ },
1707
+ "PresetCollection": {
1708
+ "type": "object",
1709
+ "properties": {
1710
+ "data": {
1711
+ "readOnly": true,
1712
+ "type": "array",
1713
+ "items": {
1714
+ "$ref": "#/components/schemas/Preset"
1715
+ }
1716
+ },
1717
+ "count": {
1718
+ "type": "number",
1719
+ "readOnly": true
1720
+ },
1721
+ "total": {
1722
+ "type": "number",
1723
+ "readOnly": true
1724
+ },
1725
+ "page": {
1726
+ "type": "number",
1727
+ "readOnly": true
1728
+ },
1729
+ "perPage": {
1730
+ "type": "number",
1731
+ "readOnly": true
1732
+ }
1733
+ },
1734
+ "required": [
1735
+ "data",
1736
+ "count",
1737
+ "total",
1738
+ "page",
1739
+ "perPage"
1740
+ ]
1741
+ },
1742
+ "CreatePresetDto": {
1743
+ "type": "object",
1744
+ "properties": {
1745
+ "type": {
1746
+ "enum": [
1747
+ "video",
1748
+ "audio",
1749
+ "data"
1750
+ ],
1751
+ "type": "string",
1752
+ "description": "phân loại preset"
1753
+ },
1754
+ "codec": {
1755
+ "type": "string",
1756
+ "description": "Bộ mã của video",
1757
+ "enum": [
1758
+ "h264",
1759
+ "hevc",
1760
+ "copy",
1761
+ "aac",
1762
+ "ac3",
1763
+ "eac3",
1764
+ "mp2",
1765
+ "scte35",
1766
+ "id3"
1767
+ ]
1768
+ },
1769
+ "bitrate": {
1770
+ "type": "number",
1771
+ "minimum": 64000,
1772
+ "maximum": 60000000,
1773
+ "description": "Giá trị bitrate"
1774
+ },
1775
+ "description": {
1776
+ "type": "string",
1777
+ "description": "mô tả tuỳ chỉnh của đầu ra"
1778
+ },
1779
+ "options": {
1780
+ "type": "string"
1781
+ },
1782
+ "sampleRate": {
1783
+ "type": "number",
1784
+ "description": "audio only",
1785
+ "enum": [
1786
+ 44100,
1787
+ 48000
1788
+ ]
1789
+ },
1790
+ "channel": {
1791
+ "type": "number",
1792
+ "description": "audio only",
1793
+ "default": 2,
1794
+ "enum": [
1795
+ 1,
1796
+ 2,
1797
+ 6
1798
+ ]
1799
+ },
1800
+ "profile": {
1801
+ "enum": [
1802
+ "aac_low",
1803
+ "aac_he",
1804
+ "aac_he_v2",
1805
+ "aac_main",
1806
+ "aac_ld",
1807
+ "aac_eld"
1808
+ ],
1809
+ "type": "string",
1810
+ "description": "audio only"
1811
+ },
1812
+ "videoProfile": {
1813
+ "enum": [
1814
+ "BASELINE",
1815
+ "MAIN",
1816
+ "HIGH"
1817
+ ],
1818
+ "type": "string",
1819
+ "description": "video only",
1820
+ "default": "BASELINE"
1821
+ },
1822
+ "volume": {
1823
+ "enum": [
1824
+ "+5dB",
1825
+ "-10dB",
1826
+ "0.5",
1827
+ "2",
1828
+ "loudnorm"
1829
+ ],
1830
+ "type": "string",
1831
+ "description": " audio only\n thay đổi volume từ luồng gốc:\n + \"+5dB\", \"-10dB\": thay đổi 1 lượng)\n + 0.5, 2 : giảm 1 nửa, gấp đôi\n + \"loudnorm\": tự động theo chuẩn EBU R128\n "
1832
+ },
1833
+ "fps": {
1834
+ "type": "number",
1835
+ "minimum": 10,
1836
+ "maximum": 60,
1837
+ "description": "video only. Giá trị khung hình trên giây (Frame per second). Giá trị này không thể lớn hơn giá trị fps của luồng đầu vào"
1838
+ },
1839
+ "height": {
1840
+ "type": "number",
1841
+ "minimum": 0,
1842
+ "maximum": 4320,
1843
+ "description": "video only. Giá trị độ cao của video của luồng đầu ra, dựa trên pixel. Đối với phần lớn bộ mã video bạn có thể để trống, chiều cao của video sẽ tương ứng với nguồn đầu vào. Tuy nhiên, việc này không được khuyến khích"
1844
+ },
1845
+ "width": {
1846
+ "type": "number",
1847
+ "minimum": 0,
1848
+ "maximum": 7680,
1849
+ "description": "video only. Giá trị độ rộng của video của luồng đầu ra, dựa trên pixel. Đối với phần lớn bộ mã video bạn có thể để trống, chiều rộng của video sẽ tương ứng với nguồn đầu vào. Tuy nhiên, việc này không được khuyến khích"
1850
+ },
1851
+ "cbr": {
1852
+ "type": "boolean",
1853
+ "description": "video only. bật chế độ constant bitrate"
1854
+ },
1855
+ "pixelFormat": {
1856
+ "enum": [
1857
+ "yuv420p",
1858
+ "yuv444p",
1859
+ "yuv420p10le",
1860
+ "yuv444p10le"
1861
+ ],
1862
+ "type": "string",
1863
+ "description": "video only"
1864
+ },
1865
+ "scaleType": {
1866
+ "enum": [
1867
+ "fitWidth",
1868
+ "fitHeight",
1869
+ "fitInside",
1870
+ "fitCrop",
1871
+ "fitBoth",
1872
+ "source"
1873
+ ],
1874
+ "type": "string",
1875
+ "description": "video only, (chú ý: nếu để width, height, scaleType trong option tổng, nguồn sẽ scale trước khi xử lý tiếp theo)"
1876
+ },
1877
+ "cq": {
1878
+ "type": "number",
1879
+ "minimum": 0,
1880
+ "maximum": 51,
1881
+ "description": "video only, chế độ constant quality"
1882
+ },
1883
+ "interlaced": {
1884
+ "type": "boolean",
1885
+ "description": "video only, chế độ video interlaced"
1886
+ },
1887
+ "bframe": {
1888
+ "type": "number",
1889
+ "minimum": 0,
1890
+ "maximum": 3,
1891
+ "description": "bframe number"
1892
+ },
1893
+ "hdr": {
1894
+ "enum": [
1895
+ "COPY",
1896
+ "NONE",
1897
+ "HDR10",
1898
+ "HLG10",
1899
+ "PQ10"
1900
+ ],
1901
+ "type": "string",
1902
+ "description": "video only"
1903
+ },
1904
+ "name": {
1905
+ "type": "string",
1906
+ "pattern": "/^[a-zA-Z0-9_-]*$/",
1907
+ "description": "Tên"
1908
+ },
1909
+ "minRate": {
1910
+ "type": "number"
1911
+ },
1912
+ "maxRate": {
1913
+ "type": "number"
1914
+ },
1915
+ "language": {
1916
+ "type": "string"
1917
+ },
1918
+ "label": {
1919
+ "type": "string"
1920
+ }
1921
+ },
1922
+ "required": [
1923
+ "name"
1924
+ ]
1925
+ },
1926
+ "UpdatePresetDto": {
1927
+ "type": "object",
1928
+ "properties": {
1929
+ "type": {
1930
+ "enum": [
1931
+ "video",
1932
+ "audio",
1933
+ "data"
1934
+ ],
1935
+ "type": "string",
1936
+ "description": "phân loại preset"
1937
+ },
1938
+ "codec": {
1939
+ "type": "string",
1940
+ "description": "Bộ mã của video",
1941
+ "enum": [
1942
+ "h264",
1943
+ "hevc",
1944
+ "copy",
1945
+ "aac",
1946
+ "ac3",
1947
+ "eac3",
1948
+ "mp2",
1949
+ "scte35",
1950
+ "id3"
1951
+ ]
1952
+ },
1953
+ "bitrate": {
1954
+ "type": "number",
1955
+ "minimum": 64000,
1956
+ "maximum": 60000000,
1957
+ "description": "Giá trị bitrate"
1958
+ },
1959
+ "description": {
1960
+ "type": "string",
1961
+ "description": "mô tả tuỳ chỉnh của đầu ra"
1962
+ },
1963
+ "options": {
1964
+ "type": "string"
1965
+ },
1966
+ "sampleRate": {
1967
+ "type": "number",
1968
+ "description": "audio only",
1969
+ "enum": [
1970
+ 44100,
1971
+ 48000
1972
+ ]
1973
+ },
1974
+ "channel": {
1975
+ "type": "number",
1976
+ "description": "audio only",
1977
+ "default": 2,
1978
+ "enum": [
1979
+ 1,
1980
+ 2,
1981
+ 6
1982
+ ]
1983
+ },
1984
+ "profile": {
1985
+ "enum": [
1986
+ "aac_low",
1987
+ "aac_he",
1988
+ "aac_he_v2",
1989
+ "aac_main",
1990
+ "aac_ld",
1991
+ "aac_eld"
1992
+ ],
1993
+ "type": "string",
1994
+ "description": "audio only"
1995
+ },
1996
+ "videoProfile": {
1997
+ "enum": [
1998
+ "BASELINE",
1999
+ "MAIN",
2000
+ "HIGH"
2001
+ ],
2002
+ "type": "string",
2003
+ "description": "video only",
2004
+ "default": "BASELINE"
2005
+ },
2006
+ "volume": {
2007
+ "enum": [
2008
+ "+5dB",
2009
+ "-10dB",
2010
+ "0.5",
2011
+ "2",
2012
+ "loudnorm"
2013
+ ],
2014
+ "type": "string",
2015
+ "description": " audio only\n thay đổi volume từ luồng gốc:\n + \"+5dB\", \"-10dB\": thay đổi 1 lượng)\n + 0.5, 2 : giảm 1 nửa, gấp đôi\n + \"loudnorm\": tự động theo chuẩn EBU R128\n "
2016
+ },
2017
+ "fps": {
2018
+ "type": "number",
2019
+ "minimum": 10,
2020
+ "maximum": 60,
2021
+ "description": "video only. Giá trị khung hình trên giây (Frame per second). Giá trị này không thể lớn hơn giá trị fps của luồng đầu vào"
2022
+ },
2023
+ "height": {
2024
+ "type": "number",
2025
+ "minimum": 0,
2026
+ "maximum": 4320,
2027
+ "description": "video only. Giá trị độ cao của video của luồng đầu ra, dựa trên pixel. Đối với phần lớn bộ mã video bạn có thể để trống, chiều cao của video sẽ tương ứng với nguồn đầu vào. Tuy nhiên, việc này không được khuyến khích"
2028
+ },
2029
+ "width": {
2030
+ "type": "number",
2031
+ "minimum": 0,
2032
+ "maximum": 7680,
2033
+ "description": "video only. Giá trị độ rộng của video của luồng đầu ra, dựa trên pixel. Đối với phần lớn bộ mã video bạn có thể để trống, chiều rộng của video sẽ tương ứng với nguồn đầu vào. Tuy nhiên, việc này không được khuyến khích"
2034
+ },
2035
+ "cbr": {
2036
+ "type": "boolean",
2037
+ "description": "video only. bật chế độ constant bitrate"
2038
+ },
2039
+ "pixelFormat": {
2040
+ "enum": [
2041
+ "yuv420p",
2042
+ "yuv444p",
2043
+ "yuv420p10le",
2044
+ "yuv444p10le"
2045
+ ],
2046
+ "type": "string",
2047
+ "description": "video only"
2048
+ },
2049
+ "scaleType": {
2050
+ "enum": [
2051
+ "fitWidth",
2052
+ "fitHeight",
2053
+ "fitInside",
2054
+ "fitCrop",
2055
+ "fitBoth",
2056
+ "source"
2057
+ ],
2058
+ "type": "string",
2059
+ "description": "video only, (chú ý: nếu để width, height, scaleType trong option tổng, nguồn sẽ scale trước khi xử lý tiếp theo)"
2060
+ },
2061
+ "cq": {
2062
+ "type": "number",
2063
+ "minimum": 0,
2064
+ "maximum": 51,
2065
+ "description": "video only, chế độ constant quality"
2066
+ },
2067
+ "interlaced": {
2068
+ "type": "boolean",
2069
+ "description": "video only, chế độ video interlaced"
2070
+ },
2071
+ "bframe": {
2072
+ "type": "number",
2073
+ "minimum": 0,
2074
+ "maximum": 3,
2075
+ "description": "bframe number"
2076
+ },
2077
+ "hdr": {
2078
+ "enum": [
2079
+ "COPY",
2080
+ "NONE",
2081
+ "HDR10",
2082
+ "HLG10",
2083
+ "PQ10"
2084
+ ],
2085
+ "type": "string",
2086
+ "description": "video only"
2087
+ },
2088
+ "name": {
2089
+ "type": "string",
2090
+ "pattern": "/^[a-zA-Z0-9_-]*$/",
2091
+ "description": "Tên"
2092
+ },
2093
+ "minRate": {
2094
+ "type": "number"
2095
+ },
2096
+ "maxRate": {
2097
+ "type": "number"
2098
+ },
2099
+ "language": {
2100
+ "type": "string"
2101
+ },
2102
+ "label": {
2103
+ "type": "string"
2104
+ }
2105
+ }
2106
+ },
2107
+ "Profile": {
2108
+ "type": "object",
2109
+ "properties": {
2110
+ "name": {
2111
+ "type": "string",
2112
+ "sortable": true,
2113
+ "filterable": true
2114
+ },
2115
+ "description": {
2116
+ "type": "string",
2117
+ "sortable": true,
2118
+ "filterable": true
2119
+ },
2120
+ "id": {
2121
+ "type": "string",
2122
+ "filterable": true
2123
+ },
2124
+ "createdAt": {
2125
+ "format": "date-time",
2126
+ "type": "string",
2127
+ "sortable": true,
2128
+ "filterable": true
2129
+ },
2130
+ "updatedAt": {
2131
+ "format": "date-time",
2132
+ "type": "string",
2133
+ "sortable": true,
2134
+ "filterable": true
2135
+ },
2136
+ "presets": {
2137
+ "type": "array",
2138
+ "items": {
2139
+ "type": "object"
2140
+ }
2141
+ },
2142
+ "isDefault": {
2143
+ "type": "boolean"
2144
+ }
2145
+ },
2146
+ "required": [
2147
+ "updatedAt",
2148
+ "presets",
2149
+ "isDefault"
2150
+ ]
2151
+ },
2152
+ "ProfileCollection": {
2153
+ "type": "object",
2154
+ "properties": {
2155
+ "data": {
2156
+ "readOnly": true,
2157
+ "type": "array",
2158
+ "items": {
2159
+ "$ref": "#/components/schemas/Profile"
2160
+ }
2161
+ },
2162
+ "count": {
2163
+ "type": "number",
2164
+ "readOnly": true
2165
+ },
2166
+ "total": {
2167
+ "type": "number",
2168
+ "readOnly": true
2169
+ },
2170
+ "page": {
2171
+ "type": "number",
2172
+ "readOnly": true
2173
+ },
2174
+ "perPage": {
2175
+ "type": "number",
2176
+ "readOnly": true
2177
+ }
2178
+ },
2179
+ "required": [
2180
+ "count",
2181
+ "total",
2182
+ "page",
2183
+ "perPage"
2184
+ ]
2185
+ },
2186
+ "CreateProfileDto": {
2187
+ "type": "object",
2188
+ "properties": {
2189
+ "name": {
2190
+ "type": "string",
2191
+ "pattern": "/^[a-zA-Z0-9_-]*$/",
2192
+ "description": "Tên"
2193
+ },
2194
+ "description": {
2195
+ "type": "string",
2196
+ "description": "mô tả tuỳ chỉnh của đầu ra"
2197
+ },
2198
+ "presets": {
2199
+ "type": "array",
2200
+ "items": {
2201
+ "$ref": "#/components/schemas/CreatePresetDto"
2202
+ }
2203
+ }
2204
+ },
2205
+ "required": [
2206
+ "name"
2207
+ ]
2208
+ },
2209
+ "UpdateProfileDto": {
2210
+ "type": "object",
2211
+ "properties": {
2212
+ "name": {
2213
+ "type": "string",
2214
+ "pattern": "/^[a-zA-Z0-9_-]*$/",
2215
+ "description": "Tên"
2216
+ },
2217
+ "description": {
2218
+ "type": "string",
2219
+ "description": "mô tả tuỳ chỉnh của đầu ra"
2220
+ },
2221
+ "presets": {
2222
+ "type": "array",
2223
+ "items": {
2224
+ "$ref": "#/components/schemas/UpdatePresetDto"
2225
+ }
2226
+ }
2227
+ }
2228
+ },
2229
+ "SettingConfig": {
2230
+ "type": "object",
2231
+ "properties": {
2232
+ "baseOnMachine": {
2233
+ "type": "boolean"
2234
+ },
2235
+ "machineId": {
2236
+ "type": "string"
2237
+ },
2238
+ "machineType": {
2239
+ "enum": [
2240
+ "SIGMA_MACHINE",
2241
+ "SIGMA_MACHINE_CLUSTER",
2242
+ "SIGMA_COMPONENT_CLUSTER"
2243
+ ],
2244
+ "type": "string"
2245
+ },
2246
+ "ingest": {
2247
+ "type": "object",
2248
+ "properties": {
2249
+ "privateRtmp": {
2250
+ "required": true,
2251
+ "type": "string"
2252
+ },
2253
+ "publicRtmp": {
2254
+ "required": true,
2255
+ "type": "string"
2256
+ },
2257
+ "privateSrt": {
2258
+ "required": true,
2259
+ "type": "string"
2260
+ },
2261
+ "api": {
2262
+ "required": false,
2263
+ "type": "string"
2264
+ }
2265
+ }
2266
+ },
2267
+ "origin": {
2268
+ "type": "object",
2269
+ "properties": {
2270
+ "publicOrigin": {
2271
+ "required": true,
2272
+ "type": "string"
2273
+ },
2274
+ "privateOrigin": {
2275
+ "required": true,
2276
+ "type": "string"
2277
+ }
2278
+ }
2279
+ },
2280
+ "callback": {
2281
+ "type": "object",
2282
+ "properties": {
2283
+ "record": {
2284
+ "required": true,
2285
+ "type": "string"
2286
+ }
2287
+ }
2288
+ }
2289
+ },
2290
+ "required": [
2291
+ "ingest",
2292
+ "origin",
2293
+ "callback"
2294
+ ]
2295
+ },
2296
+ "SettingDto": {
2297
+ "type": "object",
2298
+ "properties": {
2299
+ "baseOnMachine": {
2300
+ "type": "boolean"
2301
+ },
2302
+ "machineType": {
2303
+ "type": "string",
2304
+ "enum": [
2305
+ "SIGMA_MACHINE",
2306
+ "SIGMA_MACHINE_CLUSTER",
2307
+ "SIGMA_COMPONENT_CLUSTER"
2308
+ ]
2309
+ },
2310
+ "machineId": {
2311
+ "type": "string"
2312
+ }
2313
+ },
2314
+ "required": [
2315
+ "baseOnMachine"
2316
+ ]
2317
+ },
2318
+ "CheckSetting": {
2319
+ "type": "object",
2320
+ "properties": {
2321
+ "isSetting": {
2322
+ "type": "boolean"
2323
+ }
2324
+ },
2325
+ "required": [
2326
+ "isSetting"
2327
+ ]
2328
+ },
2329
+ "S3": {
2330
+ "type": "object",
2331
+ "properties": {
2332
+ "endpoint": {
2333
+ "type": "string"
2334
+ },
2335
+ "bucket": {
2336
+ "type": "string"
2337
+ },
2338
+ "accessKey": {
2339
+ "type": "string"
2340
+ },
2341
+ "secretKey": {
2342
+ "type": "string"
2343
+ },
2344
+ "region": {
2345
+ "type": "string"
2346
+ },
2347
+ "segmentPrefix": {
2348
+ "type": "string"
2349
+ }
2350
+ },
2351
+ "required": [
2352
+ "endpoint",
2353
+ "bucket",
2354
+ "accessKey",
2355
+ "secretKey"
2356
+ ]
2357
+ },
2358
+ "FTP": {
2359
+ "type": "object",
2360
+ "properties": {
2361
+ "host": {
2362
+ "type": "string"
2363
+ },
2364
+ "port": {
2365
+ "type": "number"
2366
+ },
2367
+ "username": {
2368
+ "type": "string"
2369
+ },
2370
+ "password": {
2371
+ "type": "string"
2372
+ },
2373
+ "segmentPrefix": {
2374
+ "type": "string"
2375
+ }
2376
+ },
2377
+ "required": [
2378
+ "host",
2379
+ "port",
2380
+ "username",
2381
+ "password"
2382
+ ]
2383
+ },
2384
+ "Destination": {
2385
+ "type": "object",
2386
+ "properties": {
2387
+ "type": {
2388
+ "type": "string",
2389
+ "enum": [
2390
+ "s3",
2391
+ "ftp",
2392
+ "local"
2393
+ ]
2394
+ },
2395
+ "s3": {
2396
+ "$ref": "#/components/schemas/S3"
2397
+ },
2398
+ "ftp": {
2399
+ "$ref": "#/components/schemas/FTP"
2400
+ }
2401
+ },
2402
+ "required": [
2403
+ "type"
2404
+ ]
2405
+ },
2406
+ "Machine": {
2407
+ "type": "object",
2408
+ "properties": {
2409
+ "enabled": {
2410
+ "type": "boolean"
2411
+ },
2412
+ "machineType": {
2413
+ "type": "string",
2414
+ "enum": [
2415
+ "SIGMA_MACHINE",
2416
+ "SIGMA_MACHINE_CLUSTER",
2417
+ "SIGMA_COMPONENT_CLUSTER"
2418
+ ]
2419
+ },
2420
+ "machineId": {
2421
+ "type": "string"
2422
+ }
2423
+ },
2424
+ "required": [
2425
+ "enabled"
2426
+ ]
2427
+ },
2428
+ "CreateChannelDto": {
2429
+ "type": "object",
2430
+ "properties": {
2431
+ "name": {
2432
+ "type": "string",
2433
+ "maxLength": 256,
2434
+ "pattern": "/^[a-zA-Z0-9_-]*$/"
2435
+ },
2436
+ "description": {
2437
+ "type": "string",
2438
+ "maxLength": 250
2439
+ },
2440
+ "tags": {
2441
+ "type": "array",
2442
+ "items": {
2443
+ "type": "string",
2444
+ "maxLength": 35
2445
+ }
2446
+ },
2447
+ "transcodeProfile": {
2448
+ "type": "array",
2449
+ "items": {
2450
+ "type": "string"
2451
+ }
2452
+ },
2453
+ "type": {
2454
+ "type": "string",
2455
+ "enum": [
2456
+ "transcode",
2457
+ "forward",
2458
+ "hybrid"
2459
+ ]
2460
+ },
2461
+ "mode": {
2462
+ "type": "string",
2463
+ "enum": [
2464
+ "normal",
2465
+ "low-latency",
2466
+ "ultra-low-latency"
2467
+ ]
2468
+ },
2469
+ "stopTimeout": {
2470
+ "type": "number",
2471
+ "minimum": 30,
2472
+ "maximum": 86400
2473
+ },
2474
+ "catchup": {
2475
+ "type": "boolean"
2476
+ },
2477
+ "destinationCatchup": {
2478
+ "$ref": "#/components/schemas/Destination"
2479
+ },
2480
+ "record": {
2481
+ "type": "boolean"
2482
+ },
2483
+ "destinationRecord": {
2484
+ "$ref": "#/components/schemas/Destination"
2485
+ },
2486
+ "outputFormat": {
2487
+ "type": "string",
2488
+ "enum": [
2489
+ "hls",
2490
+ "dash"
2491
+ ]
2492
+ },
2493
+ "machine": {
2494
+ "$ref": "#/components/schemas/Machine"
2495
+ }
2496
+ },
2497
+ "required": [
2498
+ "name",
2499
+ "tags",
2500
+ "transcodeProfile",
2501
+ "type",
2502
+ "mode",
2503
+ "stopTimeout",
2504
+ "catchup",
2505
+ "record",
2506
+ "outputFormat",
2507
+ "machine"
2508
+ ]
2509
+ },
2510
+ "Input": {
2511
+ "type": "object",
2512
+ "properties": {
2513
+ "id": {
2514
+ "type": "string"
2515
+ },
2516
+ "streamToken": {
2517
+ "type": "string"
2518
+ },
2519
+ "channelId": {
2520
+ "type": "string"
2521
+ },
2522
+ "type": {
2523
+ "type": "string",
2524
+ "enum": [
2525
+ "live-channel"
2526
+ ]
2527
+ },
2528
+ "status": {
2529
+ "type": "string",
2530
+ "enum": [
2531
+ "idle",
2532
+ "used"
2533
+ ]
2534
+ },
2535
+ "rtmpServer": {
2536
+ "type": "string"
2537
+ },
2538
+ "appId": {
2539
+ "type": "string"
2540
+ }
2541
+ },
2542
+ "required": [
2543
+ "id",
2544
+ "streamToken",
2545
+ "channelId",
2546
+ "type",
2547
+ "status",
2548
+ "rtmpServer",
2549
+ "appId"
2550
+ ]
2551
+ },
2552
+ "Channel": {
2553
+ "type": "object",
2554
+ "properties": {
2555
+ "id": {
2556
+ "type": "string",
2557
+ "filterable": true,
2558
+ "description": "channel Identify"
2559
+ },
2560
+ "name": {
2561
+ "type": "string",
2562
+ "filterable": true,
2563
+ "description": "name"
2564
+ },
2565
+ "tags": {
2566
+ "filterable": true,
2567
+ "description": "tags",
2568
+ "type": "array",
2569
+ "items": {
2570
+ "type": "string"
2571
+ }
2572
+ },
2573
+ "appId": {
2574
+ "type": "string",
2575
+ "filterable": true,
2576
+ "description": "appId"
2577
+ },
2578
+ "type": {
2579
+ "enum": [
2580
+ "transcode",
2581
+ "forward",
2582
+ "hybrid"
2583
+ ],
2584
+ "type": "string",
2585
+ "filterable": true,
2586
+ "description": "type"
2587
+ },
2588
+ "mode": {
2589
+ "enum": [
2590
+ "normal",
2591
+ "low-latency",
2592
+ "ultra-low-latency",
2593
+ "mix"
2594
+ ],
2595
+ "type": "string",
2596
+ "filterable": true,
2597
+ "description": "mode"
2598
+ },
2599
+ "status": {
2600
+ "enum": [
2601
+ "idle",
2602
+ "active",
2603
+ "stop"
2604
+ ],
2605
+ "type": "string",
2606
+ "filterable": true,
2607
+ "description": "status"
2608
+ },
2609
+ "createdAt": {
2610
+ "format": "date-time",
2611
+ "type": "string",
2612
+ "filterable": true,
2613
+ "description": "tags",
2614
+ "sortable": true
2615
+ },
2616
+ "updatedAt": {
2617
+ "format": "date-time",
2618
+ "type": "string",
2619
+ "filterable": true,
2620
+ "description": "tags",
2621
+ "sortable": true
2622
+ },
2623
+ "description": {
2624
+ "type": "string"
2625
+ },
2626
+ "transcodeId": {
2627
+ "type": "string"
2628
+ },
2629
+ "inputId": {
2630
+ "type": "string"
2631
+ },
2632
+ "input": {
2633
+ "$ref": "#/components/schemas/Input"
2634
+ },
2635
+ "transcodeProfile": {
2636
+ "type": "array",
2637
+ "items": {
2638
+ "type": "string"
2639
+ }
2640
+ },
2641
+ "stopTimeout": {
2642
+ "type": "number"
2643
+ },
2644
+ "interaction": {
2645
+ "type": "boolean"
2646
+ },
2647
+ "catchup": {
2648
+ "type": "boolean"
2649
+ },
2650
+ "destinationCatchup": {
2651
+ "$ref": "#/components/schemas/Destination"
2652
+ },
2653
+ "record": {
2654
+ "type": "boolean"
2655
+ },
2656
+ "destinationRecord": {
2657
+ "$ref": "#/components/schemas/Destination"
2658
+ },
2659
+ "dvr": {
2660
+ "type": "boolean"
2661
+ },
2662
+ "outputFormat": {
2663
+ "enum": [
2664
+ "hls",
2665
+ "dash"
2666
+ ],
2667
+ "type": "string"
2668
+ },
2669
+ "currentSessionId": {
2670
+ "type": "string"
2671
+ },
2672
+ "currentSession": {
2673
+ "$ref": "#/components/schemas/Session"
2674
+ },
2675
+ "liveStreamUrl": {
2676
+ "type": "string"
2677
+ },
2678
+ "machine": {
2679
+ "$ref": "#/components/schemas/Machine"
2680
+ }
2681
+ },
2682
+ "required": [
2683
+ "id",
2684
+ "name",
2685
+ "tags",
2686
+ "appId",
2687
+ "type",
2688
+ "mode",
2689
+ "status",
2690
+ "description",
2691
+ "transcodeId",
2692
+ "inputId",
2693
+ "input",
2694
+ "transcodeProfile",
2695
+ "stopTimeout",
2696
+ "interaction",
2697
+ "catchup",
2698
+ "destinationCatchup",
2699
+ "record",
2700
+ "destinationRecord",
2701
+ "dvr",
2702
+ "outputFormat",
2703
+ "currentSession",
2704
+ "liveStreamUrl",
2705
+ "machine"
2706
+ ]
2707
+ },
2708
+ "ClientInfo": {
2709
+ "type": "object",
2710
+ "properties": {
2711
+ "action": {
2712
+ "type": "string"
2713
+ },
2714
+ "stream": {
2715
+ "type": "string"
2716
+ },
2717
+ "ip": {
2718
+ "type": "string"
2719
+ },
2720
+ "client_id": {
2721
+ "type": "string"
2722
+ },
2723
+ "param": {
2724
+ "type": "string"
2725
+ },
2726
+ "tcUrl": {
2727
+ "type": "string"
2728
+ },
2729
+ "ips": {
2730
+ "type": "array",
2731
+ "items": {
2732
+ "type": "string"
2733
+ }
2734
+ },
2735
+ "app": {
2736
+ "type": "string"
2737
+ },
2738
+ "stream_id": {
2739
+ "type": "string"
2740
+ }
2741
+ },
2742
+ "required": [
2743
+ "action",
2744
+ "stream",
2745
+ "ip",
2746
+ "client_id",
2747
+ "param",
2748
+ "tcUrl",
2749
+ "ips",
2750
+ "app",
2751
+ "stream_id"
2752
+ ]
2753
+ },
2754
+ "IngestInfo": {
2755
+ "type": "object",
2756
+ "properties": {
2757
+ "id": {
2758
+ "type": "string"
2759
+ },
2760
+ "type": {
2761
+ "type": "string"
2762
+ },
2763
+ "codec": {
2764
+ "type": "string"
2765
+ },
2766
+ "bitrate": {
2767
+ "type": "number"
2768
+ },
2769
+ "startTime": {
2770
+ "type": "number"
2771
+ },
2772
+ "profile": {
2773
+ "type": "string"
2774
+ },
2775
+ "channel": {
2776
+ "type": "string"
2777
+ },
2778
+ "sampleRate": {
2779
+ "type": "number"
2780
+ },
2781
+ "width": {
2782
+ "type": "number"
2783
+ },
2784
+ "height": {
2785
+ "type": "number"
2786
+ },
2787
+ "fps": {
2788
+ "type": "string"
2789
+ },
2790
+ "pixelFormat": {
2791
+ "type": "string"
2792
+ },
2793
+ "kf": {
2794
+ "type": "string"
2795
+ },
2796
+ "kfTime": {
2797
+ "type": "number"
2798
+ },
2799
+ "kfFound": {
2800
+ "type": "number"
2801
+ },
2802
+ "kfSafe": {
2803
+ "type": "number"
2804
+ },
2805
+ "level": {
2806
+ "type": "string"
2807
+ }
2808
+ },
2809
+ "required": [
2810
+ "id",
2811
+ "type"
2812
+ ]
2813
+ },
2814
+ "Event": {
2815
+ "type": "object",
2816
+ "properties": {
2817
+ "sessionId": {
2818
+ "type": "string",
2819
+ "filterable": true,
2820
+ "description": "sessionId"
2821
+ },
2822
+ "createdAt": {
2823
+ "format": "date-time",
2824
+ "type": "string",
2825
+ "sortable": true,
2826
+ "description": "createdAt"
2827
+ },
2828
+ "updatedAt": {
2829
+ "format": "date-time",
2830
+ "type": "string",
2831
+ "sortable": true,
2832
+ "description": "updatedAt"
2833
+ },
2834
+ "id": {
2835
+ "type": "string"
2836
+ },
2837
+ "actor": {
2838
+ "type": "string",
2839
+ "enum": [
2840
+ "system",
2841
+ "user"
2842
+ ]
2843
+ },
2844
+ "userId": {
2845
+ "type": "string"
2846
+ },
2847
+ "action": {
2848
+ "type": "string",
2849
+ "enum": [
2850
+ "published",
2851
+ "init",
2852
+ "processing",
2853
+ "processError",
2854
+ "stable",
2855
+ "unpublished",
2856
+ "unstable",
2857
+ "republished",
2858
+ "ended",
2859
+ "error"
2860
+ ]
2861
+ },
2862
+ "errorMessage": {
2863
+ "type": "string"
2864
+ }
2865
+ },
2866
+ "required": [
2867
+ "id",
2868
+ "action"
2869
+ ]
2870
+ },
2871
+ "Session": {
2872
+ "type": "object",
2873
+ "properties": {
2874
+ "id": {
2875
+ "type": "string",
2876
+ "filterable": true,
2877
+ "description": "id"
2878
+ },
2879
+ "name": {
2880
+ "type": "string",
2881
+ "filterable": true,
2882
+ "description": "name"
2883
+ },
2884
+ "status": {
2885
+ "enum": [
2886
+ "ended",
2887
+ "processing",
2888
+ "live",
2889
+ "error",
2890
+ "preparing",
2891
+ "initialized"
2892
+ ],
2893
+ "type": "string",
2894
+ "filterable": true,
2895
+ "description": "status"
2896
+ },
2897
+ "appId": {
2898
+ "type": "string",
2899
+ "filterable": true,
2900
+ "description": "appId"
2901
+ },
2902
+ "duration": {
2903
+ "type": "number",
2904
+ "description": "duration"
2905
+ },
2906
+ "finishedAt": {
2907
+ "format": "date-time",
2908
+ "type": "string",
2909
+ "filterable": true,
2910
+ "description": "finishedAt",
2911
+ "sortable": true
2912
+ },
2913
+ "startedAt": {
2914
+ "format": "date-time",
2915
+ "type": "string",
2916
+ "filterable": true,
2917
+ "description": "startedAt",
2918
+ "sortable": true
2919
+ },
2920
+ "channelId": {
2921
+ "type": "string",
2922
+ "filterable": true,
2923
+ "description": "channel Identify"
2924
+ },
2925
+ "channel": {
2926
+ "filterable": true,
2927
+ "description": "channel Info",
2928
+ "allOf": [
2929
+ {
2930
+ "$ref": "#/components/schemas/Channel"
2931
+ }
2932
+ ]
2933
+ },
2934
+ "createdAt": {
2935
+ "format": "date-time",
2936
+ "type": "string",
2937
+ "filterable": true,
2938
+ "description": "createdAt",
2939
+ "sortable": true
2940
+ },
2941
+ "updatedAt": {
2942
+ "format": "date-time",
2943
+ "type": "string",
2944
+ "filterable": true,
2945
+ "description": "updatedAt",
2946
+ "sortable": true
2947
+ },
2948
+ "catchupUrl": {
2949
+ "type": "string"
2950
+ },
2951
+ "recordUrls": {
2952
+ "type": "array",
2953
+ "items": {
2954
+ "type": "string"
2955
+ }
2956
+ },
2957
+ "clientInfo": {
2958
+ "$ref": "#/components/schemas/ClientInfo"
2959
+ },
2960
+ "ingestInfo": {
2961
+ "type": "array",
2962
+ "items": {
2963
+ "$ref": "#/components/schemas/IngestInfo"
2964
+ }
2965
+ },
2966
+ "events": {
2967
+ "type": "array",
2968
+ "items": {
2969
+ "$ref": "#/components/schemas/Event"
2970
+ }
2971
+ },
2972
+ "isCreateTask": {
2973
+ "type": "boolean"
2974
+ },
2975
+ "clientId": {
2976
+ "type": "string"
2977
+ },
2978
+ "setting": {
2979
+ "$ref": "#/components/schemas/SettingConfig"
2980
+ },
2981
+ "livestreamUrl": {
2982
+ "type": "string"
2983
+ }
2984
+ },
2985
+ "required": [
2986
+ "id",
2987
+ "name",
2988
+ "status",
2989
+ "appId",
2990
+ "duration",
2991
+ "finishedAt",
2992
+ "startedAt",
2993
+ "channelId",
2994
+ "channel",
2995
+ "events",
2996
+ "isCreateTask",
2997
+ "clientId",
2998
+ "setting",
2999
+ "livestreamUrl"
3000
+ ]
3001
+ },
3002
+ "ChannelCollection": {
3003
+ "type": "object",
3004
+ "properties": {
3005
+ "data": {
3006
+ "readOnly": true,
3007
+ "type": "array",
3008
+ "items": {
3009
+ "$ref": "#/components/schemas/Channel"
3010
+ }
3011
+ },
3012
+ "count": {
3013
+ "type": "number",
3014
+ "readOnly": true
3015
+ },
3016
+ "total": {
3017
+ "type": "number",
3018
+ "readOnly": true
3019
+ },
3020
+ "page": {
3021
+ "type": "number",
3022
+ "readOnly": true
3023
+ },
3024
+ "perPage": {
3025
+ "type": "number",
3026
+ "readOnly": true
3027
+ }
3028
+ },
3029
+ "required": [
3030
+ "count",
3031
+ "total",
3032
+ "page",
3033
+ "perPage"
3034
+ ]
3035
+ },
3036
+ "UpdateChannelDto": {
3037
+ "type": "object",
3038
+ "properties": {
3039
+ "name": {
3040
+ "type": "string",
3041
+ "maxLength": 256,
3042
+ "pattern": "/^[a-zA-Z0-9_-]*$/"
3043
+ },
3044
+ "description": {
3045
+ "type": "string",
3046
+ "maxLength": 250
3047
+ },
3048
+ "tags": {
3049
+ "type": "array",
3050
+ "items": {
3051
+ "type": "string",
3052
+ "maxLength": 35
3053
+ }
3054
+ },
3055
+ "transcodeProfile": {
3056
+ "type": "array",
3057
+ "items": {
3058
+ "type": "string"
3059
+ }
3060
+ },
3061
+ "type": {
3062
+ "type": "string",
3063
+ "enum": [
3064
+ "transcode",
3065
+ "forward",
3066
+ "hybrid"
3067
+ ]
3068
+ },
3069
+ "mode": {
3070
+ "type": "string",
3071
+ "enum": [
3072
+ "normal",
3073
+ "low-latency",
3074
+ "ultra-low-latency"
3075
+ ]
3076
+ },
3077
+ "stopTimeout": {
3078
+ "type": "number",
3079
+ "minimum": 30,
3080
+ "maximum": 86400
3081
+ },
3082
+ "catchup": {
3083
+ "type": "boolean"
3084
+ },
3085
+ "destinationCatchup": {
3086
+ "$ref": "#/components/schemas/Destination"
3087
+ },
3088
+ "record": {
3089
+ "type": "boolean"
3090
+ },
3091
+ "destinationRecord": {
3092
+ "$ref": "#/components/schemas/Destination"
3093
+ },
3094
+ "outputFormat": {
3095
+ "type": "string",
3096
+ "enum": [
3097
+ "hls",
3098
+ "dash"
3099
+ ]
3100
+ },
3101
+ "machine": {
3102
+ "$ref": "#/components/schemas/Machine"
3103
+ }
3104
+ }
3105
+ },
3106
+ "TagsDto": {
3107
+ "type": "object",
3108
+ "properties": {
3109
+ "tags": {
3110
+ "type": "array",
3111
+ "items": {
3112
+ "type": "string"
3113
+ }
3114
+ }
3115
+ },
3116
+ "required": [
3117
+ "tags"
3118
+ ]
3119
+ },
3120
+ "SessionCollection": {
3121
+ "type": "object",
3122
+ "properties": {
3123
+ "data": {
3124
+ "readOnly": true,
3125
+ "type": "array",
3126
+ "items": {
3127
+ "$ref": "#/components/schemas/Session"
3128
+ }
3129
+ },
3130
+ "count": {
3131
+ "type": "number",
3132
+ "readOnly": true
3133
+ },
3134
+ "total": {
3135
+ "type": "number",
3136
+ "readOnly": true
3137
+ },
3138
+ "page": {
3139
+ "type": "number",
3140
+ "readOnly": true
3141
+ },
3142
+ "perPage": {
3143
+ "type": "number",
3144
+ "readOnly": true
3145
+ }
3146
+ },
3147
+ "required": [
3148
+ "count",
3149
+ "total",
3150
+ "page",
3151
+ "perPage"
3152
+ ]
3153
+ },
3154
+ "RenameSessionDto": {
3155
+ "type": "object",
3156
+ "properties": {
3157
+ "name": {
3158
+ "type": "string",
3159
+ "maxLength": 256,
3160
+ "pattern": "/^[a-zA-Z0-9_\\-:]*$/"
3161
+ }
3162
+ },
3163
+ "required": [
3164
+ "name"
3165
+ ]
3166
+ },
3167
+ "GetSessionStatus": {
3168
+ "type": "object",
3169
+ "properties": {
3170
+ "status": {
3171
+ "type": "string",
3172
+ "enum": [
3173
+ "ended",
3174
+ "processing",
3175
+ "live",
3176
+ "error",
3177
+ "preparing",
3178
+ "initialized"
3179
+ ]
3180
+ }
3181
+ },
3182
+ "required": [
3183
+ "status"
3184
+ ]
3185
+ },
3186
+ "Task": {
3187
+ "type": "object",
3188
+ "properties": {
3189
+ "id": {
3190
+ "type": "string",
3191
+ "filterable": true,
3192
+ "description": "id"
3193
+ },
3194
+ "sessionId": {
3195
+ "type": "string",
3196
+ "filterable": true,
3197
+ "description": "sessionId"
3198
+ },
3199
+ "appId": {
3200
+ "type": "string"
3201
+ },
3202
+ "name": {
3203
+ "type": "string"
3204
+ },
3205
+ "status": {
3206
+ "enum": [
3207
+ "initialized",
3208
+ "error",
3209
+ "started",
3210
+ "finished"
3211
+ ],
3212
+ "type": "string"
3213
+ },
3214
+ "jobId": {
3215
+ "type": "string"
3216
+ },
3217
+ "type": {
3218
+ "enum": [
3219
+ "transcode",
3220
+ "package",
3221
+ "catchup",
3222
+ "record"
3223
+ ],
3224
+ "type": "string"
3225
+ },
3226
+ "errorCount": {
3227
+ "type": "number"
3228
+ },
3229
+ "stopTimeout": {
3230
+ "type": "number"
3231
+ },
3232
+ "createdAt": {
3233
+ "format": "date-time",
3234
+ "type": "string"
3235
+ },
3236
+ "updatedAt": {
3237
+ "format": "date-time",
3238
+ "type": "string"
3239
+ },
3240
+ "life": {
3241
+ "type": "string"
3242
+ },
3243
+ "speed": {
3244
+ "type": "number"
3245
+ },
3246
+ "config": {
3247
+ "type": "object"
3248
+ }
3249
+ },
3250
+ "required": [
3251
+ "id",
3252
+ "sessionId",
3253
+ "appId",
3254
+ "name",
3255
+ "status",
3256
+ "jobId",
3257
+ "type",
3258
+ "errorCount",
3259
+ "stopTimeout",
3260
+ "life",
3261
+ "speed",
3262
+ "config"
3263
+ ]
3264
+ },
3265
+ "TaskCollection": {
3266
+ "type": "object",
3267
+ "properties": {
3268
+ "data": {
3269
+ "readOnly": true,
3270
+ "type": "array",
3271
+ "items": {
3272
+ "$ref": "#/components/schemas/Task"
3273
+ }
3274
+ },
3275
+ "count": {
3276
+ "type": "number",
3277
+ "readOnly": true
3278
+ },
3279
+ "total": {
3280
+ "type": "number",
3281
+ "readOnly": true
3282
+ },
3283
+ "page": {
3284
+ "type": "number",
3285
+ "readOnly": true
3286
+ },
3287
+ "perPage": {
3288
+ "type": "number",
3289
+ "readOnly": true
3290
+ }
3291
+ },
3292
+ "required": [
3293
+ "count",
3294
+ "total",
3295
+ "page",
3296
+ "perPage"
3297
+ ]
3298
+ },
3299
+ "CreateTaskDto": {
3300
+ "type": "object",
3301
+ "properties": {
3302
+ "sessionId": {
3303
+ "type": "string"
3304
+ },
3305
+ "type": {
3306
+ "type": "string",
3307
+ "enum": [
3308
+ "catchup",
3309
+ "record"
3310
+ ]
3311
+ }
3312
+ },
3313
+ "required": [
3314
+ "sessionId",
3315
+ "type"
3316
+ ]
3317
+ },
3318
+ "EventCollection": {
3319
+ "type": "object",
3320
+ "properties": {
3321
+ "data": {
3322
+ "readOnly": true,
3323
+ "type": "array",
3324
+ "items": {
3325
+ "$ref": "#/components/schemas/Event"
3326
+ }
3327
+ },
3328
+ "count": {
3329
+ "type": "number",
3330
+ "readOnly": true
3331
+ },
3332
+ "total": {
3333
+ "type": "number",
3334
+ "readOnly": true
3335
+ },
3336
+ "page": {
3337
+ "type": "number",
3338
+ "readOnly": true
3339
+ },
3340
+ "perPage": {
3341
+ "type": "number",
3342
+ "readOnly": true
3343
+ }
3344
+ },
3345
+ "required": [
3346
+ "count",
3347
+ "total",
3348
+ "page",
3349
+ "perPage"
3350
+ ]
3351
+ }
3352
+ }
3353
+ }
3354
+ }