mirror of
https://github.com/screentinker/screentinker.git
synced 2026-06-15 10:43:36 -06:00
Ports the ScreenTinker player to a Tizen TV / signage web app, speaking the SAME /device socket.io protocol as the Android player — no server changes; a Tizen display pairs from the same dashboard. - app.js: device protocol client — register (pairing_code | device_id+token), device:registered/paired/unpaired/playlist-update, 15s heartbeat, keep-awake. Always reaches the server prompt until the display is actually paired; a saved-but-unreachable server falls back to the prompt (no blank screen); BACK returns to it. - player.js: fullscreen single-zone renderer — image (duration timer), video (play-to-end + loop), YouTube (iframe embed), widget (iframe render endpoint). - config.xml: Tizen TV manifest; build-wgt.sh packages (signs if Tizen CLI present, else unsigned); README covers URL-Launcher and signed-.wgt deploy. Validated: headless protocol test vs the live server passed end-to-end (register -> pair -> reconnect-auth -> playlist(2) -> content 200); loads + renders in Chromium with no JS errors. Not yet ported (fullscreen single-zone covers most signage): multi-zone, video walls, screenshots, remote control, self-OTA. .wgt is a build artifact (gitignored).
28 lines
1.4 KiB
XML
28 lines
1.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets"
|
|
id="http://screentinker.com/player" version="1.0.0" viewmodes="maximized">
|
|
<tizen:application id="ScrnTinkr1.ScreenTinker" package="ScrnTinkr1" required_version="2.4"/>
|
|
<tizen:profile name="tv"/>
|
|
<name>ScreenTinker</name>
|
|
<author email="dw5304@gmail.com">ScreenTinker</author>
|
|
<description>ScreenTinker digital signage player</description>
|
|
<icon src="icon.png"/>
|
|
<content src="index.html"/>
|
|
|
|
<!-- Landscape signage, no context menu, allow background, keep app full-screen -->
|
|
<tizen:setting screen-orientation="landscape" context-menu="disable"
|
|
background-support="enable" encryption="disable"
|
|
install-location="auto" hwkey-event="enable"/>
|
|
|
|
<feature name="http://tizen.org/feature/screen.size.all"/>
|
|
|
|
<!-- Allow the player to reach any signage server + load remote media / YouTube -->
|
|
<access origin="*" subdomains="true"/>
|
|
<tizen:allow-navigation>*</tizen:allow-navigation>
|
|
|
|
<tizen:privilege name="http://tizen.org/privilege/internet"/>
|
|
<tizen:privilege name="http://tizen.org/privilege/application.launch"/>
|
|
<tizen:privilege name="http://tizen.org/privilege/display"/>
|
|
<tizen:privilege name="http://developer.samsung.com/privilege/network.public"/>
|
|
</widget>
|