Dokumentation

Hardware, die eine Anwendung nutzen kann

Eine Anwendung auf einem Bildschirm kann Barcode-Scanner und Ausweisleser, NFC-Tags, die Kamera, das Mikrofon, serielle Geräte, GPIO-Leitungen, Bluetooth-LE-Sensoren und Belegdrucker lesen und meldet Ihrem Agenten, was passiert ist. Diese Seite ist die eine Tabelle dessen, was jeder Player bietet.

Was eine Anwendung erreichen kann

Eine Anwendung ist die Seite, die Ihr Agent hochlädt und auf einem Bildschirm platziert. Der Player gibt ihr über window.screenrig.device die Hardware des Geräts, auf dem sie läuft: Die Anwendung wartet auf einen Scan, steuert ein Relais an oder druckt einen Beleg und meldet das Ergebnis mit emit an Ihren Agenten, sodass „Ausweis gescannt“ oder „Service angefordert“ im Ereignisprotokoll des Projekts landet.

Jede Art von Hardware hat ein eigenes Fähigkeits-Flag. Ein Flag ist nur auf einem Player true, der die Funktion bietet, auf einem Gerät, das die Hardware hat, und für die Seite, die den Bildschirm steuert; so läuft ein Build auch auf einem Bildschirm ohne die Hardware. Die SDK-Referenz listet die Flags, die Aufrufe und die Fehler auf.

Seitenfunktionen auf jedem Player, der Anwendungen ausführt

Sichtbarkeit der Seite, Seitenzeiten, Startparameter und die Fakten des Bildschirms in context funktionieren auf jedem Player, der Anwendungen ausführt: der Player-Web-App, Android (Google Play und Amazon Signage Stick), Linux und Raspberry Pi, macOS, Windows, BrightSign, Samsung Smart Signage (Tizen) und LG webOS Signage. Sie brauchen keine Hardware. Apple TV, iPhone und iPad führen keine Anwendungen aus.

Was jeder Player bietet

Eine Zelle nennt, was der Player tut. „Ja“ ist die Funktion, wie die Zeile sie beschreibt, und „Nein“ ist ein Player, der sie nicht bietet. Die Aufrufe zu jeder Zeile stehen in der SDK-Referenz.

FähigkeitAndroidLinux und Raspberry PimacOSWindowsBrightSignSamsung (Tizen), LG webOSPlayer-Web-App
Sichtbarkeit der Seite, Seitenzeiten, Startparameter und Bildschirmfakten in contextJaJaJaJaJaJaJa
Barcode-Scanner und Ausweisleser (Keyboard Wedge)JaJaJaNeinJaJaJa
NFC-TagsJaNeinNeinNeinNeinNeinNein
Barcode-Erkennung mit der KameraJaJaJaNeinNeinNeinNein
PersonenzählungJaNeinJaNeinNeinNeinNein
Schallpegel des MikrofonsJaJaJaJaNeinNeinNein
Serielle Schnittstellen über USB und RS-232Ja (USB-CDC-ACM-Adapter)JaNeinJaJa (der integrierte RS-232-Port und USB seriell)NeinWebSerial, nur ChromeOS-Kiosk
GPIOWo das Gerät einen beschreibbaren sysfs-GPIO-Chip bereitstellt (kein Pull)Raspberry Pi; andere Boards mit SCREENRIG_GPIO_CHIPNeinNeinJa: GPIO 0 bis 7 am GPIO-Anschluss oder ein BrightSign-USB-zu-GPIO-AdapterNeinNein
Bluetooth-LE-Sensoren (Lesen und Benachrichtigen)Ja (Android 12 und neuer)Ja (das BlueZ des Hosts)JaJaNeinNeinNein
Belegdrucker (ESC/POS)Ja (USB)JaNeinJaNeinNeinNein
PDF-DruckNeinJa (CUPS)NeinNeinNeinNeinNein
USB-Kassenscanner (WebHID)NeinNeinNeinNeinNeinNeinNur ChromeOS-Kiosk
Infrarot-Fernbedienung (Empfangen und Senden)Senden, auf einem Gerät mit Infrarot-SenderNeinNeinNeinEmpfangen und sendenNeinNein
UDP-Nachrichten an das Netzwerk des Bildschirms und von ihmJaJaNeinJaJaNeinNein
Live-HDMI-EingangNeinNeinNeinNeinJa: XT1143, XT1144, XT1145, XT2144 und XT2145NeinNein

Android umfasst die Player für Google Play und Amazon Signage Stick. Das Paket für Raspberry Pi ist der Linux-Player.

Hinweise zu jedem Player

Android und der Amazon Signage Stick

Serielle Ports sind serielle USB-CDC-ACM-Adapter, Drucker sind USB-Drucker, Bluetooth LE braucht Android 12 oder neuer, GPIO-Leitungen brauchen ein Gerät, das einen beschreibbaren sysfs-GPIO-Chip bereitstellt, und Infrarot sendet über den eigenen Infrarotsender des Geräts, wo es einen hat (Android empfängt kein Infrarot).

Es gelten zwei Arten von Berechtigungen, und keine unterbricht einen laufenden Bildschirm:

  • Kamera, Mikrofon und Bluetooth werden einmal bei der Einrichtung des Geräts erteilt, in den App-Einstellungen von Android oder mit adb shell pm grant. Der Player fragt nie danach. Solange Sie sie nicht erteilen, hat die Seite kein Kamera- oder Mikrofon-Flag, und Bluetooth-Aufrufe werden mit ble_unavailable abgelehnt.
  • USB-Geräte lösen den USB-Dialog von Android nur aus, wenn eine Seite zum ersten Mal einen seriellen Port öffnet oder auf einem USB-Drucker druckt, einmal für jedes Gerät. Ein Barcode-Scanner oder Ausweisleser, der wie eine Tastatur tippt, braucht keine Berechtigung.

Linux und Raspberry Pi

Das Paket für Raspberry Pi ist der Linux-Player, und jede für Linux markierte Zeile funktioniert auf einem Pi. Der GPIO-Header eines Pi wird bei einem Pi 3, 4 und 5 von selbst gefunden; ein anderes Board nennt seinen Chip mit SCREENRIG_GPIO_CHIP. Taster und Relais an GPIO behandelt die Verdrahtung und den Zugriff des Players auf den Chip. Bluetooth LE nutzt das BlueZ des Hosts, und der PDF-Druck läuft über CUPS, ein PDF-Drucker ist also eine CUPS-Warteschlange.

macOS

macOS bietet Keyboard-Wedge-Scanner, die Kamera, das Mikrofon und Bluetooth LE. Es hat keine Aufrufe für seriell, GPIO oder Druck.

Windows

Windows bietet das Mikrofon, serielle Ports, Bluetooth LE, Belegdrucker und UDP-Sockets. Es hat keine Keyboard-Wedge-Erfassung: Der Player kann nicht erkennen, wann ein Feld der Seite den Fokus hat, übernimmt daher die Tastenanschläge eines Scanners nicht, und ein Scanner tippt wie jede Tastatur in das fokussierte Feld der Seite. Die Kamera und GPIO werden nicht angeboten.

BrightSign

Eine Anwendung auf einem BrightSign-Player liest dessen integrierten RS-232-Port und serielle USB-Geräte, Keyboard-Wedge-Scanner und Ausweisleser sowie GPIO-Leitungen: die Pins 0 bis 7 am GPIO-Anschluss, USB-GPIO-Expander und die Leitungen und LEDs der Tastenplatinen BP200 und BP900. Sie empfängt Infrarotcodes von einer Fernbedienung, sendet Infrarotcodes an einen Fernseher oder AV-Geräte, sendet und empfängt UDP-Nachrichten für Crestron, AMX, Q-SYS und Show-Controller und zeigt das Live-Bild des HDMI-Eingangs des Players bei den Modellen XT1143, XT1144, XT1145, XT2144 und XT2145. Taster und Relais an GPIO listet die Pin-Bereiche auf, und BrightSign-Player behandelt den Player.

Samsung Smart Signage (Tizen) und LG webOS Signage

Diese Player führen Anwendungen im Browser-Player aus. Sie erhalten die Seitenfunktionen und das Keyboard-Wedge-Scanning, wo immer ein Scanner oder Ausweisleser im Tastaturstil angeschlossen ist, und sonst keine Hardware. WebSerial und WebHID werden auf ihnen nicht angeboten.

Die Player-Web-App und ChromeOS

In der Player-Web-App ist ein Scanner ein Keyboard-Wedge-Leser. Serielle WebSerial-Ports und WebHID-Kassenscanner funktionieren nur in einem ChromeOS-Kiosk. Chrome gibt dem Player einen seriellen Port über seine Unternehmensrichtlinie SerialAllowUsbDevicesForUrls oder SerialAllowAllPortsForUrls frei; der Abschnitt ChromeOS-Kiosk richtet den Kiosk ein.

Datenschutz

Die Kamera wird auf dem Gerät analysiert, und kein Bild verlässt es; ebenso verlässt kein Audio das Gerät.

MQTT und Geräte im Netzwerk

Hardware im eigenen Netzwerk des Bildschirms braucht kein Flag. Eine Anwendung ruft Daten von einem Gerät im Netzwerk ab und verbindet sich mit dem WebSocket-Listener eines MQTT-Brokers, und die SDK-Seite behandelt beides: MQTT abonnieren und Geräte im Netzwerk des Bildschirms erreichen. Seiten im Netzwerk des Bildschirms nennt, was jeder Player erreicht: Samsung Smart Signage (Tizen), LG webOS Signage und BrightSign erreichen nur https://- und wss://-Adressen.

Fragen

Welche Player lesen einen Barcode-Scanner oder Ausweisleser?
Android, Linux und Raspberry Pi, macOS, BrightSign, Samsung Smart Signage (Tizen), LG webOS Signage und die Player-Web-App lesen einen Scanner, der wie eine Tastatur tippt. Windows übernimmt die Tastenanschläge des Scanners nicht.
Kann ein Bildschirm mit Raspberry Pi auf einen Taster reagieren oder ein Relais schalten?
Ja. Ein Pi 3, 4 oder 5 mit dem Linux-Player liest Taster und Kontakte an seinem GPIO-Header und steuert Relais über eine Relaisplatine an.
Braucht eine Anwendung eine Berechtigung von der Person am Bildschirm?
Nicht am Bildschirm. Unter Android werden Kamera, Mikrofon und Bluetooth einmal bei der Einrichtung des Geräts erteilt, und der USB-Dialog erscheint nur beim ersten Mal, wenn eine Seite einen seriellen USB-Port oder USB-Drucker nutzt, einmal für jedes Gerät.
Sendet die Kamera Bilder irgendwohin?
Nein. Die Kamera wird auf dem Gerät analysiert, und kein Bild verlässt es.
Kostet es etwas?
screenRIG ist kostenlos. Der Scanner, der Sensor, die Relaisplatine oder der Drucker gehen auf Ihre Kosten.