
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 ...
04/08/2026
Dalet, a leading technology and service provider for media-rich organizations, t...
04/07/2026
April 7 2026, 19:00 (PDT) Detective Conan: Fallen Angel of the Highway Opens in...
08/06/2026
The two execs discuss the goals and the challenges of building a huge multi-cult...
08/06/2026
This industry legend has been a road warrior since the early '90s and is, today, a lynchpin on College GameDay
The sports-production industry continues to ...
08/06/2026
DAZN has agreed a multi-year rights partnership with Extreme Fighting Championship (EFC), expanding its global combat sports portfolio.
DAZN will broadcast EFC...
08/06/2026
As fans move across broadcast, streaming, social, mobile and creator-led platforms, and they expect every angle, in real time, TVU Networks has released a new e...
08/06/2026
Infront has further strengthened the 2026 Diamond League's international bro...
08/06/2026
Grass Valley has announced the appointment of Sam Craig as Vice President, Global Pre-Sales. Based in the United States, Craig will lead Grass Valley's glob...
08/06/2026
SMPTE has announced its summer 2026 education lineup covering IP networking and SMPTE ST 2110, including two standalone courses, a 13-week boot camp, and a hand...
08/06/2026
Sportradar Group AG has announced a multi-year global agreement with Kalshi, a p...
08/06/2026
FIFA and Gamefam have announced the launch of a FIFA World Cup 2026 event on Roblox, running June 5 through July 31, 2026. The event centers on FIFA Super Socce...
08/06/2026
A collaboration of NHL Productions, Monumental Sports, and Michael Levitt Produc...
08/06/2026
CBS Sports production staffer Bryce Adair has died at the age of 31 after sustaining injuries during a car accident on Wednesday while in Ohio working the the P...
08/06/2026
Behind The Mic provides a roundup of recent news regarding on-air talent, including new deals, departures, and assignments compiled from press releases and repo...
08/06/2026
WMT Digital today announced the launch of WMT Fan Intelligence, designed to unif...
08/06/2026
The Heat are the seventh NBA team to air their games over-the-air next season...
08/06/2026
Paramount and UFC have announced an expansion of their media rights partnership making Paramount the exclusive home of UFC Numbered Event main cards in Canada ...
08/06/2026
The Qatar Football Association (QFA), in cooperation with Sponix and broadcaster...
08/06/2026
Project B has announced the appointment of Host Broadcast Services (HBS) as Offi...
08/06/2026
The Buckeyes now produce and stream upwards of 200 sports events annually with a...
08/06/2026
At Spotify, our commitment to the LGBTQIA community is year-round. Through GLOW, our global music program, we celebrate and amplify the contributions of queer ...
08/06/2026
Get Hands-on With Keyboard & Synth Brands
GearExpo UK wouldn't be complete without some synth action, and we've got some of the industry's most ...
08/06/2026
50 popular in-ear monitoring system profiles added
The latest update for IK Multimedia's headphone-correction system has just arrived, and introduces ca...
08/06/2026
Manny Marroquin signature cans upgraded with SLAM Technology
The flagship model in Audeze's Manny Marroquin Signature Series has just been treated to an...
08/06/2026
Air domain supremacy redefined - New counter UAS, space solutions and directiona...
08/06/2026
he BBC and BritBox have announced that Edward Bluemel (We Might Regret This, My ...
08/06/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
08/06/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
08/06/2026
Dante interfaces, intercom and control systems for modern AV environments
Glensound will showcase a focused range of networked audio and intercom solutions fo...
08/06/2026
Bminty is proud to celebrate the first anniversary of T18, the new free national French DTT channel launched on June 6, 2025. This symbolic milestone also marks...
08/06/2026
DaVinci Resolve Used For Global Collaboration on Tony Foster Documentary
Brie Clayton June 8, 2026
0 Comments
DaVinci Resolve Studio and Blackmagic Cl...
08/06/2026
Share
Copy link
Facebook
X
Linkedin
Bluesky
Email...
08/06/2026
Plus, 20% off TVs ahead of kick-offMonday 8 June 2026
Sky introduces Real Time...
08/06/2026
FOX Secures Live NFL Game Package in Mexico Starting in Fall 2026 Agreement Features Thursday Night Football, Sunday Games Package, Thanksgiving Day Games, al...
08/06/2026
FOX One, FOX Sports and Indeed Name Austin Franklin and Kevin Akoto as FOX One C...
08/06/2026
Meet us on the show floor
Stand #286310 Discover Nara, the media management tool used by major facilities including Harbor and Molinare.
Nara v2 introduces re...
08/06/2026
L'art de l'Image dans Reflet dans un diamant mort' Une conversation avec le directeur de la photographie Manuel Dacosse, SBC et l' talonneur Pe...
08/06/2026
Embracing today's modern media workflows: FilmLight presents Nara 2.0, with FilmLight API Designed to support the growing demands of today's production ...
08/06/2026
Moderated by Andy Minuth, FilmLight's Colour Workflow Specialist
Wednesday 18 February
6:00pm / Doors open
7:00pm / Presentation in German
8:00pm / Drin...
08/06/2026
Join us on April 14 at 10:00am for a technical roundtable with the Filmlight dev...
08/06/2026
You're invited to FLAPI Classroom The fundamentals of coding and machine-assisted development
These sessions will help you build the skills needed to cre...
08/06/2026
With Sylvain Canaux (St Louis, Paris) and J r me Cloutier (MELS, Montreal)
Wednesday 6 May
Pick your time: 1:00PM / 5:00PM
Note: The presentation will be hel...
08/06/2026
FilmLight, 1107 N El Centro Ave, Los Angeles
Doors open at 3:30pm
Join the FilmLight team on June 9th at 4pm to learn how FilmLight products and APIs can stre...
08/06/2026
The Creators List launched to Help Brands Connect With Top Creators In CannesThe curated directory launched by Tubefilter, Comscore, Whalar Group and Gospel Sta...
08/06/2026
Irish YouTube star DavidMC joins Aisling O'Reilly to tackle all things socce...
07/06/2026
Company introduce 21 new protective covers
Decksaver have just announced their Sping 2026 Drop, which sees a total of 21 new models added to their ever-grow...
07/06/2026
How to Recreate the Star Trek TNG jump to warp in After Effects
Graham Quince June 7, 2026
0 Comments
In 1987, John Knoll at ILM had to use labor-inte...
07/06/2026
Filming Coffee Communities with Blackmagic PYXIS
Brie Clayton June 7, 2026
0 Comments
Remote travel, fast setups and hard sun shaped this documentary ...
07/06/2026
NVIDIA and Doosan Group are expanding their collaboration to advance new opportu...