- Number
- 20190364081
- Published
- 2019-11-28
- Filed
- 2019-05-23
- Assignee
- Disney Enterprises, Inc.
- Inventors
- Valenzuela; Jaime Arturo et al.
- CPC
- H04L65/762; H04L67/133; H04L67/63
- Verdict
- Set aside microservices media workflow orchestration, cloud plumbing
- Source
- Google Patents · FreePatentsOnline
Abstract
A method and system provide the ability to orchestrate a media workflow using a computer system. A payload for an application programming interface (API) to be utilized to process media content is determined. The payload is parsed to display one or more variables of the payload in a graphical user interface. The variables are mapped to webform user interface elements. A job of the media workflow is executed. During execution, a webform of the user interface elements is programmatically generated and presented to an operator, data for the payload is received via the webform, and the received data is provided to the API to process the media content.
Background
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates generally to media supply chains, and in particular, to a method, apparatus, system, and article of manufacture for utilizing microservices to create media pipelines that dynamically create webforms and orchestrate service calls.2. Description of the Related Art
Media content owners/producers (e.g., film/television production studios such as 20.sup.TH CENTURY FOX and/or DISNEY) have a long tradition of asset protection and archiving. A digital media archive (DMA) in the prior art originated using an on-premises linear tape-open (LTO) storage and an “enterprise” workflow solution. Such a solution required large capital investment, continuous maintenance and support, significant (yet unreliable) power and cooling, highly specialized software development and engineering staff. Further, the rigid structure of the solution resulted in high cost, lost innovation, and technical debt. The prior art DMA solutions slowly evolved to a cloud based native architecture with serverless workflows. However, such evolved solutions required the manual coding and establishment of workflows by an engineering team. With such a system, there was a need for a mechanism that would empower administrators/engineering staff to create and modify workflows themselves. A more detailed description of these problems may be useful to better understand the prior art issues.
Prior art DMAs utilize servers, datab
Claims
1. A computer-implemented method for orchestrating a media workflow using a computer system, comprising: determining a payload for an application programming interface (API) to be utilized to process media content; parsing the payload to display one or more variables of the payload in a graphical user interface; mapping the one or more variables of the payload to one or more webform user interface elements; and executing a job of the media workflow, wherein during the executing: a webform comprising the one or more webform user interface elements is programmatically generated and presented to an operator; data for the payload is received via the webform; and the received data is provided to the API to process the media content.
2. The computer-implemented method of claim 1, wherein the determining the payload comprises: identifying a cloud-based location for the API; and querying a service at the location to determine the payload.
3. The computer-implemented method of claim 1, wherein: the mapping is conducted using a point and click process.
4. The computer-implemented method of claim 1, wherein the mapping further comprises: assigning input validation, layout, and styling.
5. The computer-implemented method of claim 1, wherein the received data is provided to the API by invoking one or more reusable and scalable microservices that aggregate and transform the data for the payload.
6. The computer-implemented method of claim 1, further comprising: tracking a state of each task for the job; storing the state and result of each task throughout execution of the job; and presenting the state and result in a dashboard for all executing jobs.
7. The computer-implemented method of claim 6, further comprising: accepting submission of the job to be executed; and upon submission of the job to be executed, creating a new job record in a process orchestration application, wherein the new job record stores the state and result.
8. The computer-implemented method of claim 7, further comprising: invoking an instance of a state machine upon submission of the job to be executed, wherein the state machine comprises one or more component steps that can be skipped or retried from a step framework via the dashboard.
9. The computer-implemented method of claim 8, wherein the one or more component steps are programmatically updated dynamically in real time.
10. The computer-implemented method of claim 8, wherein the one or more component steps each comprise: a service uniform resource locator (URL); one or more input parameters; and one or more output parameters, wherein one or more of the input parameters of a second component step, of the one or more component steps, comprises one or more of the output parameters of a first component step, of the one or more component steps.
11. A computer-implemented system for orchestrating a media workflow, comprising: (a) a computer having a memory; (b) a processor executing on the computer; (c) the memory storing an application that is executed by the processor, wherein the application: determines a payload for an application programming interface (API) to be utilized to process media content; parses the payload to display one or more variables of the payload in a graphical user interface; maps the one or more variables of the payload to one or more webform user interface elements; and executes a job of the media workflow, wherein during the execution: a webform comprising the one or more webform user interface elements is programmatically generated and presented to an operator; data for the payload is received via the webform; and the received data is provided to the API to process the media content.
12. The computer-implemented system of claim 11, wherein the application determines the payload by: identifying a cloud-based location for the API; and querying a service at the location to determine the payload.
13. The computer-implemented system of claim 11, wherein: the application maps using a point and click process.
14. The computer-implemented system of claim 11, wherein the application maps by: assigning input validation, layout, and styling.
15. The computer-implemented system of claim 11, wherein the received data is provided to the API by invoking one or more reusable and scalable microservices that aggregate and transform the data for the payload.
16. The computer-implemented system of claim 11, wherein the application further: tracks a state of each task for the job; stores the state and result of each task throughout execution of the job; and presents the state and result in a dashboard for all executing jobs.
17. The computer-implemented system of claim 16, wherein the application further: accepts submission of the job to be executed; and upon submission of the job to be executed, creates a new job record in a process orchestration application, wherein the new job record stores the state and result.
18. The computer-implemented system of claim 17, wherein the application further: invokes an instance of a state machine upon submission of the job to be executed, wherein the state machine comprises one or more component steps that can be skipped or retried from a step framework via the dashboard.
19. The computer-implemented system of claim 18, wherein the one or more component steps are programmatically updated dynamically in real time.
20. The computer-implemented system of claim 18, wherein the one or more component steps each comprise: a service uniform resource locator (URL); one or more input parameters; and one or more output parameters, wherein one or more of the input parameters of a second component step, of the one or more component steps, comprises one or more of the output parameters of a first component step, of the one or more component steps.