Compare commits

..

8 Commits

Author SHA1 Message Date
lseys f802e28d26 doc: add kiosk mode
arcad/arcast/pipeline/pr-develop This commit looks good Details
2024-05-02 11:50:33 +02:00
lseys 16f5e1873d doc: text correction
arcad/arcast/pipeline/pr-develop This commit looks good Details
2024-04-30 16:28:45 +02:00
lseys a4784e9226 doc: add img for exemple 2024-04-30 16:27:42 +02:00
lseys 5039a9d5c2 doc: add link for the two new document 2024-04-30 15:40:04 +02:00
lseys 83fd962ac8 doc: add some detail for the extra configuration 2024-04-30 15:39:35 +02:00
lseys 653f4cc91b doc: create doc usage for user 2024-04-30 15:38:54 +02:00
lseys 0a15c96339 doc: create doc installation 2024-04-30 15:38:19 +02:00
lseys b8ddd0018c feat: add screen for doc 2024-04-30 15:37:50 +02:00
9 changed files with 320 additions and 7 deletions

View File

@ -28,10 +28,6 @@ android {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
applicationIdSuffix = ".debug"
versionNameSuffix = "-debug"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8

View File

@ -3,3 +3,5 @@
- [Configuration](./configuration.md)
- [API HTTP](./http-api.md)
- [mDNS](./mdns.md)
- [Installation](./installation.md)
- [Usage](./usage.md)

View File

@ -1,3 +1,9 @@
- [Configuration](#configuration)
- [Personnalisation de l'apparence](#personnalisation-de-lapparence)
- [Exemple](#exemple)
- [index.gohtml exemple](#indexgohtml-exemple)
- [Configuration arcast-player](#configuration-arcast-player)
# Configuration
Le server Arcast utilise un fichier de configuration permettant de personnaliser son comportement.
@ -52,8 +58,114 @@ Voici un exemple commenté du fichier de configuration:
}
```
## Personnalisation
## Personnalisation de l'apparence
Il est possible de personnaliser la page d'accueil du player Arcast en créant des fichiers dans le répertoire définit par l'attribut de configuration `http.customDir`.
Le contenu de ce répertoire doit répliquer l'arborescence embarquée par défaut (voir https://forge.cadoles.com/arcad/arcast/src/branch/develop/pkg/server/embed). Chaque fichier présent remplacera celui embarqué par défaut.
### Exemple
Nous voulons ajouter une image, et du texte à la page d'accueil, étant sur une ubuntu nous allons à l'emplacement : `${HOME}/.config/arcast-player/`
Soit :
```Shell
${HOME}/.config/arcast-player/
├── config.json
└── custom
```
Nous avons une image **logo.png**, un fichier css pour l'apparence **exemple.css**, et un template **index.gohtml** dans le dossier `_templates`, contenant le texte à afficher, et sa position dans la fenêtre.
Soit :
```Shell
${HOME}/.config/arcast-player/
├── config.json
└── custom
├── exemple.css
├── logo.png
└── _templates
└── index.gohtml
```
Une fois les fichiers dûments remplis, il suffit de lancer, ou re-lancer arcast-player pour voir le résultat.
#### index.gohtml exemple
```go
{{ define "message" }}
<h1 style="margin-top: 20px" class="text-centered">Bienvenue chez moi !</h1>
<hr style="margin: 20px 0 20px 0" />
<div style="margin: 20px 0 20px 0">
<p>Pensez à vous essuyer les pieds</p>
<ul>
<li>
<b style="width: 33%; display: inline-block">Pour la bière:</b>
<code>Le frigo est à droite</code>
</li>
<li>
<b style="width: 33%; display: inline-block">Pour le barbecue</b>
<code>Porte fenêtre de gauche, puis à droite ce trouve votre bonheur</code>
</li>
</ul>
<hr style="margin: 20px 0 20px 0" />
</div>
{{ end }}
{{ define "head" }}
<link rel="stylesheet" href="exemple.css" />
{{ end }}
{{ define "index" }}
{{ template "base" . }}
{{ end }}
```
Exemple de rendu avec logo cadoles.
![exemple](./resources/arcast-exemple.png)
## Configuration arcast-player
Comme constaté lors de l'affichage de l'aide pour `arcast-player run -help` il est possible d'utiliser les flags chrome pour paramétrer plus finement l'affichage.
Liens pour une liste des flags disponible à destination de chrome : [liens falgs chrome](https://peter.sh/experiments/chromium-command-line-switches/)
rappel :
```Shell
[computer@user ~]$ arcast-player run -help
NAME:
arcast run
USAGE:
arcast run [command options] [arguments...]
OPTIONS:
--config value (default: "/home/panda/.config/arcast-player/config.json") [$ARCAST_DESKTOP_CONFIG]
--additional-chrome-arg value [ --additional-chrome-arg value ] (default: "incognito") [$ARCAST_DESKTOP_ADDITIONAL_CHROME_ARGS]
--instance-id value [$ARCAST_DESKTOP_INSTANCE_ID]
--address value (default: ":") [$ARCAST_DESKTOP_ADDRESS]
--https-address value (default: ":") [$ARCAST_DESKTOP_HTTPS_ADDRESS]
--window-height value (default: 0) [$ARCAST_DESKTOP_WINDOW_HEIGHT]
--apps (default: false) [$ARCAST_DESKTOP_APPS]
--window-width value (default: 0) [$ARCAST_DESKTOP_WINDOW_WIDTH]
--allowed-origins value [ --allowed-origins value ] [$ARCAST_DESKTOP_ALLOWED_ORIGINS]
--custom-files-dir value [$ARCAST_DESKTOP_CUSTOM_FILES_DIR]
--dummy-browser (default: false) [$ARCAST_DESKTOP_DUMMY_BROWSER]
--help, -h show help
```
Exemple pour lancer chrome en ligne de commande avec le mode kiosk.
Deux possibilités :
```Shell
arcast-player run --additional-chrome-arg incognito --additional-chrome-arg kiosk
```
Il est aussi possible d'utiliser une variable d'environnement comme indiqué dans l'aide.
```Shell
ARCAST_DESKTOP_ADDITIONAL_CHROME_ARGS="incognito,kiosk" arcast-player run
```

68
doc/installation.md Normal file
View File

@ -0,0 +1,68 @@
- [Installation](#installation)
- [Android](#android)
- [Arcast-player \& client](#arcast-player--client)
- [Ubuntu/debian](#ubuntudebian)
- [Ubuntu](#ubuntu)
- [manjaro](#manjaro)
# Installation
Les paquets sont actuellement générés, et fonctionnels pour :
architecture :
- amd64
- arm64
OS :
- linux
- .apk
- .deb
- tar.gz
- android
- .apk
Leurs téléchargements pour les versions linux sont disponibles sur : [arcast-cadoles](https://forge.cadoles.com/arcad/arcast/releases)
**arcast-client**: permet d'envoyer des flux sur les players
**arcast-player**: permet l'affichage
## Android
L'App android est déployée sur [https://fdroid.cadol.es/repo/](https://fdroid.cadol.es/repo/)
Pour ajouter ce repo utilisez [F-droid](https://f-droid.org/fr/). (paramètre/depôt cliquer sur **+**)
Une fois installé, ouvrir f-droid, Arcast Player apparaîtra dans les nouveautées.
## Arcast-player & client
Télécharger sur la page des versions celle qui correspond à votre architecture, puis installer le paquet.
### Ubuntu/debian
`dpkg -i paquet.deb`
### Ubuntu
`apt install monpaquet.deb`
### manjaro
Il n'y a pas de pkg.tar.zst, il va falloir le construire. Pour cela utiliser debtap.
```Shell
# Installation debtap
sudo pacman -S debtap
# Initialisation debtap
sudo debtap -u
# construction du paquet pour Arch Linux
sudo debtap nom_du_paquet.deb
# Installation du nouveau paquet
sudo pacman -U nom_du_paquet_convertis.pkg.tar.zst
```
Note : Il y a quelque différence, notamment l'absence d'icone de lancement pour l'application.

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

136
doc/usage.md Normal file
View File

@ -0,0 +1,136 @@
- [Usage](#usage)
- [Linux](#linux)
- [Arcast-player en ligne de commande](#arcast-player-en-ligne-de-commande)
- [Kiosk mode](#kiosk-mode)
- [Arcast-client en ligne de commande](#arcast-client-en-ligne-de-commande)
- [Démarrer un cast](#démarrer-un-cast)
- [Scan](#scan)
- [Status](#status)
- [Reset](#reset)
- [Arcast-player affichage](#arcast-player-affichage)
# Usage
## Linux
Vous pouvez lancer arcast grâce à son icône depuis l'interface graphique. Si vous souhaitez avoir un mode fullscreen/kiosk il suffit d'effectuer un clic droit sur l'icône de l'application et de choisir le mode sus-mentionné.
### Arcast-player en ligne de commande
Pour afficher les commandes disponibles :
`arcast-player -help`
pour lancer arcast-player :
```Shell
# Lancer arcast-player
arcast-player run
# afficher les options disponible pour lancer arcast
arcast-player run -help
```
#### Kiosk mode
Pour lancer arcast-player en mode kiosk via la ligne de commande :
```Shell
arcast-player run --additional-chrome-arg incognito --additional-chrome-arg kiosk
```
Il est aussi possible d'utiliser une variable d'environnement.
```Shell
ARCAST_DESKTOP_ADDITIONAL_CHROME_ARGS="incognito,kiosk" arcast-player run
```
Liste des command pour chrome, permet d'avoir les informations nécessaire sur les flags disponible au lancement du cast. [link](https://peter.sh/experiments/chromium-command-line-switches/)
### Arcast-client en ligne de commande
Afficher les commandes disponibles:
`arcast-client -help`
Il y a quatre commandes disponibles hors help :
- cast
- reset
- scan
- status
- help
Chacune peut prendre des options particulières, pour les consulter `arcast-client [commande] -help`
#### Démarrer un cast
Effectuer un scan pour avoir les informations du client ciblé puis lancer la commande : `arcast-client cast --player-address x.x.x.x:port https://macible`
exemple :
```Shell
user@localhost$ arcast-client cast --player-address 192.168.10.197:45555 https://www.cadoles.com
```
#### Scan
Vous pouvez scanner le réseau actuel pour détecter tous les **arcast-player** en route.
```Shell
user@localhost$ arcast-client scan
+-----------------------+-----------------------------------+-------+
| ID | IPS | PORT |
+-----------------------+-----------------------------------+-------+
| 90ZiA_cZfHDvm6_XRY0uY | ["192.168.10.101","192.168.1.1... | 45555 |
| P5UCrO16snObXr87zlPYa | ["192.168.10.197"] | 45555 |
+-----------------------+-----------------------------------+-------+
```
#### Status
De même, il est possible d'afficher les arcast-player utilisés, et afficher ce qui est casté.
```Shell
user@localhost$ arcast-client status
+-----------------------+----------------------+---------+-------------------+--------------------------+
| ID | ADDRESS | STATUS | TITLE | URL |
+-----------------------+----------------------+---------+-------------------+--------------------------+
| 90ZiA_cZfHDvm6_XRY0uY | 192.168.10.101:45555 | casting | Cadoles - Accueil | https://www.cadoles.com/ |
| Njv7ksbvjYnCAa-WPALDI | 192.168.1.240:40931 | casting | Cadoles - Accueil | https://www.cadoles.com/ |
+-----------------------+----------------------+---------+-------------------+--------------------------+
```
#### Reset
Vous pouvez stopper tous les castes en cours.
```Shell
user@localhost$ arcast-client reset
+-----------------------+----------------------+--------+-----------------+-------------------------+
| ID | ADDRESS | STATUS | TITLE | URL |
+-----------------------+----------------------+--------+-----------------+-------------------------+
| 90ZiA_cZfHDvm6_XRY0uY | 192.168.10.101:45555 | idle | Ready to cast ! | http://localhost:45555/ |
| P5UCrO16snObXr87zlPYa | 192.168.10.197:45555 | idle | Ready to cast ! | http://localhost:45555/ |
```
## Arcast-player affichage
Rappel, pour lancer un player : `arcast-player run`
Vous avez démarré un player, une fenêtre c'est ouverte comme suivant :
![image-arcast-player](./resources/arcast-player-run.png)
Dans les zones **Address** et **Apps** vous avez les IP sur lesquelles le cast est disponible.
Depuis votre poste, ou un autre entrer l'adresse qui correspond à votre réseau et qui ce trouve sous **Apps**.
Accepter le risk, (advanced/accept the risk and continue). Vous aurez la même page, cliquer sur l'adresse dans **Apps** qui correspond.
![image-arcast-player](./resources/arcast-player-webpage.png)
Vous pourrez depuis cette interface :
1. Soit partager votre écran, pour cela cliquer sur **Screen sharing**, puis choississez ce que vous voulez partager.
2. Soit entrer une adresse web, et lancer un cast de la page choisit
3. Soit désactiver un cast en cliquant sur reset

View File

@ -7,8 +7,7 @@ Exec=arcast-player run --additional-chrome-arg incognito --additional-chrome-arg
Icon=arcast-player
Terminal=false
Categories=Network;Utility
Actions=Kiosk
[Desktop Action Kiosk]
[Desktop Action kiosk]
Name=Start in kiosk mode
Exec=arcast-player run --additional-chrome-arg incognito --additional-chrome-arg kiosk