Quantcast
Channel: Xibo Blog
Viewing all 475 articles
Browse latest View live

Xibo for Windows v3 R300

$
0
0
Xibo for Windows v3 R300

We are pleased to announce the release of Xibo for Windows v3 R300, which comes along with our Xibo v3 CMS release.

This release works with Xibo CMS version 3 and has legacy mode for version 1.8 and version 2.x.

We have added v3 compability and addressed 6 issues in this release:

  • Interactivity: Touch Actions
  • Interactivity: Webhook Actions
  • Interactivity: Set Duration and Extend duration hooks
  • Updated to the new Microsoft WebView2 Edge browser engine (when in Edge mode)
  • Shell command improvements
  • HTTP commands

Download Xibo for Windows v3 R300.

Xibo v3 - code name “Finlay”, has launched! Check out our release announcement and our What’s New in Xibo v3 blogs for more details about the updated features.

Upgrading

This Player requires Windows 10.

Instructions for upgrading from an earlier release can be found in the Administrator Documentation.

If you have a white label build of the application, the upgrade is available in your Xibo customer portal account.

Change Log


Release Notes for Xibo 3.0.0

$
0
0
Release Notes for Xibo 3.0.0

Xibo v3 - code name “Finlay”, has launched! Check out our release announcement and our What’s New in Xibo v3 blogs for more details about the updated features.

Below you will find all the release notes and download links for this latest and greatest version of the Xibo CMS.

15P/Finlay is a periodic comet with an orbital period of 6.51a (Julian years). William Henry Finlay (Royal Observatory, Cape of Good Hope, South Africa) discovered the comet on September 26, 1886. It's last closest approach to the sun was in December 2014 and is on it's way back in July 2021.

Download

Please use the links below to download this release:

We have new v3 Android and Windows players available with this release, with the other players functioning in a backwards compatible mode.

The minimum version of Xibo for webOS that will function with a v3 CMS is v2 R206. The minimum version of Xibo for Tizen that will function with a v3 CMS is v2 R202.

At the time of writing these are the latest players:

v2 players will connect to a v3 CMS, but please be aware that v3 features will not be supported.

1.8 players will also function but please be aware that v2/v3 features will not be supported.

We recommend using player software of the same version as your CMS.

Whats new in Xibo version v3?

In our Whats new in Xibo version 3 article you can find a summary of all the things we've added and changed.

If you'd rather read the announcements we've made at each stage, you can do so in the following release blogs:

This release can run on MySQL 5.7.

Xibo in the Cloud

This release is available on Xibo in the Cloud!

Changelog

Also included are any fixes in the upcoming 2.3.11 release.

Future development

We have already started working on our 3.1 release, which builds on the improvements we've made in 3.0!

We would like to thank everyone involved in testing this release and everyone who contributed ideas.

Announcing Xibo v3

$
0
0
Announcing Xibo v3

We are excited to announce that Xibo v3 (code named “Finlay”) has been released!

For two years, the Xibo development team have been building the latest and greatest version of our digital signage content management system. As business priorities across the world have shifted with the continuing pandemic, Xibo has responded by providing a revitalised content management system with features focused on the safety of employees and customers as well as the requirement for enhanced user experience.

Xibo v3 has an astounding 7 new features, focused directly on meeting customer needs.

Interactivity - We’ve taken interactivity to the next level by introducing two elements to our interactive component: touch and web hooks. Thus meeting the growing demand for safer interaction with Touchless Interactivity.

Folders - Organise and share your content with ease with our new Folders addition

Features - Control exactly what users and user groups can see and do within Xibo with by enabling or disabling features, or streamline onboarding by using one of our preconfigured user groups.

Widgets - Two new widgets have been added to the suite; a World Clock and Weather Tiles. Supported Players have also been embedded with a new smoother scrolling marquee for Text/Ticker widgets.

Commands - We've overhauled commands to make them easier to configure and more powerful.

Reports - A new report centre has been developed to pull all reports into one place so that they are easy to find and run.

Web Portal - The CMS web portal has been updated with the latest libraries and frameworks keeping Xibo at the cutting edge of modern security best practices and design trends.

You can learn more about each of the features in our What’s New in Xibo v3 blog.

We also have new v3 Android and Windows players available with this release.

To download the latest version of Xibo and the players, please see the Xibo v3 Release Notes.

“Xibo v3 is our response to the growing need for more interactive digital signage experiences. With support for both touch and touchless interactions, Xibo v3 provides the foundational tools needed to deliver successful interactive digital signage.”

~ Dan Garner, co-Founder and Engineering Director at Xibo Signage

Intelligent Media Enhances the Patient Experience with Xibo Signage

$
0
0
Intelligent Media Enhances the Patient Experience with Xibo Signage

Intelligent Media is an end-to-end digital signage solutions provider based in Greece. Founded in 2005, Intelligent Media develops and supports digital signage projects of every size across Healthcare, Leisure Shipping and Retail sectors.

Intelligent Media’s journey within the Greek Healthcare sector started 16 years ago. They partnered with one of the country’s leading maternity clinics to develop a  dynamic way of communicating with, and advertising to, new and prospective parents.

Today, Intelligent Media is the leading Healthcare digital signage provider in Greece, currently serving over 450 clients in various clinics, hospitals, diagnostic outpatient facilities and private practices.

All running Xibo Signage!

The Challenge

Georgios Tsintzilonis, Managing Director of Intelligent Media tells us that before they discovered Xibo Signage, Intelligent Media faced four challenges in their Digital Signage business:

Versatility | Cost | Adaptability | Reliability

Intelligent Media’s original signage solution was outdated and lacked the versatility that would be required for the expansion of the business.

They tried an alternative digital signage software solution, but it was costly, both in terms of the license itself, as well as in terms of proprietary equipment that was necessary to run it. The solution also struggled to adapt to the rapid growth of the Intelligent Media’s customer base, which expanded across a multitude of locations.

With the growing customer base, came increasingly complex content requirements and a critical need for reliability, due to the advertising displayed on the network.

Intelligent Media needed to find a new digital signage solution to take on the challenges.

The Solution

Intelligent Media operates a 750 display, self-hosted Xibo network across the Greek Healthcare sector, with the majority of their digital displays running on Xibo for Android.

Their Healthcare network has two main purposes, communications and advertising.

Digital signage provides healthcare operators with a dynamic medium that allows them to communicate with and educate both their visitors and staff.

Digital signage content also includes advertising which primarily consist of specially designed 20 second advertisements or content with longer duration created for patient awareness purposes.

Intelligent Media successfully converted many pre-existing television screens , used in waiting rooms to display public TV channels for visitors, into fully functional digital displays. This was achieved using Xibo for Android and the appropriate Android player hardware.

Intelligent Media also uses Xibo for webOS and Xibo for Tizen in scenarios where more advanced signage is required such as waiting room queuing, staff shifts and operating theatre schedules. Recently, Intelligent Media has started using Xibo’s interactive capabilities in conjunction with LG and Samsung touch monitors.

“Xibo is a toolbox that can help you generate business and revenue. ” ~Georgios Tsintzilonis

The Benefits

For Intelligent Media, reliability is the primary requirement for their Digital Signage solution.

Georgios tells us that it is essential to deliver their clients’ content in the right place, to the right audience, at the right time, all the time!

Advertising and communications content differs greatly across the various Healthcare providers that Intelligent Media works with. An expectant mother waiting anxiously for a scan in a maternity clinic would require different content compared to that served in a general hospital, for example.

Xibo provides Intelligent Media with the ability to display targeted advertising and the results of this fine tuned targeting speak for themselves!

Intelligent Media regularly conducts viewer surveys across their display locations. In a 2019 survey conducted in one of their maternity clinics, 83% of those who viewed the screen agreed that the digital signage made waiting times less stressful.

Why Xibo

Intelligent Media chose Xibo as their Digital Signage partner for the following reasons.

  • Open Source
  • Cost Effective
  • Versatile
  • API Integrations
  • Advertising Revenue

Intelligent Media Enhances the Patient Experience with Xibo Signage
Download the Intelligent Media case study here
Intelligent Media Enhances the Patient Experience with Xibo Signage

Creating Interactive Actions in Xibo v3

$
0
0
Creating Interactive Actions in Xibo v3

Welcome to the start of our Xibo v3 quick wins blog series. Over the coming weeks we’ll provide you with tips on how to best utilize some of the exciting new features within the Xibo v3 CMS.

This blog highlights the creation of Interactive Actions in Xibo v3.


With the introduction to Interactivity, Actions can be created and attached to an entire Layout, a particular Region or Widget to effect changes to a Layout.

'Interactive Actions' are created and managed by using the Actions tab on Edit forms in the Layout Designer.

Creating Interactive Actions in Xibo v3

Click the Add Action button and select to "trigger" by Touch/Click or by Web hook...

Creating Interactive Actions in Xibo v3

...choose an Action Type to determine what will happen when triggered.

Creating Interactive Actions in Xibo v3

Complete the required fields from the selections made and Save

The created Action will now show and can be managed from the Row Menu!

Creating Interactive Actions in Xibo v3

Take a look at our Interactive Actions manual page for more details!

Coming up... "Interactive Actions - Using Web hooks"


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo v3 Release Notes blog to download it now.

Interactive Actions - Using Web Hooks

$
0
0
Interactive Actions - Using Web Hooks

This is the second spotlight post of our Xibo v3 quick wins series. In our last blog we highlighted how to create Interactive Actions in Xibo v3. In this blog we showcase using Web Hooks in the Xibo v3 CMS.


Web hooks are an incredibly useful and increasingly popular way for devices to react to and exchange data with each other.

Web hooks can be selected as a Trigger Type when creating Interactive Actions and require a Trigger Code to be entered, to start the Action...

Interactive Actions - Using Web Hooks

...which can be called by another device when the Layout and Action are playing.

The other device needs to make a HTTP post request to the Player it wants to trigger.
While you are developing and testing, web hooks can be sent in any of the following ways:

  1. From the CMS using the Trigger a web hook Row Menu option for a selected Display.

Interactive Actions - Using Web Hooks

  1. Using Postman or Powershell (you can make an HTTP request using any of your favourite tools)

Each method requires the Trigger Code to be entered exactly as created for the Action.

For a complete walkthrough of the desired workflow take a look at our Using Webhooks to trigger a Layout Guide!

Coming up... "Interactive Actions - Navigate to Layout"


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo v3 Release Notes blog to download it now.

2.3.11 Released

$
0
0
2.3.11 Released

We are pleased to announce our 11th patch for the 2.3 version of Xibo. The codename for this version is “Wolf”.

14P/Wolf is a periodic comet with an orbital period of 8.74a (Julian years). Max Wolf (Heidelberg, Germany) discovered the comet on September 17, 1884. It is particularly interesting as its perihelion and orbital period change due to the influcence of Jupiter.

This release fixes 22 issues.

Download

Please use the links below to download this release:

You may use any v2 compatible Player with this release. At the time of writing these are the latest:

1.8 series Players will function but please be aware that new v2 features will not be supported.

If you have Xibo for Android v3, you can connect it to a v2 CMS and it will run in compatiblity mode.

Changelog

Future development

We are working to bring you CMS 3.1.0, Xibo for Windows v3 R301 and Xibo for Android v3 R301!

Did you know Xibo v3 has been released? Find out all about our latest version here.

Interactive Actions - Navigate to Layout

$
0
0
Interactive Actions - Navigate to Layout

This is part 3 of our Xibo v3 quick wins series. In our last blog we showcased Web Hooks in the Xibo v3 CMS. This blog highlights navigating to a layout when using interactive actions.


Actions can be created so that on triggering, a selected Layout will be shown on Displays.

Create a Code Identifier when adding a new Layout...

Interactive Actions - Navigate to Layout

...or by editing an existing Layout.

Interactive Actions - Navigate to Layout

Enter the created code in the Layout Code field on the Add Action form.

Interactive Actions - Navigate to Layout

Further information on interactivity can be found on our Interactive Actions manual page!

Next up for Interactive Actions...Navigate to Widget!


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo v3 Release Notes blog to download it now.


3.0.1 Released

$
0
0
3.0.1 Released

We are pleased to announce our 1st patch for the 3.0 version of Xibo. The codename for this version is “Finlay”. Check out our release announcement and our What’s New in Xibo v3 blogs for more details about the updated features.

Below you will find all the release notes and download links for this latest and greatest version of the Xibo CMS.

15P/Finlay is a periodic comet with an orbital period of 6.51a (Julian years). William Henry Finlay (Royal Observatory, Cape of Good Hope, South Africa) discovered the comet on September 26, 1886. It's last closest approach to the sun was in December 2014 and is on it's way back in July 2021.

This release fixes 24 issues.

Download

Please use the links below to download this release:

We have new v3 Android and Windows players available, with the other players functioning in a backwards compatible mode.

The minimum version of Xibo for webOS that will function with a v3 CMS is v2 R206. The minimum version of Xibo for Tizen that will function with a v3 CMS is v2 R202.

At the time of writing these are the latest players:

v2 players will connect to a v3 CMS, but please be aware that new v3 features will not be supported.

1.8 players will also function but please be aware that v2/v3 features will not be supported.

We recommend using player software of the same version as your CMS.

On-premise licensing

If you use any of our commercial players (Android, webOS or Tizen) and have taken advantage of on-premise licensing, please update your on-premise licensing module at the same time as you upgrade your CMS.

The new module can be downloaded from My Products.

Changelog

Also included are any fixes in the recent 2.3.11 release.

Future development

We have already started working on our 3.1 release, which builds on the improvements we've made in 3.0!

We would like to thank everyone involved in testing this release and everyone who contributed ideas.

Interactive Actions - Navigate to Widget

$
0
0
Interactive Actions - Navigate to Widget

Our last blog touched on using Web Hooks with Interactive Actions as part of our Xibo v3 quick wins series. In part 4 of the series, we look at Navigating to Widgets.


Actions can be created so that on triggering, a selected Widget will be shown on the Layout.

First, Widgets to be used with Actions need to be added to the Layout using the Interactive Drawer from the Layout Designer:

Interactive Actions - Navigate to Widget

Click on a Widget that has been added to the drawer to open the Edit Options form to configure. Select a Region, to show the Widget in once triggered, using the dropdown menu.

Interactive Actions - Navigate to Widget

Now Add and Create the Action and select the Widget from the drop down menu

Interactive Actions - Navigate to Widget

Set Region as Target and you will see the Target Region populate with your selection!

Take a look at our Interactive Actions manual page to view all options available!

Coming next...an introduction to Folders in v3!


Have you upgraded to the latest version of the Xibo CMS yet? Take a look at the Xibo 3.0.1 Release Notes to download now.

Inside Xibo - XMR and Push Messaging

$
0
0
Inside Xibo - XMR and Push Messaging

Welcome to a new blog series by the Xibo Development Team! The "Inside Xibo" series will give users, system administrators and developers an insight into how Xibo works and the architecture decisions we take to make Xibo the best in class.

In this blog we will focus on XMR and Push Messaging.


What is XMR?

XMR was introduced in Xibo 1.8. Put simply XMR is a push messaging component and before XMR became part of Xibo, we relied entirely on the Player periodically connecting to ask for updates, or in other words pull messaging.

Looking back on the history of Xibo, pull messaging served us well, and we still make use of it today with our routine collection interval, so why the change? The evolution of this change followed a few simple steps:

  • Users expect to see the results of their actions straight away, waiting a minute is acceptable, waiting 30 minutes is not.
  • To achieve this, systems administrators were under pressure to reduce the “collection interval” for a display to 1 minute or lower. (The collection interval is the period of time a display waits between connections to the CMS, it could also be called a polling interval.)
  • Xibo became more popular resulting in more and larger on premise installations (100+ displays) and many more Xibo in the Cloud customers.
  • New and more powerful features mean the CMS and the display exchanged larger quantities of data with each collection interval.

A perfect storm was brewing, more frequent requests for data, more data and more displays connected all lead to scalability concerns. The root of the problem is that it was likely a display connecting to the CMS and any given moment would be “wasted” because no changes had occurred at the CMS. These wasted connections far outweighed the ones where changes were available - this had to be improved.

Push Messaging

An obvious solution to this growing problem is push messaging, if the CMS can contact a display and tell it that there are changes waiting for it, then it can increase the time between its regular connections dramatically. We called our push messaging component Xibo Message Relay, XMR for short, and developed it as a standalone component to sit alongside the main CMS.

When users make changes via the web portal or API, Xibo determines which Displays are affected by those changes and then tells XMR to let the Player know. The Player receives the message and initiates a collection from the CMS.

Since introducing XMR on Xibo in the Cloud we’re seeing an average collection time of 30 minutes, up from between 1 and 5 minutes pre-XMR.

What else can it do?

So XMR solved our scalability problem for routine CMS/display communication, but is there anything else it's useful for? Yes absolutely. It turns out that there are all sorts of things you might want the display to do “right now” which were impossible to do before. These range from requesting a screenshot, running a command, and even switching immediately to a layout.

Security

All the while the display is responsible for connecting to the CMS and pulling data, you can secure the CMS API with TLS and have a high level of confidence that the display will only do what the CMS tells it to do. Building capability into the display to receive data from an external source and then take action opens a new attack surface that must be properly managed. For XMR we have taken two approaches, one technical and one a design principle.

Each display generates a RSA public/private key on first start, and sends the public key to the CMS. This public key is then used to seal every message sent to the display, who can then verify the seal is valid before processing the message. This is not encryption and we’re not trying to protect the contents of the message.

We don’t need to encrypt the contents of the message, because our design principle for messages states that the message can only contain an instruction and never any data. For example, the message might say “collectNow” to trigger the player to pull new data from the CMS.

Messages also contain a timeout, which gets sealed along with the rest of the message, thus preventing replay attacks.

Under the hood

We had a few key requirements when searching for a solution:

  • Good libraries for PHP, Java (Android), C#, node and C++
  • Simple to install in the CMS environment (platform dependencies for non-Docker users)
  • Support for at least 2 messaging patterns - Request/Response and Publish/Subscribe
  • TCP sockets
  • Longevity
  • Open Source

We looked at various technologies for this and decided that a message queue framework or messaging library made the most sense. There are some great resources describing what a message queue is - simply put they allow two applications to exchanges messages with each other. Out of the two messaging patterns we identified, the Publish/Subscribe pattern is key as it is designed for one to many communication. In our case the CMS is the "one" and the displays are the "many".

When looking for messaging libraries, while there are a few great options to choose from,  we chose ZeroMQ, which we felt would fit nicely with the rest of the Xibo ecosystem. ZeroMQ is a flexible, open source universal messaging library. It has built-in support for both messaging patterns we want to use, and libraries for all the languages we need.

XMR itself is a separate CLI component written using ReactPHP, which sits alongside the CMS on the server. It is CMS agnostic which means one XMR installation can serve multiple CMS instances. XMR binds two ports, one for a Request/Response queue used by the CMS and the other for a Publish/Subscribe queue for the displays.

ReactPHP is super fast and we’re very pleased with its performance and reliability. It was tempting to use a different language more naturally suited to this sort of activity, however on balance making it easier for our users to install the XMR component is of greater importance for the majority. Our initial thinking was that we could write another XMR component for larger installations which required higher performance, however this has not been necessary. Xibo in the Cloud routinely processes between 2 and 3 XMR messages a second on average - that is 240,000 per day!

If a request via the web portal, API or XTR (task runner) is determined to effect a display, the CMS creates a message for that display, seals it with the displays public key, envelopes it with some quality control data, and sends that message to XMR using a the Request/Response message queue. XMR then determines the message's priority, destination, and then sends it via the Publish/Subscribe queue to be received by the display, unsealed and actioned accordingly.

What's next for ZeroMQ?

Xibo has been using ZeroMQ in production for several years and we’re very happy with its performance. Adding push messaging to the platform has brought about fantastic user interface improvements, as well as scalability improvements for Xibo’s APIs.

We’re excited to keep ZeroMQ as a core technology and as we move forward with our minor releases for Xibo v3 we have some great use cases for it. In Xibo 3.1 we are planning to add synced playback to Xibo’s feature set, which we’re calling Mirror Sync. All types of display in our suite have ZeroMQ onboard which makes it a natural choice for forming a peer-to-peer message queue amongst players, which will then be used to exchange synchronisation messages for Mirror Sync.

Further reading:

Introducing Folders in Xibo v3

$
0
0
Introducing Folders in Xibo v3

Our last blog touched on Navigating to Widgets as part of our Xibo v3 quick wins series. In part 5 of the series, we look at Introducing Folders in Xibo v3.


Folders are a brand new feature designed to give easier control over the access and organisation of all Library Media as well as Layouts, Campaigns,Templates,Displays and Display Groups!

Shown in Grids, Folders can be created with a simple right click.

Introducing Folders in Xibo v3

Give your Folder a name and right click to set Share options for Users/User Groups...

Introducing Folders in Xibo v3

...to View/Edit/Delete all objects placed in the Folder.

Introducing Folders in Xibo v3

With Share options set, everything added to that Folder will inherit the set options making it even easier to enable access to Users for multiple objects in just a few clicks.

Introducing Folders in Xibo v3

Check out the Folders Administration page for further information!

Up next...a look at using Folder searches in grids!


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo CMS 3.0.1 Release Notes blog to download it now.

Xibo for Windows v2 R258

$
0
0
Xibo for Windows v2 R258

We are pleased to announce the release of Xibo for Windows v2 R258, which is a bug fix release solving 5 issues.

This release works with Xibo CMS version 2 and has legacy mode for version 1.8.

Download Xibo for Windows v2 R258.

See the change log below for a full list.

Upgrading

Please Note: Players starting from v2 R252 (released 19th March 2020) use a new architecture and their capabilities may not be identical to earlier v2 Players. We recommend testing the Player with your content on one device before commiting to v2 R252 or later.

This Player requires Windows 10.

Instructions for upgrading from an earlier release can be found in the Administrator Documentation.

If you have a white label build of the application, the upgrade is available in your Xibo customer portal account.

Change Log

Folder Search in Xibo v3

$
0
0
Folder Search in Xibo v3

New week, new Quick Win! Our last blog touched on Introducing Folders in Xibo v3 as part of our Xibo v3 quick wins series. In part 6 of the series, we look at Folder Search.


Folders allow you to easily find items throughout the CMS. Narrow down your searches in Grids by looking in a particular Folder and using filter criteria...

Folder Search in Xibo v3

...or use All Folders to search everywhere,

Folder Search in Xibo v3

With Folders hidden from view, the selected folder file path will always be shown...

Folder Search in Xibo v3

...so you always know where you are!

Move objects into Folders using the Select Folder option from the Row Menu, or move multiples at once...

Folder Search in Xibo v3

...using the With Selected option at the bottom of the grid!

Up next...a look at two new Widgets for v3!


Not upgraded to the latest version of the Xibo v3 CMS yet? Visit our Xibo CMS 3.0.1 Release Notes blog to download it now.

Xibo for Android v2 R216 Available

$
0
0
Xibo for Android v2 R216 Available

Xibo Signage are pleased to announce Xibo for Android v2 R216. This release works with Xibo CMS version 2.x and has legacy mode for versions 1.4, 1.6, 1.7 and 1.8.

We have addressed 4 issues in this release:

  • Added an improved HDMI-CEC command for the DSCS9 to turn the monitor on and off
  • Fix an issue with rate limiting from XMDS causing the player to go offline
  • Fix issue with schedule accuracy
  • Fix issue with videos looping when they are the shortest item in a playlist

Download

Download Xibo for Android v2 R216.

Download Xibo for Android v2 R216 for DSDevices J18 and J19.

Install / Upgrade

Installation instructions can be found here.

Instructions for upgrading from an earlier release can be found here.

If you have a white label build of the application, the upgrade is available in your account.


Xibo for Windows v3 R301

$
0
0
Xibo for Windows v3 R301

We are pleased to announce the release of Xibo for Windows v3 R301, which is a bug fix release solving 3 issues, and includes the items addressed in our recent v2 R258 release.

This release works with Xibo CMS version 3 and has legacy mode for version 1.8 and version 2.x.

We have solved 3 issues in this release.

Download Xibo for Windows v3 R301.

Xibo v3 - code name “Finlay”, has launched! Check out our release announcement and our What’s New in Xibo v3 blogs for more details about the updated features.

Upgrading

This Player requires Windows 10.

Instructions for upgrading from an earlier release can be found in the Administrator Documentation.

If you have a white label build of the application, the upgrade is available in your Xibo customer portal account.

Change Log

Inside Xibo - Front end framework

$
0
0
Inside Xibo - Front end framework

Last week, in the "Inside Xibo" Series, we looked in detail at XMR and Push Messaging. In part 2 of the series, we will look at Front End Frameworks.


React, Vue, Angular, Ember, another day another front end framework…But what does Xibo use for our Content Management System (CMS) and why? Before we answer this, let's take a step back.

Some background

First of all, this topic is highly opinionated! Ask 10 developers about frameworks, SPAs, MPAs or native and you’ll get 10 different opinions. At Xibo we don’t use any of the most popular front end frameworks, and depending on where you draw the line, we don’t use a framework at all.

The benefits of adopting a front end framework are extensive and compelling, however adopting one does have to be weighed against the current state of both the software and the core team that maintains it, and that is what we’ve based our decision on at Xibo.

Xibo is a multi page application rather than a single page application. There are plenty of resources to find out what that means and I'll link a few below. We use jQuery, Bootstrap and a number of plugins for both. There is some debate over whether either of these are frameworks and the general consensus is that they aren’t, although Bootstrap says they are a framework, and jQuery says that they are a library. My view is that jQuery is a library, Bootstrap is a presentation framework and therefore Xibo does not use a front end framework in the sense that most front end developers would recognise.

What does Xibo use?

Xibo has a basic set of common functions contained within xibo-cms.js which are reused across each page and function. This is by no means a framework, but there are functions used throughout the user interface to initialise the dynamic parts of pages, and this allows us to have some consistency with a very light touch. Each page itself can include JavaScript and we make extensive use of jQuery’s $(document).ready(); to do something when the DOM is ready. Being multi page the back end web entry-point handles routing and rendering HTML to output via Twig, and we have some macros in Twig which define components and ensure those are output in a consistent way.

A good example is a date/time picker - in Xibo we use a Twig macro to output consistent HTML each time we want a picker, including a defined class name. On page load, or on form load we call XiboInitialise from inside xibo-cms.js, which looks for picker classes and uses a bootstrap plugin to render the picker. We do this for all sorts of form fields, forms themselves, dialogs, etc. This is a “light touch” way of having a very simple framework for our small team of developers.

Furthermore, we use webpack to build some of our JavaScript into a bundle, and have aspirations to build all of our JavaScript in this way in the future, but currently some page specific JavaScript is rendered into HTML by the server from Twig. The Layout and Playlist editors are predominantly ES6 native JavaScript.

Xibo Players can all embed a web browser, and most of our JavaScript on the player is native, although we sparingly use jQuery here too. The web engine included in player hardware is usually old, so we can’t make use of most of the new language features yet.

So, why no front end framework?

We have certainly explored switching to a front end framework, but there are two key reasons we haven’t done so yet:

  • Xibo predates the front end framework concept by a number of years and we have a lot of user interfaces to replace. It would be an extensive project to re-implement using a framework and the benefits of doing so haven’t been as great as implementing other features.
  • At the time of writing we have a team of 4 full time developers - 2x back end, 1x front end and 1x full stack. Our excellent front end developer specialises in native JavaScript. Taking on a front end framework would mean retraining for the team.

Of course there are many other considerations, some of which are worth mentioning:

  • Front end frameworks on the player are not practical or necessary, so we will always be dealing with native JavaScript
  • The Layout and Playlist editors are sufficiently unique to require native JavaScript even if the rest of the user interface used a front end framework

If you’re thinking how this might not work with a larger engineering department, with more developers and more independent teams, then I’d wholeheartedly agree… but we aren’t there… yet!

Have you found a place for any frameworks?

Yes, we have!

Xibo Adspace is the newest product in our suite and has a front end written in Vue.js. Various factors fed into this decision, but the key considerations were:

  • We were designing from scratch so had a clean slate to work with
  • We are lucky enough to have a dedicated front end developer on the team with extensive experience in both Vue, React and Angular
  • Adspace is a central service covering a global audience, so client side performance and responsiveness is a much higher priority

We rolled this decision out into the public facing website too, so the Xibo Adspace website is written in a Jamstack framework called Gridsome.

A future “Inside Xibo Adspace” series will look at this and also our decision to use Kubernetes and micro services for Adspace.

Into the future?

It is hard to imagine a future where we decide to replace the CMS user interface with something completely new, but if we did, it would likely make use of a front end framework at that point.

Topics discussed in this article:


Inside Xibo is a series of articles written by the Xibo Development team to give users, system administrators and developers an insight into how Xibo works and the architecture decisions we take to make Xibo the best in class. We welcome your comments below!

Weather Tiles - New Widget for Xibo v3

$
0
0
Weather Tiles - New Widget for Xibo v3

We hope you are enjoying this Quick Wins for Xibo v3 blog series. If you missed the last blog, we touched on Folder Search in Xibo v3. In part 7 of the series, we look at Weather Tiles, which is a new widget for Xibo v3.


Utilise the new Weather Tiles widget to not only easily display a forecast using a selection of preset Templates...

Weather Tiles - New Widget for Xibo v3

...it also allows you to include your own images uploaded to the library...

Weather Tiles - New Widget for Xibo v3

...to replace the default weather backgrounds.

Weather Tiles - New Widget for Xibo v3

Take a look at the Weather Tiles manual page to start using it in your Layouts today!

Coming next...World Clock Widget!


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo v3.0.1 Release Notes blog to download it now.

3.0.2 Released

$
0
0
3.0.2 Released

We are pleased to announce our 2nd patch for the 3.0 version of Xibo. The codename for this version is “Finlay”. Check out our release announcement and our What’s New in Xibo v3 blogs for more details about the updated features.

Below you will find all the release notes and download links for this latest and greatest version of the Xibo CMS.

15P/Finlay is a periodic comet with an orbital period of 6.51a (Julian years). William Henry Finlay (Royal Observatory, Cape of Good Hope, South Africa) discovered the comet on September 26, 1886. It's last closest approach to the sun was in December 2014 and is on it's way back in July 2021.

This release fixes 15 issues.

Download

Please use the links below to download this release:

We have new v3 Android and Windows players available, with the other players functioning in a backwards compatible mode.

The minimum version of Xibo for webOS that will function with a v3 CMS is v2 R206. The minimum version of Xibo for Tizen that will function with a v3 CMS is v2 R202.

At the time of writing these are the latest players:

v2 players will connect to a v3 CMS, but please be aware that new v3 features will not be supported.

1.8 players will also function but please be aware that v2/v3 features will not be supported.

We recommend using player software of the same version as your CMS.

On-premise licensing

If you use any of our commercial players (Android, webOS or Tizen) and have taken advantage of on-premise licensing, please update your on-premise licensing module at the same time as you upgrade your CMS.

The new module can be downloaded from My Products.

Changelog

Also included are any fixes in the upcoming 2.3.12 release.

Future development

We have already started working on our 3.1 release, which builds on the improvements we've made in 3.0!

We would like to thank everyone involved in testing this release and everyone who contributed ideas.

World Clock - New Widget for Xibo v3!

$
0
0
World Clock - New Widget for Xibo v3!

Time for another Xibo v3 Quick Win! If you missed the last blog, we touched on the Weather Tiles widget. In part 8 of the series, we look at World Clock, which is another new widget for Xibo v3.


Show multiple timezones in a Digital or Analogue clock type on Layouts!

World Clock - New Widget for Xibo v3!

Select Timezones, provide Labels and set how many Columns and Rows are required.

Choose a Preset Template for Digital Clock Types...

World Clock - New Widget for Xibo v3!

...and provide Analogue Settings for Analogue Clock Types...

World Clock - New Widget for Xibo v3!

...giving you full control as to how the analogue clock is presented.

More details can be found on the World Clock manual page!

Next up...capture a video thumbnail to use in the CMS in v3!


Not upgraded to the latest version of the Xibo CMS yet? Visit our Xibo v3.0.2 Release Notes blog to download it now.

Viewing all 475 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>