shine

Smart Hotel Room

Overview

External services

name

description

office 365

all team accounts

github

source code repositories (nodall user)

azure

Servers, Storage

azure devops

Pipelines, Project Management and private npm and nuget package manager

mongo Atlas

data base

Development Tools

name

description

node and html develpment)

ioboard development

Pipelines and Management

Mobile App

Technologies

devops

Pipelines

Management Projects

Deploy Steps

Server

Repository have 2 branches

  • develop: all development and test done here

  • master: only to merge the develop branches when ready

Publish to master branch launch a pipeline and install server api in staging webservice To swap to production webservice use azure portal and do manualy (it take seconds)

Web application

Web aplications are alocated in Azure Blob storage service in $web folder. We have 3 branch

  • develop: to develop and execute in your local computer

  • staging: publish to a staging slot in azure storage. folder is $web/staging/[appname] Test online the new features

  • master: publish to the production folder $web/[appname]

Player Softwares

All players software updates from Github releases. Release are named with [tag]-[version], where version is https://semver.org/ examples: demo-0.0.1, release-12.0.0, dev-0.0.1, etc...

steps tu publish are

  • use develop branch until you finish the new version

  • merge into master

  • execute script script/release.js (in master branch)

    • publish tag (Create release)

    • execute pipeline

    • zip ouput and upload to github release

The player

Workspace

File System

Kernel.App

Is the core of the system. All funcionalities are encapsulated in independent Threaded services. It give more control, modularity and extensibility to the system. All service and external application or Mobile app are connected each others with the websocket realtime custom protocol (see further in the document) .

Render.App

The render app is a full screen mode Unity 3D engine with multiple features

  • play any medias

  • play custom developments

    • color: grafient color full screen feature. Transform screen in a smart light

    • gallery: lets navigate throw fotos

    • Text: hight level Text engine for Smart mode communication between the user and Shine

    • Mapping engine: The output is a full mapping system, with corder keystone, beziers distorsion, and texture mapping.

    • Desktop duplication: this is the main important features for the extensibility of the system.

Extension.App

  • Maps.app: Basic custom maps 3D application based on Bing maps. Developped in UWP c# technology.

  • tv.player.app: A windows Form application than embed the VLC player to Stream TV Channels from MediaPortal.

  • browser.app: A CEFSharp integration to have a full Google Chrome Web Browser. Used for games application.

kernel.app

Elements

Services

Communication protocols

Custom protocol over Websocket

  • Publish/Subscribe protocol

  • Request/Response protocol

  • Authentication protocol

    • none

    • basic ( server filtering (ip for example)

    • auth (Request -> verification -> confirmation)

Installer

Centry - control panel

Update System

In shine we have 2 type of updates

  • Software (new versions)

  • Content (new media or configuration files)

Software

The software update is bases on Github releases

Release Updatable Repositories

  • shine.player.core-v4

  • shine.player.render

  • shine.player.web.ui

Contents

The software update is bases on Git Branches

Shine Contents Repositories

  • shine.player.storage.common

  • shine.player.storage.city

  • shine.player.storage.hotel

Last updated

Was this helpful?