Cinema8 Creative Studio Version 2.1.1 Update 6

Too many features have been added to the Webhook tool. You can find new updates below:

Security in Webhooks

Now, while creating a Webhook, in the header field, so that the URL cannot be anonymously taken from outside, it can be secured by using a header such as "X-API-KEY = ....." to be controlled. Thus, only those who have the header you typed will be able to access the data in the URL.

“Execute Synchronously” Feature

You can execute webhook requests synchronously with the "Execute Synchronously" feature in the webhook. If an action other than Webhook is selected in the OnClick, onStart, onEnd, or onComplete events, the other selected action will not work unless the webhook successfully performs the data return (sometimes due to slow internet speed or other reasons, webhook data exchange problems may occur). When successful data flow is achieved through the webhook, the other selected onClick, onStart, onEnd, or onComplete action will also run.

Sometimes, we may need to use the data that will return from the webhook elsewhere in the video. When the video continues before the data that will be used in the rest of the video is successfully returned from the webhook, the flow of the video may be disrupted. With the new "Execute Synchronously" feature, it was aimed to prevent this problem from occurring.

“Post User Interactions” Feature

A section named "Post User Interactions" has been added to the webhook create / edit page. If it is selected, a list of elements that can be selected will appear just below it. The user can only select the elements he thinks are necessary so that all elements are not added to the request.

Json Object API Feature Update

The following functions have been added to JS API;

getVariables();
getVariable(key)
setVariable(key, value)

 

Let's assume that we have {score: 10, xx: "yy"} values in the context while watching the video.

getVariables(); reply to be received with -> {score: 10, xx: "yy"}
getVariable('score'); reply to be received with ->   10
setVariable('key1', 'value1'); it does not return a value, it is a variable set operation. Updates if available with the same name, otherwise adds them as new. 

The result of this example will be updated as follows: -> {score: 10, xx: "yy", key1: "value1"}

 

Previously in Cinema8, when you wanted to add value to your video via webhook, you could only access the objects themselves. In other words, it was not possible to access the values inside the objects.

With this new update, it is possible to reach the values in the objects. You can reach these values and use them in the video. In other words, while the values returned via webhook response were set as "primitive" type, now they are set with the "nested object" model. If we examine it on an example;

1- Let's assume that an object like the example below arrives at Cinema8 via webhook.

{
  score: 85,
  user: {
      firstName: "John",
      lastName: "Doe",
      userName: "john.doe"
     }
 }

 

2- We can display this data, which can be accessed via webhook on Cinema8, using the "HTML" element as follows.

Score: ${context.score}
First Name: ${context.user.firstName}
Last Name: ${context.user.lastName}
Username: ${context.user.username}

 

3- It is possible to use this data, which we access via Webhook, with the "Conditional Action" element as follows.

user.username = "john.doe"