This type of Middleware Source is used for connecting a Mechanic to integrate its data through our Middleware Source with your graphics insertion system allowing you to display, in real-time, results on the screen.
The Mechanics you can connect to this Middleware Source are Poll, Scoring, Votes, Twitter Poll, Facebook Live, Story.
To learn how to create a Middleware Source, click here.
1. General Settings
-
Name (1): Naming your Mechanics Middleware Source is a good practice so that you and your teammates can identify it for later use.
-
Mechanics (2): Select the Mechanic you want to integrate with your graphics system. You may choose any mechanic from your current experience or others.
-
Custom Title (3): In the XML or Database; it appears in the title field/column.
-
Call to action (4): Use it to let your audience know where they should go to participate, e.g. vote for your favorite participant at www.xxx.com.
Additional Settings (5)
-
Polls to show: This refers to the data exposed in the XML. We recommend setting it as Current, this way if you have in the same Mechanic multiple Polls, Scorings, Votes, the XML only exposes the active one.
-
Percentage Decimals: Choose how many decimals (0 - 2) the results will be displayed.
- Number Formatting: According to the selected language, the thousands separator will be a period (.) or a comma (,). For additional information click here.
2. Integration
- Integration type (1): Select how you want to integrate the data according to the graphics system you have. If it is not listed click others.
-
Vizrt Integration
Integrations with Vizrt can be made through:
- Flowics Middleware + Data Reader, pick others from the dropdown.
For additional information about Vizrt integration click here.
- Flowics Middleware + Data Reader, pick others from the dropdown.
-
Integration Steps (2): From here you will be able to access the XML, JSON or you will find the steps on how to integrate according to your CG integration system.
-
Version (3): This refers to the Middleware version. We recommend to always use the higher one from the drop-down. Please refer to this article for more information.
- Connect to Middleware (4): Enable it, pick your middleware from the drop-down and find the destination path where the File or Database are being written in your shared network unit by the middleware.
3. Previewing Mechanics Middleware Source
After you have saved the Mechanics Middleware Source configuration you can preview its data. Keep in mind that the information in this section is not updated in real-time, so you should refresh the window to see the latest results.
4. XML integration
4.1 Example & Fields Description
4.1.1 XML Example
<mechanic> <widgetId>33847</widgetId> <title>WHO WAS THE WINNER OF THE SHOW?</title> <mechanicId>5e853daf45340632af76aae5</mechanicId> <callToAction></callToAction> <status>live</status> <currentPollId>d5876bbd-9629-45a4-a7da-351ff7bd9ebf</currentPollId> <currentPollName>WHO WAS THE WINNER OF THE SHOW?</currentPollName> <updatedAt>2020-04-15T22:45:32Z</updatedAt> <options> <option> <id>b1211b54-be80-433f-8ed6-daaa1ebd7e6c</id> <name>ALAN</name> <isCorrect>false</isCorrect> <pollId>d5876bbd-9629-45a4-a7da-351ff7bd9ebf</pollId> <pollName>WHO WAS THE WINNER OF THE SHOW?</pollName> <pollStatus>live</pollStatus> <pollType>quick_poll</pollType> <votingType>scoringresult</votingType> <total>5</total> <percentage>33.4</percentage> <average>0.0</average> <formattedTotal>5</formattedTotal> <formattedPercentage>33.4</formattedPercentage> <formattedAverage>0.0</formattedAverage> <integrationId></integrationId> <image>https://s3-assets2.flowics.com/web/uploads/production/generic-resources/asset/65003/versioned_cc5a71ec58a846a0ba5e7a283fa2ed5e.jpg</image> <localImagePath>/path/to/image.jpg</localImagePath> <ranking>0</ranking> </option> <option> <id>f55a01c2-d4d5-4e91-bc37-645d1dc4858d</id> <name>ALEX</name> <isCorrect>false</isCorrect> <pollId>d5876bbd-9629-45a4-a7da-351ff7bd9ebf</pollId> <pollName>WHO WAS THE WINNER OF THE SHOW?</pollName> <pollStatus>live</pollStatus> <pollType>quick_poll</pollType> <votingType>scoringresult</votingType> <total>5</total> <percentage>33.3</percentage> <average>0.0</average> <formattedTotal>5</formattedTotal> <formattedPercentage>33.3</formattedPercentage> <formattedAverage>0.0</formattedAverage> <integrationId></integrationId> <image>https://s3-assets1.flowics.com/web/uploads/production/generic-resources/asset/65004/versioned_5aaa31fc8ec5a856acffd916131b96fe.jpg</image> <localImagePath>/path/to/image2.jpg</localImagePath> <ranking>1</ranking> </option> <option> <id>d8141870-c3a4-421e-bd75-ed87f11bad63</id> <name>MACARENA</name> <isCorrect>true</isCorrect> <pollId>d5876bbd-9629-45a4-a7da-351ff7bd9ebf</pollId> <pollName>WHO WAS THE WINNER OF THE SHOW?</pollName> <pollStatus>live</pollStatus> <pollType>quick_poll</pollType> <votingType>scoringresult</votingType> <total>5</total> <percentage>33.3</percentage> <average>0.0</average> <formattedTotal>5</formattedTotal> <formattedPercentage>33.3</formattedPercentage> <formattedAverage>0.0</formattedAverage> <integrationId></integrationId> <image>https://s3-assets1.flowics.com/web/uploads/production/generic-resources/asset/65005/versioned_59ec2bf41a1cd7ce7e056cd71702f2fd.jpg</image> <localImagePath>/path/to/image3.jpg</localImagePath> <ranking>2</ranking> </option> </options> </mechanic>
4.1.2 Fields Description
Note that some field names change when using the Avid Maestro integration type.
Field | Description | Field (Avid Maestro integration) |
mechanic.widgetId | Id of the Widget | mechanic.widgetId |
mechanic.title | The question configured in the Widget's general settings. | mechanic.title |
mechanic.mechanicId | Id of the Mechanic. |
mechanic. mechanicId |
mechanic.callToAction | Exposes the data set in the call to action field in the general settings of the Widget. It is normally used to indicate where the audience needs to go to participate. | mechanic. callToAction |
mechanic.status | There are 3 status:
|
mechanic. status |
mechanic. currentPollId |
Id of the poll. |
mechanic. currentPollId |
mechanic. currentPollName |
The name of the poll. |
mechanic. currentPollName |
mechanic. updatedAt |
Last modification date of the Middleware Source Widget |
mechanic. updatedAt |
mechanic.options. option.id |
Id of the option. |
mechanic. options.option.idX |
mechanic.options. option.name |
Name of the option |
mechanic.options. option.nameX |
mechanic.options. option.isCorrect |
Correct option in the poll. |
mechanic.options. option.isCorrectX |
mechanic.options. option.pollId |
Id of the poll. |
mechanic.options. option.pollIdX |
mechanic.options. option.pollName |
Name of the poll. |
mechanic.options. option.pollNameX |
mechanic.options. option.pollStatus |
Status of the poll. Can be open or closed. |
mechanic.options. option.pollStatusX |
mechanic.options. option.pollType |
Type of Poll. |
mechanic.options. option.pollTypeX |
mechanic.options. option.votingType |
Type of vote. Can be Voting only, or once a day. |
mechanic.options. option.votingTypeX |
mechanic.options. option.total |
Exposes the total amount of votes that the option has collected. |
mechanic.options. option.totalX |
mechanic.options. option.percentage |
Exposes the percentage in relation to the total amount of votes collected. |
mechanic.options. option.percentageX |
mechanic.options. option.average |
Exposes the average in relation to the total amount of votes collected. |
mechanic.options. option.averageX |
mechanic.options. option.formattedTotal |
Similar to poll.items.item.total but the number will be formatted according to locale requested (added thousands separator). |
mechanic.options. option. formattedTotal |
mechanic.options.option. formattedPercentage |
Similar to poll.items.item.percentage but the number will be formatted according to locale requested (added thousands separator). |
mechanic.options. option. formattedPercentage |
mechanic.options.option. formattedAverage |
Similar to average but the number will be formatted according to locale requested (added thousands separator). |
mechanic.options. option. formattedAverage |
mechanic.options.option. integrationId |
Id that a user can assign to the Flow associated with the Widget to integrate with external systems. |
mechanic.options. option.integrationId |
mechanic.options. option.image |
URL to the image uploaded by the user in the Mechanic. |
mechanic.options. option.image |
mechanic.options. option.LocalImagePath |
Full path to downloaded Image. |
mechanic.options. option. LocalImagePath |
mechanic.options.option. ranking |
Reflects the position assigned to each option. This goes from zero that presents a higher number of votes than the one, this in turn greater than the two and so on. |
mechanic.options. option.ranking |
5. Database Integration
5.1 Columns Description
When using this kind of integration, a database table with the following columns is created. The type of columns is textual. For the specific type, check the middleware configuration, but they typically are text for MySQL or PostgreSQL and ntext for Microsoft SQL Server.
Column | Description | Column (Avid Maestro integration) |
widgetId | Id of the widget. | widgetId |
title | The question configured in the Widget's general settings. | title |
pollId | Id of the Mechanic. | pollId |
isLive | Its value can be true or false. A graphic artist can use this field to control the behavior of the scene connected to this Middleware Source, i.e., it can show or hide the poll based on its value. |
isLive |
status | There are 3 statuses:
|
status |
updatedAt | Last modification date of the Middleware Source Widget. | updatedAt |
callToAction | Exposes the data set in the call to action field in the general settings of the Widget. It is normally used to indicate where the audience needs to go to participate. | callToAction |
id | Id that a user can assign to the Flow associated with the Widget to integrate with external systems. | integrationId |
total | Exposes the total amount of votes that the option has collected. | totalX |
percentage | Exposes the percentage in relation to the total amount of votes collected. | percentageX |
formattedTotal | Similar to total but the number will be formatted according to locale requested (added thousands separator). | formattedTotal |
formattedPercentage | Similar to percentage but the number will be formatted according to locale requested (added thousands separator). | formattedPercentage |
image | URL to the image uploaded by the user in the Mechanic. | image |
ranking | Reflects the position assigned to each option. This goes from zero that presents a higher number of votes than the one, this in turn greater than the two and so on. | ranking |
6. JSON File integration
6.1 Example & Fields description
6.1.1 JSON Example
{ "widgetId":34312, "title":"Mechanics", "cta":"Go to www.sports.com to submit your vote!", "updatedAt":"2020-10-08T16:18:03Z", "mechanic":{ "id":"5f7b2e679570bc6e084a099d", "status":"live", "current":"043714a7-7052-4348-bb03-8ff2626d69f7", "items":[ { "id":"043714a7-7052-4348-bb03-8ff2626d69f7", "type":"quick_poll", "status":"live", "votingMode":"simple_mode", "question":"WHO WAS THE PLAYER OF THE MATCH?", "options":[ { "id":"acd560e1-1358-4b1a-a6cb-8dad858eab06", "name":"DYBALA", "integrationId":null, "image":"https://s3-assets1.flowics.com/web/uploads/production/generic-resources/asset/85978/versioned_ea3600c8b32484ce4756958e768cb7dd.png", "ranking":0, "total":0, "formattedTotal":"0", "percentage":25, "formattedPercentage":"25", "average":0, "formattedaverage":"0", "localImagePath":"C:\\Midlleware test\\media\\https\\s3-assets1.flowics.com\\83f1c3dfcf3a1a66a3ee666d417bc718916eea70.png" }, { "id":"5b4d975f-34f8-466d-9419-6148ee48ab45", "name":"GOMEZ", "integrationId":null, "image":"https://s3-assets0.flowics.com/web/uploads/production/generic-resources/asset/85980/versioned_967afcc89c0179d9164a5ab7f930147b.png", "ranking":1, "total":0, "formattedTotal":"0", "percentage":25, "formattedPercentage":"25", "average":0, "formattedaverage":"0", "localImagePath":"C:\\Midlleware test\\media\\https\\s3-assets0.flowics.com\\e849cca0140df07acb0d978714ff3b0dfcff65df.png" }, { "id":"9604d21b-8d70-4b4c-81a9-342d3aa4c7db", "name":"ZAPATA", "integrationId":null, "image":"https://s3-assets2.flowics.com/web/uploads/production/generic-resources/asset/85981/versioned_e75b4da69d3fb07303ade0ae91a788a2.png", "ranking":2, "total":0, "formattedTotal":"0", "percentage":25, "formattedPercentage":"25", "average":0, "formattedaverage":"0", "localImagePath":"C:\\Midlleware test\\media\\https\\s3-assets2.flowics.com\\56f09b77ffc3758945c1be9fcc356bec9578bb56.png" }, { "id":"0651ee62-a728-4b70-bd47-050250356a62", "name":"RONALDO", "integrationId":null, "image":"https://s3-assets0.flowics.com/web/uploads/production/generic-resources/asset/85979/versioned_e5aead5801320ee2887794744de733b9.png", "ranking":3, "total":0, "formattedTotal":"0", "percentage":25, "formattedPercentage":"25", "average":0, "formattedaverage":"0", "localImagePath":"C:\\Midlleware test\\media\\https\\s3-assets0.flowics.com\\c1fdcd2d780340590ea5ff91e6827efc20896aa7.png" } ] } ] } }
6.1.2 Fields Description
Field |
Description |
widgetId |
Id of the Widget |
title | Title of the mechanic, as configured in the Widget. |
cta | Call to action. |
updatedAt | Last modification datetime of Middleware Source (not data itself). ISO8601 format. |
mechanic.id | Id of the Mechanic. |
mechanic.status | There are 3 status:
|
mechanic.current | Id of the current mechanic item (participation). |
mechanic.items.id | Id of the item. |
mechanic.items.type | Mechanic Item type |
mechanic.items.status | There are 3 status:
|
mechanic.items.votingMode | Mechanic item Voting Mode |
mechanic.items.question | Is the question of the Mechanic. |
mechanic.items.options.id | Id of the option. |
mechanic.items.options.name | Name of the Mechanic. |
mechanic.items.options.integrationId | Id that a user can assign to the Flow associated with the Widget to integrate with external systems. |
mechanic.items.options.image | URL to the image uploaded by the user in the Mechanic. |
mechanic.items.options.localImagePath | Full path to downloaded Image. |
mechanic.items.options.ranking | Reflects the position assigned to each option. This goes from zero that presents a higher number of votes than the one, this in turn greater than the two and so on. |
mechanic.items.options.total | Exposes the total amount of votes that the option has collected. |
mechanic.items.options.formattedTotal | Similar to mechanic.items.options.total but the number will be formatted according to locale requested (added thousands separator). |
mechanic.items.options.percentage | Exposes the percentage in relation to the total amount of votes collected. |
mechanic.items.options.formattedPercentage | Similar to mechanic.items.options.percentage but the number will be formatted according to locale requested (added thousands separator). |
mechanic.items.options.average | Exposes the average in relation to the total amount of votes collected. |
mechanic.items.options.formattedaverage | Similar to average but the number will be formatted according to locale requested (added thousands separator). |