
25 May, 2022
Blog
By Anders Svensson
In our previous article Par1 of this series, we presented the Agama AWE SDK, the requirements needed to create a simple application to provide real use for Agama customers and the configuration of the project.
In the second part of the series, we're diving into how to create the layout and styling, and also elaborate on the application logic.
We have created a boilerplate application and defined the configuration parameters that shall be possible for the users to adapt. It is now time to start creating the actual functionality of the application. An important part of that is the actual layout and structure of the presentation, which for these applications is controlled by standard HTML, CSS, and JavaScript. In the application index.html below, we have modified the boilerplate HTML structure and instead defined a set of div:s used as placeholders for the configured test name and a div for the status indicator.
The ADE will automatically update the UI while editing and saving HTML so the structural changes will be shown immediately. The result is not interesting right now as we have not yet populated the div:s with any content and styling, so the result is still just an empty screen.
The Application logic To start populating the application with the configured content, test logic and the test status results, we need to start adding JavaScript code.
The main application entry point that is called by the Agama application framework is the onUpdate function. This function has two parameters, state and reason. The state parameter is an object that contains the configuration of the application. So, all the parameters that we defined in the JSON returned in the onConfiguration function, will be available in this object. The reason parameter is an integer stating why the function is being called; it allows us to implement different handling and behavior depending on this. In our application we must handle the create and configuration change reason. In the code above one can see how easily and obviously we can access and use the different configuration parameters that we have defined.
The program logic needed to implement the functionality is quite simple. When the application is created, we set up a timer that ensures that our test function update() is called at the user configured interval. The update() function in turn calls the defined REST API and checks the result codes against the configured, and depending on the result adding either a fail or ok CSS class to the status div.
The current result is now as above. We can now see the defined test name, in this case VoD system (which is the name we configured) but we do not see any status symbol. That is correct and it is because we have not yet added the styling for the status div.
Styling Adding CSS styling for the application is the last step in getting the applications appearance and functionality in-place. We use the automatically created file css/style.css and add the following.
It is here where we define the fail to indicate with an orange background, and ok to indicate with a green background.
Yes, now it looks more promising!
Most recent headlines
05/01/2027
Worlds first 802.15.4ab-UWB chip verified by Calterah and Rohde & Schwarz to be ...
13/11/2026
Download Now!
To view the white paper, please enter the following details:
--
First Name* First Name
Company*
Country* Please select your countryA...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Blue Lucy, the workflow orchestration and integration platform for broadcasters, rights owners and localisation companies, today announced an integration with c...
13/11/2026
Krotos announces Black Friday offers on Studio Pro and Studio Max
Brie Clayton November 12, 2026
0 Comments
First-year annual plans start at US$195.99...
13/11/2026
Blackmagic Design Announces Blackmagic Ambisonic Microphone
Brie Clayton November 12, 2026
0 Comments
New 7th order ambisonic microphone with 108 MEMS...
13/11/2026
Meet the Berklee Student Setting Planetary Motion to Music With his compositional platform SoniKosmos, Javier Roqueni aims to make the universe the ultimate i...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , er...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , er...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
13/11/2026
Amagi, the media industry cloud company, today announced a partnership with Golden Times Media Technology (stock code 920021.BJ), a Beijing-based media and tech...
13/11/2026
CGI (TSX: GIB.A) (NYSE: GIB), one of the largest independent IT and business consulting services firms in the world, together with its Malaysian partner, Cedar ...
13/11/2026
SMPTE, the home for media professionals, technologists and engineers, today announced that The Studio B&H and Riedel Communications will provide the video infra...
13/11/2026
iWedia, a global leader in connected TV software solutions, will present its software-first approach to DRAM optimization at Android TV APAC Summit 2026 in Bang...
13/11/2026
Beginning today, November 13, Apple HomeView is available for purchase at Apple Store locations, on the Apple Store online, and in the Apple Store app in select...
13/11/2026
From pediatric research to smart hospitals, AI is helping care teams spend less time on routine tasks and more time with patients.
Health systems and startups...
12/11/2026
Industry leaders examine how Dynamic Media Facility, Media eXchange Layer, and c...
12/11/2026
The junior Tar Heel is embracing the technical and creative challenges of live production while emerging as a leader and mentor in the control room...
12/11/2026
Gracenote, Nielsen's content intelligence business, has released its fifth a...
12/11/2026
RTL Deutschland will bring the NHL to free-to-air TV in Germany starting Nov. 30...
12/11/2026
Clear-Com supported On Air 2026, a 24-hour student-led broadcast connecting 45 u...
12/11/2026
uniqFEED has opened a Remote Operations Center (ROC) in Madrid, Spain. It is already operational, delivering virtual advertising for LaLiga matches. The ROC is ...
12/11/2026
Disney, ESPN and the NBA will present Dunk the Halls, the third real-time animated NBA game using Sony's Beyond Sports data visualization technology, on Chr...
12/11/2026
Van Wagner has launched Van Wagner RELAY, a digital platform for official athlet...
12/11/2026
Deal brings together two of the industry's most established graphics brands and significantly expands Vizrt's footprint in U.S. sports and regional broa...
12/11/2026
Euro TV Production GmbH of Austria has upgraded its outside broadcast vehicle with Lawo technology. The mc 36 Classic console in service since 2019 was replaced...
12/11/2026
Tagboard has launched Spark Resize, an AI-assisted tool now in beta that takes an existing graphic and produces a new version for a different aspect ratio or sc...
12/11/2026
Ben Winston, Glenn Weiss, and FIFA's Jenni-Lee Van Gelder headlined a day fo...
12/11/2026
Free interactive platform visualizes team tendencies, formations, and schemes, updated weekly...
12/11/2026
Sports Broadcasting Hall of Famer Charlie Jablonski's broadcasting career is...
12/11/2026
Blend between concert grand & vintage electric pianos
UVI's latest release combines a concert grand with a vintage electric piano in a single instrument...
12/11/2026
Native version of popular effects plug-in arrives
Many of the plug-ins that used to require Universal Audios Apollo interfaces or DSP accelerators have made...
12/11/2026
Four next-generation interfaces announced
Following on from the release of their new flagship Thunderbolt interfaces, Audient have refreshed the design of t...
12/11/2026
Rohde & Schwarz and Connektica showcase automated RF test systems for satellite ...
12/11/2026
Gracenote's 2026 State of Play report signals a rising retention risk: More ...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...
12/11/2026
Broadpeak and Magnite enable advertising on Afree TV to unlock new revenue opportunities for African content providers
Broadsmart, a technology integrator deli...
12/11/2026
PlayBox Neo is perceived in the industry as an innovator way ahead of its time, already making a profound impact in the Asia-Pacific region, where the company i...
12/11/2026
This agreement marks the next step in a multi-year digital transformation programme as distribution expands across more clients and markets, requiring reliable ...
12/11/2026
Share
{alert(Link copied)}).catch(err => {console.error(Failed to copy: , err)}) data-platform=copy_link data-action= class=font-ui-heading py-2 text-sm tex...