Difference between revisions of "42Q-MES0159 Multimedia API Whitepaper"

From 42Q
Jump to navigation Jump to search
 
(6 intermediate revisions by 2 users not shown)
Line 14: Line 14:
 
<br/> <br/> &nbsp;
 
<br/> <br/> &nbsp;
  
= <span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F">What is a Multimedia API?</span></span></span></span></span></span></span></span></span></span></span> =
+
= <span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F"><span class="mw-headline" id="What_is_a_Multimedia_API.3F">What is a Multimedia API?</span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
Multimedia Application Programming Interface is a set of endpoints that allow client applications to safely talk to 42Q media repositories. It is a collection of high-level APIs that support flexible application development. It is the same engine used by standard 42Q Clients such as PWB (Production Workbench) to capture, store, and link media to manufacturing processes as they happen.
 
Multimedia Application Programming Interface is a set of endpoints that allow client applications to safely talk to 42Q media repositories. It is a collection of high-level APIs that support flexible application development. It is the same engine used by standard 42Q Clients such as PWB (Production Workbench) to capture, store, and link media to manufacturing processes as they happen.
Line 22: Line 22:
 
&nbsp;
 
&nbsp;
  
 +
&nbsp;
  
= <span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View">Simplified Point-of-View</span></span></span></span></span></span></span></span></span></span></span></span></span> =
+
= <span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View:"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View"><span class="mw-headline" id="Simplified_Point-of-View">Simplified Point-of-View</span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
A good example of an API is when you use an application on your phone, the application connects to the Internet and sends data to a server. The server then retrieves that data, interprets it, performs the necessary actions, and sends it back to your phone. The application then interprets that data and presents you with the information you wanted in a readable way. &nbsp; To explain this better, let us take a look at a familiar example. Imagine you’re sitting at a table in a restaurant with a menu of choices to order from. The kitchen is part of the “system” that will prepare your order. What is missing is the critical link to communicate your order to the kitchen and deliver your food back to your table. That’s where the waiter or API comes in. The waiter is the messenger – or API – that takes your request or order and tells the kitchen – the system – what to do. Then the waiter delivers the response back to you; in this case, it is the food.
 
A good example of an API is when you use an application on your phone, the application connects to the Internet and sends data to a server. The server then retrieves that data, interprets it, performs the necessary actions, and sends it back to your phone. The application then interprets that data and presents you with the information you wanted in a readable way. &nbsp; To explain this better, let us take a look at a familiar example. Imagine you’re sitting at a table in a restaurant with a menu of choices to order from. The kitchen is part of the “system” that will prepare your order. What is missing is the critical link to communicate your order to the kitchen and deliver your food back to your table. That’s where the waiter or API comes in. The waiter is the messenger – or API – that takes your request or order and tells the kitchen – the system – what to do. Then the waiter delivers the response back to you; in this case, it is the food.
Line 29: Line 30:
 
&nbsp;
 
&nbsp;
  
 +
&nbsp;
  
= <span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example">Multimedia API Example</span></span></span></span></span></span></span></span></span></span></span></span> =
+
= <span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example:"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example"><span class="mw-headline" id="Multimedia_API_Example">Multimedia API Example</span></span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
&nbsp;'''[[File:MultimediaAPIExample.png|700px|MultimediaAPIExample.png]]'''
 
&nbsp;'''[[File:MultimediaAPIExample.png|700px|MultimediaAPIExample.png]]'''
Line 36: Line 38:
 
&nbsp;
 
&nbsp;
  
= <span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F">What is the Multimedia API used for in 42Q?</span></span></span></span></span></span></span></span></span></span></span></span> =
+
= <span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F"><span class="mw-headline" id="What_is_the_Multimedia_API_used_for_in_42Q_.3F">What is the Multimedia API used for in 42Q?</span></span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
<br/> Multimedia API in 42Q provides a common API for loading and receiving multimedia elements. It also provides different options of storage.&nbsp; &nbsp;
 
<br/> Multimedia API in 42Q provides a common API for loading and receiving multimedia elements. It also provides different options of storage.&nbsp; &nbsp;
Line 53: Line 55:
 
&nbsp;
 
&nbsp;
  
= <span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F">What Are The Benefits Of Using a Multimedia API in 42Q?</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
+
= <span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F"><span class="mw-headline" id="What_Are_The_Benefits_Of_Using_a_Multimedia_API_in_42Q_.3F">What Are The Benefits Of Using a Multimedia API in 42Q?</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
Multimedia API is used to provide better and universal Multimedia storage and retrieval services so that each module can easily and conveniently integrate with a common platform for storage. This will be widely used for modules and 42Q applications. It provides a common API for loading and retrieving Multimedia elements.
 
Multimedia API is used to provide better and universal Multimedia storage and retrieval services so that each module can easily and conveniently integrate with a common platform for storage. This will be widely used for modules and 42Q applications. It provides a common API for loading and retrieving Multimedia elements.
Line 66: Line 68:
 
&nbsp;
 
&nbsp;
  
= <span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:">Examples of GET, POST, DELETE for HTTP/HTTPS:</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
+
&nbsp;
 +
 
 +
= <span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:"><span class="mw-headline" id="Examples_of_GET.2C_POST.2C_DELETE_for_HTTP.2FHTTPS_:">Examples of GET, POST, DELETE for HTTP/HTTPS</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
  
 
'''[[File:GPDPost1.png|700px|file:GPDPost1.png]]'''
 
'''[[File:GPDPost1.png|700px|file:GPDPost1.png]]'''
Line 84: Line 88:
 
&nbsp;
 
&nbsp;
  
&nbsp;
+
= <span class="mw-headline" id="Conduit_and_Production_Workbench_Services"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:">Conduit and Production Workbench Services</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
 
 
= <span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:"><span class="mw-headline" id="Conduit_and_Production_Workbench_Services:">Conduit and Production Workbench Services:</span></span></span></span></span></span></span></span></span></span></span></span></span></span> =
 
  
 
'''Example&nbsp;:&nbsp;'''
 
'''Example&nbsp;:&nbsp;'''
Line 94: Line 96:
 
'''''Record Media&nbsp;:'''''
 
'''''Record Media&nbsp;:'''''
  
Permanently associate a '''''previously acquired'''''media identifier (from the Multimedia service) with the scanned unit serial number’s device history record creating a brand new activity. &nbsp;
+
Permanently associate a '''''previously acquired&nbsp;'''''media identifier (from the Multimedia service) with the scanned unit serial number’s device history record creating a brand new activity. &nbsp;
  
 
Ex. 42Q might render a certificate of compliance (CoC) for the production unit and store that generated documentation using the Multimedia API. The resultant media reference can then be supplied to Record Media to permanently associate that certificate with the unit serial number.&nbsp;
 
Ex. 42Q might render a certificate of compliance (CoC) for the production unit and store that generated documentation using the Multimedia API. The resultant media reference can then be supplied to Record Media to permanently associate that certificate with the unit serial number.&nbsp;
Line 102: Line 104:
 
Permanently associate a previously acquired media identifier (from the Multimedia service) with a previously recorded action (Defect, Component, Repair, etc.) on the unit serial number &nbsp;
 
Permanently associate a previously acquired media identifier (from the Multimedia service) with a previously recorded action (Defect, Component, Repair, etc.) on the unit serial number &nbsp;
  
Ex. A good example of this would be taking a picture of a defective unit. That image would then be stored using the Multimedia API to then take the media identifier that is given and call RecordMedia or LinkMedia commands , depending on if you want a general unit association or a link to an existing activity on that unit associated.
+
Ex. A good example of this would be taking a picture of a defective unit. That image would then be stored using the Multimedia API to then take the media identifier that is given and call RecordMedia or LinkMedia commands, depending on if you want a general unit association or a link to an existing activity on that unit associated.
  
 
'''''StoreMedia&nbsp;:'''''
 
'''''StoreMedia&nbsp;:'''''
Line 112: Line 114:
 
&nbsp;
 
&nbsp;
  
&nbsp;
+
= Storage and Retention Maintenance Policy&nbsp; =
 
 
&nbsp;
 
  
 +
<span id="docs-internal-guid-9b76910a-7fff-b950-4a70-2e83602a21d1">A</span>'''&nbsp;'''retention policy is a vital key part of the lifecycle of a record. These policies can be used to assist users in describing how long a business needs to store a piece of information and/or record and how to dispose of these records correctly when the time comes.
  
= <span class="mw-headline" id="Document_Revision_History"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log"><span class="mw-headline" id="Revision_Log">Document Revision History</span></span></span></span></span></span></span></span></span></span></span></span></span> =
+
Within the Retention Maintenance section within 42Q, users will gain the ability to edit and change Retention (Days) and Deletion (Days) once the Retention Policy is chosen. Once the date of expiration is reached, the media will be deleted and can not be restored.
  
{| border="1" class="wikitable"
+
&nbsp;
|-
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 90px;" | Date
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 147px;" | Author
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 147px;" | Title
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 70px;" | Version
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 225px;" | Change Reference
 
! style="text-align: center; background-color: rgb(0, 168, 168); width: 165px;" | Approved by
 
|-
 
| style="width: 90px;" |
 
8/3/2020
 
  
| style="width: 147px;" | Tiana Hollingsworth
+
&nbsp;
| style="width: 147px;" | Technical Writer
 
| style="width: 70px;" | A1
 
| style="width: 225px;" |
 
Proof of Concept.
 
  
| &nbsp;
+
&nbsp;
|-
 
| style="width: 90px;" |
 
8/3/2020
 
 
 
| style="width: 147px;" | Marisol Vargas
 
| style="width: 147px;" | Technical Writer
 
| style="width: 70px;" | A2
 
| style="width: 225px;" |
 
First Review, context, language, and topics
 
 
 
| &nbsp;
 
|-
 
| style="width: 90px;" |
 
8/14/2020
 
 
 
| style="width: 147px;" | Elaine Fonaro
 
| style="width: 147px;" | Technical Writer
 
| style="width: 70px;" | A3
 
| style="width: 225px;" |
 
General Review
 
 
 
| &nbsp;
 
|-
 
| style="width: 90px;" |
 
8/14/2020
 
 
 
| style="width: 147px;" | Tiana Hollingsworth
 
| style="width: 147px;" | Technical Writer
 
| style="width: 70px;" | A4&nbsp;
 
| style="width: 225px;" |
 
Updates of review recommendations.&nbsp;
 
 
 
| &nbsp;
 
|-
 
| style="width: 90px;" |
 
10/21/2020
 
 
 
| style="width: 147px;" | Gustavo Velasquez
 
| style="width: 147px;" | &nbsp;
 
| style="width: 70px;" | A5
 
| style="width: 225px;" |
 
Revision and adjustments. Prep for linking how-to documents to accompany the Whitepaper.
 
 
 
| &nbsp;
 
|}
 
  [[Category:Pages with broken file links]]
 

Latest revision as of 15:28, 11 October 2021

Multimedia API

The demand for capturing more sophisticated data is increasing. One such demand is storing media evidence as related data associated with a manufacturing process to provide higher product quality control. 

With 42Q’s Multimedia features and API, factories can upload media items and require associated metadata.

This whitepaper provides details on how to use 42Q API endpoints to store, retrieve, and delete Multimedia items from local or 42Q repositories using one of 42Q’s newest features: Multimedia API. 

 

 MultiIntro1.png



 

What is a Multimedia API?

Multimedia Application Programming Interface is a set of endpoints that allow client applications to safely talk to 42Q media repositories. It is a collection of high-level APIs that support flexible application development. It is the same engine used by standard 42Q Clients such as PWB (Production Workbench) to capture, store, and link media to manufacturing processes as they happen.

The Multimedia API ecosystem provides what it’s needed by a customer to integrate their local applications with 42Q unleashing all the power, scalability, and elastic storage provided by a true cloud-based manufacturing execution system.   Multimedia API is used by several 42Q modules to store any kind of media such as documents, images, videos, etc. It contains a map/link system that keeps track of which media elements were loaded and where they are stored.

 

 

Simplified Point-of-View

A good example of an API is when you use an application on your phone, the application connects to the Internet and sends data to a server. The server then retrieves that data, interprets it, performs the necessary actions, and sends it back to your phone. The application then interprets that data and presents you with the information you wanted in a readable way.   To explain this better, let us take a look at a familiar example. Imagine you’re sitting at a table in a restaurant with a menu of choices to order from. The kitchen is part of the “system” that will prepare your order. What is missing is the critical link to communicate your order to the kitchen and deliver your food back to your table. That’s where the waiter or API comes in. The waiter is the messenger – or API – that takes your request or order and tells the kitchen – the system – what to do. Then the waiter delivers the response back to you; in this case, it is the food.

 

 

Multimedia API Example

 MultimediaAPIExample.png

 

What is the Multimedia API used for in 42Q?


Multimedia API in 42Q provides a common API for loading and receiving multimedia elements. It also provides different options of storage.   

Some of 42Q common API’s are as follows:  

  • Save Media
  • Get Media 
  • Delete Media 
  • Restore Media

Multimedia API can perform HTTP(S) requests for loading media items and required associated metadata, retrieving an identifier for the given data, and delete media items based on the media identifier. All requests to the API require a customer to identify who is accessing the API, and a Palindrome authorization header.

 

 

What Are The Benefits Of Using a Multimedia API in 42Q?

Multimedia API is used to provide better and universal Multimedia storage and retrieval services so that each module can easily and conveniently integrate with a common platform for storage. This will be widely used for modules and 42Q applications. It provides a common API for loading and retrieving Multimedia elements.

 
Below is a list of beneficial things that Multimedia API provides :  

  • Provides a common repository for multimedia elements collected both from client endpoints and internal applications securely. 
  • Ensures evidence such as documents, pictures and videos can be seamlessly collected and reported attending the various customers demanding this kind of evidence for tracking/audit/certification purposes.
  • Assures accuracy of PASS/FAIL to log among CRITICAL PROCESSES as solicited by many customers requiring imaging verification and tracking at 42Q MES.
  • Data Segregation and security as a design principle as all media elements are  stored in tenant specific cloud buckets at the customer, plant, or site levels.

 

 

Examples of GET, POST, DELETE for HTTP/HTTPS

file:GPDPost1.png

GET  to download/retrieve the media.
POST to save/restore media (content itself or a URL.)
DELETE to delete the media item based on its unique identifier.

 

Conduit and Production Workbench Services

Example : 

Manipulating the device history record of a serial number in 42Q involves communication with the Conduit service and/or the Production Workbench client application. The following operations are currently provided by the Conduit service :  

Record Media :

Permanently associate a previously acquired media identifier (from the Multimedia service) with the scanned unit serial number’s device history record creating a brand new activity.  

Ex. 42Q might render a certificate of compliance (CoC) for the production unit and store that generated documentation using the Multimedia API. The resultant media reference can then be supplied to Record Media to permanently associate that certificate with the unit serial number. 

Link Media :

Permanently associate a previously acquired media identifier (from the Multimedia service) with a previously recorded action (Defect, Component, Repair, etc.) on the unit serial number  

Ex. A good example of this would be taking a picture of a defective unit. That image would then be stored using the Multimedia API to then take the media identifier that is given and call RecordMedia or LinkMedia commands, depending on if you want a general unit association or a link to an existing activity on that unit associated.

StoreMedia :

Conduit based example of consuming the Multimedia API


Note: While storing media through Conduit is possible, it is generally more efficient for clients to communicate with the Multimedia API directly.

 

Storage and Retention Maintenance Policy 

A retention policy is a vital key part of the lifecycle of a record. These policies can be used to assist users in describing how long a business needs to store a piece of information and/or record and how to dispose of these records correctly when the time comes.

Within the Retention Maintenance section within 42Q, users will gain the ability to edit and change Retention (Days) and Deletion (Days) once the Retention Policy is chosen. Once the date of expiration is reached, the media will be deleted and can not be restored.