Você está na página 1de 15

Digital Signage content

broadcasting through the


cloud with Windows Azure
Web Signage by Edisonweb srl
Vittorio Polizzi – Mario Fontana

2010
Index
The product ....................................................................................................................................................... 2
Roles and processes ...................................................................................................................................... 2
First considerations ....................................................................................................................................... 3
Single management console, simple, powerful, complete ........................................................................... 3
CAPEX limitation ........................................................................................................................................ 3
Simplified integration with third party systems ........................................................................................ 4
Basic architectural choices ................................................................................................................................ 5
Service achitecture ........................................................................................................................................ 5
Technologies employed ................................................................................................................................. 6
The player ...................................................................................................................................................... 7
Critical points and project choices ................................................................................................................ 8
The management console ................................................................................................................................. 8
The migration to Windows Azure .................................................................................................................. 9
Simplify interoperability: Open Communication Interface ......................................................................... 10
A real life deployement scenario ..................................................................................................................... 12
Investment and operating costs ...................................................................................................................... 13
Conclusions ...................................................................................................................................................... 14
The product
The Web Signage platform consists of an integrated set of services, solutions and tools for the creation,
management and delivery of multimedia content to remote audio/video devices and mobile appliances, for
both promotional and informational purposes. The platform is simple, complete, flexible and open to
development and integration within different environments and markets.

The main components of the platform are the following:

Web Signage Server, a 100% web-based software provided as a Service (SaaS) for an easy and effective
production of multimedia content, schedule planning, content delivery to remote displays and devices,
monitoring and statistical analysis.

Web Signage Player, a software that runs on any computer connected to a display, enabling the execution
of scheduled playlists and delivery of targeted and synchronized contents to mobile devices (cell phones,
PDA, etc.) via Bluetooth.

Web Signage Communication Service, open interfaces available through a set of WS-* standard conform
services, that enable the creation of new business solutions and the integration with third party systems for
the optimal management of advertising campaigns.

Roles and processes

On-line data and contents


Planning of schedules and

Planning of ad campaigns
Configuration, contents

and raw data extraction


advertising campaigns
Content management
Operating conditions

and configuration
and schedules

Proof of play

Monitoring

Network Content Campaign Third party


management creators management applications
Images, animations,
texts and videos
Images and texts

Bluetooth devices Digital signage display

The operators access to the platform with a self-modelling web interfaces based on the operative role, can
supervise the network, create and import content (even by integrating information from the web and
online systems) and plan advertising campaigns.

For every client where Web Signage Player is executed, playlists are generated by all the programmes and
campaigns. The player, after synchronizing the content cache, delivers the content to the connected
displays and, if needed, also ad hoc messages to Bluetooth devices close to the display. At regular intervals,
the player contacts the management platform reporting the operating conditions (temperature, CPU load,
memory usage, bandwidth usage) and the list of the executed content (proof of play).

These information are utilized by the network supervisor to assess any issues, initiate preventive
maintenance and document everything for the advertisers.

Finally, thanks to the utilization of standard interfaces, third party systems can access to the system and
manage content and advertising campaigns automatically. The same interfaces can be used to extract data
and complete reports for external business intelligence systems.

First considerations
Realizing a successful product means satisfying the needs of the target market.

Web Signage was conceived after a careful analysis of

 the specific needs of the digital signage environment and proximity marketing
 unsatisfied requests and needs
 the formulation of new and most effective ways to satisfy the known needs

Single management console, simple, powerful, complete


Among the potential users of Web Signage there are several professionals with very different skills:

 the creative designer, responsible for the planning of communication campaigns


 the editor, responsible for content editing and production
 the scheduler, responsible for content planning and composition
 the publisher, who approves the schedules and initializes the content broadcasting

The figures involved make up the chain of content production:

Create Produce Manage Broadcast Display

The products available on the market have the following limitations:

• require competencies that exceed the skill set of an average user (scripting languages)
• functionality splitting across multiple software and lack of an unified approach to communication
• limited functionalities

Web Signage, as a tool for daily work, allows all the actors of the production chain to be immediately
productive without requiring the knowledge of techniques other than those already owned by a typical
operator. The web-based user interface has been designed to be simple and intuitive, and to provide a
desktop-like user experience.

CAPEX limitation
In the digital signage area, a large part of the expenses is represented by the purchase of management
servers, displays, PCs for content visualisation (players). The capital expenditure to deploy a new network
can be optimized by some evaluations:

 by using a software able to run on less powerful, therefore less expensive machines.
 managing the network with a service provided by a reliable vendor, eliminating the need of an own
infrastructure.

For those reasons, a particular care has been put in the resource usage optimisation of the Web Signage
Player, that can run effortlessly even on PCs with Atom CPU.

Furthermore, the choice to deliver the solution as a service has enabled Web Signage to take advantage of
the technologies provided by Windows Azure. In this way, besides the hardware cost reduction, it’s
possible to benefit from the usage of a reliable, performing and elastic delivery platform.

Simplified integration with third party systems


The activities connected to the commercial communication and proximity marketing are connected with a
wealth of processes that include planning, management and final report of an advertising campaign. For
example, the sales analysis have an influence on the definition of the advertising planning and the free
advertising slots that can be sold through an e-commerce portal.

To simplify the integration with third party systems, render communication and commercialisation
processes more direct and natural, it has been necessary to create a set of communication interfaces
conform to the most adopted standards. The answer to this need is Web Signage Open Communication
Interface (OCI)

Simple and effective management of multiple and transnational networks from a single
dashboard

For a company that operates in the digital signage market, it is quite common to have a network extended
over several regions or countries. The territorial diversity implies a differentiated content management, an
adequate and homogeneous performance level, even in the case of trans-national networks.

The hierarchic player management, grouped per location, group, service and area, allows to manage
visibility, user and content distribution criteria in a natural and intuitive way. With the usage of Windows
Azure Content Delivery Network, it is possible to distribute content in an efficient way, regardless from the
country where the players are installed.
Basic architectural choices

Service achitecture

Data store
(SQL Azure Database)

Content store Auth


Windows Azure Storage Service Windows Azure Compute Service Roles Service

Content Delivery
Player Communication Interface Open Communication Interface
Network

SOAP XML

Content synchronization Web based user


Configuration and reporting
(Windows BITS Service) interface

Watchdog
WCF

Content playback and


External devices management
layout management

Third party applications and solutions


(E-commerce,self care, ERP)

The Web Signage solution consists of two main components: Web Signage Server Platform and Web
Signage Player.

Web Signage Server Platform is a web application that provides the tools to control the display network,
create content and manage its distribution. The decision to provide a web-based environment, avoiding the
installation of a client software, makes each upgrade easier and immediate, providing customers with the
freedom to manage the network and the content from any computer. In order to achieve maximum
usability and ensure a desktop-like user experience, the ASP.NET AJAX Extensions 3.5 of .NET Framework
3.5 have been used extensively.

The role-based user access control is achieved by using Web Automation, an application framework
developed by Edisonweb and applied to all projects that use .NET technology. This framework, originally
developed with .NET Framework version 1.1 and evolved over time, represents the foundation of all
Edisonweb services and allows customizing and merging multiple solutions into a single user environment.
The authentication
User account architecture is similar to the
or smart card
one proposed by Windows
Communication Foundation
Authentication
service Authentication Service, not
Encrypted ticket
yet available when Web
Automation was developed.
Operator To access to the applications
Application (under which we understand
Ticket and
the functionalities within the
application parameters XML
Data
operating environment), it is
necessary to enter the user’s
credentials in the
Data set authentication service (Auth
Service), that validates them and returns an encrypted ticket. This delivers the key to access to the service.
In order to have an adequate security level, the ticket has a limited time validity and the interface requires
a reentry of the data during the usage. The user’s credentials are tied to one or more operating roles and a
hierarchic group (the service belongs to an area). The hierarchy allows to create a user domain with
permissions and sharing capabilities on single objects. In this way, a user creates an object (e.g. a clip), can
share it with other users by specifying the level of allowed action or giving ownership over it, enabling the
creation of workflows and the automation of organizational processes.

The Web Application is executed utilizing Web Roles on Windows Azure, that integrate the business logic
and the services (Player Communication Interface and Open Communication Interface). The Player
Communication Interface is the interface, created through the web services SOAP XML, that allows the
management and the configuration of the players and the synchronisation of the playlist. The Open
Communication Interface, realized through the WCF services, is a public interface that enables third party
applications to exchange data with the Web Signage platform, create content and operate on advertising
campaigns and playlists

Multimedia content, either uploaded or created with a guided procedure, is stored by the Windows Azure
storage service. Based on the information received through the Player Communication Interface, the
players synchronise the local playlist and then the local cache, by downloading the new content from the
storage service. This can be done directly or, in case of trans-national networks, through the content
delivery nodes.

The content’s metadata, the user’s credentials and the configurations are stored by utilizing a unique SQL
Azure database for each client. The Web Signage platform is, for commercial and security reasons, single
tenant. Every client has its own application instance and an isolated data and content repository.

Technologies employed
For the realisation of the Web Signage platform, following technologies by Microsoft have been employed:

 Open Communication Interface of Web Signage, that enables the integration with third party
systems, has been developed by utilizing Windows Communication Foundation (WCF) from the
.NET Framework 3.5 SP1
 the application is delivered by utilizing computing and storage services of Windows Azure; the data
and the configurations are stored on SQL Azure. This has allowed a higher competitivity, cost
efficiency, and thanks to the functionalities of the Content Delivery Network, has simplified the
expansion on international markets.
 the management environment is web-based and, to guarantee a high level of usability and a
desktop-like experience, the extensions ASP.NET AJAX 3.5 from .NET 3.5 Framework have been
widely utilized
 the view of the geographic position of the players, the location description, the research and
reverse geocode functions are delivered by Bing Maps
 the content transfer on the players is done by utilizing the Background Intelligent Transfer Service
(BITS) 4.0 from Windows 7. The players is also compatible with the previous versions of BITS,
present on Windows XP and Vista
 Web Signage Player has passed the Windows 7 Logo Program tests and utilizes the characteristics
of the Windows 7 32 and 64 bit operating systems at best.

The player

Content synchronization
Configuration and reporting
(Windows BITS Service)

Watchdog

Content playback and


External devices management
layout management

The main functionalities of the player are:

 execute the campaign’s content and the program schedule (images, text, animation and video) in
an optimal way, by adapting the screen space if necessary and broadcast via Bluetooth eventual
content associated with this channel. The video content is visualized within a graphic layout that
allows to couple images, text and video delivered from online sources (RSS), internal CMS or
external one (XML)
 provide the Flash content with an application support that allows to modify the execution
sequence, manage the layout objects visualisation, manage the storage of local information and
interact with the environment with serial interfaces, domotic devices (BUS EDS e OpenWebNet)
and with the Internet in general. This is finalized to the creation of interactive applications, from
simple to very sophisticate.
 report the proof of play and the operative conditions of the platform
 synchronize the content cache, downloading new content in a reliable way, utilizing few resources.

Critical points and project choices


During the development of the player, some aspects have been regarded particularly:

 service continuity
 reliable content cache synchronisation
 low resource usage

To guarantee the maximum service continuity, a watchdog that checks the player’s performance has been
implemented. The watchdog, simple and reliable, checks the heartbeat of the player’s process and in case
of issues, starts some operations to restore the optimal working status. In exceptional cases the machine
can be rebooted by the watchdog.

To guarantee the player’s functionality even in case of missing connectivity, a local content cache is
managed. This is kept synchronized with the downloaded playlist through the Player Communication
Interface.

The content can also be downloaded by the player from the CDN, based on the player’s configuration.

To execute the download in an absolute reliable way and limit the resource usage during the
communication process, the service Background Intelligent Transfer System (BITS), available with the
supported OS (Windows XP, Vista and 7 both 32 and 64 bit) has been implemented. BITS transfers the data
in background without interfering with other processes that are accessing to the net. In this way it is
possible to execute at the same time both download and streaming. Furthermore BITS can manage
eventual connectivity issues, by resuming partial downloads. The implementation of BITS, along with a
strongly optimized and multithreading visualisation code, has allowed to reduce the system requirements
to the minimum, allowing to reduce the investment on the player’s hardware.

The management console

Data store
(SQL Azure Database)

Content store Auth


Windows Azure Storage Service Windows Azure Compute Service Roles Service

Web based
user interface

Content Delivery
Player Communication Interface Open Communication Interface
Network

The management dashboard is accessible through the most common browsers that after the initial
authentication, allows the management of the players’ configuration and their operating status, as well as
the production and the content’s scheduling

To guarantee the best user experience the extensions ASP.NET AJAX 3.5 have been widely utilized.
Player Open
Presentation
Communication Communication
(Web forms)
Interface Interface
Player Open
Presentation
Communication Communication
(Web forms)
Interface Interface
Player Open
Presentation
Business logic Communication Communication
(Web forms)
Interface Interface
Business logic User
User database
database
Web Role
Business logic
Web Role

Web Role

Storage
Storage service
service

To guarantee maximum reliability, every application instance presents itself with a least a pair of Web Roles
that have a structure composed of three logical and separated layers: presentation, service (based on the
SOAP XML interface for the communication with the player and WCF services of the Open Communication
Interfaces) and business logic.

The presentation and service layer rely on the business logic to fulfil their functions. The business logic
implements all the processes in an isolated way and utilizes a single database on SQL Azure for the
metadata storage content, configuration and user’s credential. Multimedia content is stored within a series
of public containers (therefore accessible from the CDN) and from storage service.

The migration to Windows Azure


Thanks to the participation of Edisonweb to the Microsoft Partner Network as a Gold Certified Partner with
ISV competence, it was possible to test and study Windows Azure much earlier than its official release.

Cloud computing brings significant advantages to the activity of an ISV, especially for those working in very
vertical market segments. Therefore the decision to migrate Web Signage to the cloud was taken, retaining
the integrity of the project and the compatibility with installation on premises.

Web Signage has been completely developed by utilizing the .NET Framework, consequently the choice to
use Windows Azure has been absolutely natural and has guaranteed the possibility to migrate smoothly
and fast. Furthermore Windows Azure allows the reduction of infrastructure costs and enhances the offer
for foreign markets, with great advantages in terms of competitivity.

To those advantages, a further marketing opportunity has been stressed out: Web Signage would have
been the first digital solution in the world to be erogated utilizing the Windows Azure services.

The first step in the migration process has been the evaluation of potential incompatibilities of the T-SQL
code in use in the data store with SQL Azure. The analysis brought to the conclusion that, besides some
code chunks where the construct SELECT INTO and the column names in the form of schema.table.column,
the entire code would have been perfectly compatible with Windows Azure. After a first code revision, it
has been possible to start a first mixed application session, with the application on premises and the data
store on the cloud.
Web Signage has been designed to be able to work in a web farm with a battery of front end server with
load balancing. The application is stateless, therefore the shift from a series of physical servers to multiple
Web Role would not have any critical impact.

 remove some legacy code (DLL COM and interops)


 rewrite some code chunks utilizing GDI+
 implement some mechanism to utilize cloud storage

Web Signage is a project based on Web Automation, the role based framework developed by Edisonweb
for user account and auditing management able to enforce object manipulation and sharing policies.

Web Automation was developed with the .NET 1.1 Framework and at those times some unmanaged code
chunks have been utilizes (COM Interops). This code, maintained just to guarantee the backward
compatibility, requires the registration of COM libraries and therefore activities that require the
administrator profile on the server.

Therefore, instead of implementing some side-by-side activation mechanism of the library, considering that
the legacy code remains unused, it was preferred to remove the interop and substitute the components
that could be potentially utilized with managed code versions.

Code chucks that utilize the GDI+ image manipulation functions, when they are used on Windows Azure,
provoke the exception OutOfMemoryException. This issue has been noticed by many developers. Web
Signage handles multimedia file and to ensure maximum reliability, some specific functions have been
rewritten by using WPF code.

Web Signage distributes to the player multimedia content that are reproduced by the Web Signage Player.
In an on premises installation, the multimedia content is stored in a SAN connected to front end servers.
The migration to Windows Azure required the substitution of this shared storage with cloud storage.

All the file manipulation operations are done on every instance of the local storage, therefore it has been
necessary to implement some mechanism to guarantee the resilience of the service and the integrity of the
information, retaining at the same time the compatibility with the installation on premises. For this reason,
a class has been created to manage the operations on the content in a transparent way, regardless of the
installation typology.

Simplify interoperability: Open Communication Interface


As indicated in the initial considerations, the activities related to the commercial communication and to
proximity marketing are tied to analysis processes and the commercialisation of advertising campaigns.

Therefore it is fundamental that a tool for communication management like Web Signage can be integrated
in processes where third party software is utilized. To simplify the integration, Open Communication
Interface (OCI) has been created: a set of WCF services that allows to manage content and manipulate the
broadcasting criteria on the net.
Access to the OCI functionality is managed through the Security service that authenticates the user and
sends back an access ticket. This qualifies the authenticated user and allows him to access to functionalities
and data coherently to his operational role. Even if the authentication criteria are similar to the one used in
the web interface, the Security service ticket has on purpose been kept non compatible with the
authentication service of the user interface.

The clip service allows the creation of content, starting from images, videos or Flash animations. The same
service allows the manipulation of existing clips. The content broadcasting can be planned utilizing the
Schedule service, that determinates a playlist associated to a player or a group of players, utilizing the
Location and Campaign services. The latter two enable the creation of an advertising campaign targeted on
a specific potential customer segment (based on statistic income distribution, gender and age) for a series
of locations.

Locations can be identified by the proximity to a pair of geographic coordinates or by a city, district or
country. The Data and Report services deliver the data on the proof of play or on the campaign and the
planning as raw data (XML), playlog conform to the POPAI standard and reports in PDF. Those can be used
by third party systems for further elaboration (e.g. for billing) and data mining.
A real life deployment scenario
An example of a deployment scenario that greatly benefits from Windows Azure is now under development
with a company headquartered in Italy and expanding in Latin America, with focus on Brazil.

Activity Rio de Janeiro branch Milano branch


Content production √
Content publishing √
Advertising acquisition √ √
Technical supervision √
Monitoring √ √

The branches of Milano and Rio de Janeiro have a commercial facility dedicated to the selling of advertising
spaces. The contracts subscribed in Brazil are visible to the headquarter in Milano that activates the
production process in Italy. The graphic designers and the copywriter access to the Web Signage
dashboard, create the content based on client’s request and publish it on the entire network or a portion of
it, as requested.

The supervision of the network is handled by the Italian branch, that is also in charge for the maintenance
of the players and the display installed in Italy. The Rio de Janeiro branch is responsible for the
maintenance of the players installed in Brazil and has access to the monitoring application for the
respective sub-network.

Content delivery Network

Services with affinity to


North European datacenters
CDN Node
In Sao Paulo

Players installed in Branch office in Players installed in Headquarter in


Brazil Rio de Janeiro Italy Milan

In order to optimize the performance, it has been decided to utilize the Content Delivery Network to allow
a fast content propagation in Latin America. The administration dashboard will be connected directly to the
storage service in Europe. The operators in Brazil will have access only to the network monitoring
functionalities that have no impact on the performance.

The Milano branch, given the high performance delivered from the European datacenter, will operate
without utilizing the CDN. This could be activated anytime if needed.
Investment and operating costs
The deployment of a digital signage solution on premises needs a dedicated infrastructure that implies an
upfront investment and recurring costs for its maintenance:

 Investment
o hardware purchase
o initial expenditure related to the procurement phase (consulting, IT resources for validation
and integration)
o licences for operating systems
o licences for server software
 Recurring costs
o electricity and cooling
o location or floor space
o IT operations

Furthermore the infrastructure has to be planned based on business’ growth trend in order to guarantee an
adequate performance for almost 3 years. This means that the infrastructure is already overdimensioned
(therefore more expensive) and will be fully exploited only at the end of its lifecycle.

Let’s make a comparison between a deployment that utilizes the package “Small” (CPU 1 core, 1.7 GB RAM,
250 GB local storage) and the database on SQL Azure with a hardware configuration on premises with
similar performance:

On premises On Windows Azure


Unit Quantity Unit cost € Total € Unit Quantity Unit cost € Total €
Server N° 4 3.600 14.400 N° 0 0 0
Networking N° 2 800 1.600 N° 0 0 0
Storage TB 1 2.500 2.500 TB 0 0 0
Human resources €/hour 80 20 1.600 €/hour 1 20 20
Total CAPEX 20.100 20
Windows Server1 Licences N° 4 128 513 N° 0 0 0
SQL Server Licences N° 2 2.604 5.208 N° 0 0 0
Datacenter Services2 €/year 1 40.000 40.000 €/year 0 0 0
Compute service €/month 0 0 0 €/month 24 62 1.488
Storage service €/month 0 0 0 €/month 1 12 12
SQL Azure €/month 0 0 0 €/month 7 12 84
Bandwith usage on Azure €/GB 0 0 0 €/GB 1024 0.15 154
Total OPEX 64.221 1.738
First year total 84.321 1.758

By comparing the costs, the savings that can be achieved using Windows Azure and SQL Azure are relevant.
To those savings, which are already significant, lots of advantages arise for the business like the flexibility of
a structure that can scale and match exactly the business needs by introducing the pay per use modality,
even for the hardware infrastructure.

1
Licenses for Windows Server 2008 Web Edition and SQL Server 2008 Standard Edition acquired through the Microsoft Services Provider License
Agreement (SPLA) therefore paid on monthly base.

2
Services included in the datacenter: floor space rental, electricity, bandwidth and system supervision (security management).
Conclusions
The licencing model of Web Signage is based on a monthly fee per player and leaves the client free to
change the number of active licences from month to month. This licencing model is best supplied by a pay
per use infrastructure that can follow the growth and the seasonal fluctuations of the player’s number
connected to the platform. The possibility to deliver the service with a constant and optimal performance,
regardless on where the players are located geographically, has allowed to expand the offer to
international markets without incurring in typical logistical and organisational issues that are inevitable
with an installation on premises. Furthermore, the dematerialisation of the infrastructural component has
allowed to greatly reduce operating costs, benefitting competitivity and profitability.

Last but not least, we must consider the productivity boost deriving from focussing on software
development and its evolution, which is the core business of Edisonweb.

Você também pode gostar