Compare commits

..

2 Commits

Author SHA1 Message Date
wpetit f0d068a4ef feat(android): differentiate debug and release packages
arcad/arcast/pipeline/head This commit looks good Details
2024-04-30 13:18:36 +02:00
wpetit 9b835c2f6e feat: enable desktop actions 2024-04-30 13:18:06 +02:00
9 changed files with 7 additions and 320 deletions

View File

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

View File

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

View File

@ -1,9 +1,3 @@
- [Configuration](#configuration)
- [Personnalisation de l'apparence](#personnalisation-de-lapparence)
- [Exemple](#exemple)
- [index.gohtml exemple](#indexgohtml-exemple)
- [Configuration arcast-player](#configuration-arcast-player)
# Configuration # Configuration
Le server Arcast utilise un fichier de configuration permettant de personnaliser son comportement. Le server Arcast utilise un fichier de configuration permettant de personnaliser son comportement.
@ -58,114 +52,8 @@ Voici un exemple commenté du fichier de configuration:
} }
``` ```
## Personnalisation de l'apparence ## Personnalisation
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`. 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. 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
```

View File

@ -1,68 +0,0 @@
- [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.

Before

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

View File

@ -1,136 +0,0 @@
- [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,7 +7,8 @@ Exec=arcast-player run --additional-chrome-arg incognito --additional-chrome-arg
Icon=arcast-player Icon=arcast-player
Terminal=false Terminal=false
Categories=Network;Utility Categories=Network;Utility
Actions=Kiosk
[Desktop Action kiosk] [Desktop Action Kiosk]
Name=Start in kiosk mode Name=Start in kiosk mode
Exec=arcast-player run --additional-chrome-arg incognito --additional-chrome-arg kiosk Exec=arcast-player run --additional-chrome-arg incognito --additional-chrome-arg kiosk