Create image and video posts, choose which displays to show, schedule them and show the content!
- This repository contains the backend API, written in PHP using Laravel.
- An Angular frontend that communicates with this API is located at: github.com/mtbossa/digital-signage-frontend. You can use the API directly, or this web app.
- A client software for showing the posts as been created, and its repository is located at: github.com/mtbossa/digital-signage-raspberry-app. It uses NodeJS and generates an executable that can be executed in a Raspberry Pi. Then, the application connects to the API via a websocket connection, which will download necessary files and store them locally in order to work offline.
- Must set .env variables to the frontend domain with port, for example, for local Angular applications:
SANCTUM_STATEFUL_DOMAINS=localhost:4200
SESSION_DOMAIN=localhost
In production, eg.:
SANCTUM_STATEFUL_DOMAINS=*.revendahost.inf.br
SESSION_DOMAIN=.revendahost.inf.br
- Set to .env SAIL_XDEBUG_MODE=develop,debug
- Add on PHPStorm settings:
PHP > Servers > Host: 0.0.0.0 - Absolute path on server: /var/www/html
- Install Sail normally
- Send
XDEBUG_SESSION=session_name
orXDEBUG_SESSION_START=session_name
with any request
- Or install Xdebug web extension
- Add ./docker-compose.yml (laravel container) as CLI Interpreter
sudo curl -H "Authorization: Bearer <DISPLAY_API_TOKEN>" <API_URL>/api/displays/<DISPLAY_ID>/installer/download | bash
- Must set
post_max_size = 150M
andupload_max_filesize = 150M
- Development:
- If we don't publish sail files, we'll need to change the
php.ini
configuration file inside
vendor/laravel/sail/runtimes/RUNTIME_VERSION/php.ini
everytime we build the sail containersail build --no-cache
.
- If we don't publish sail files, we'll need to change the
php.ini
configuration file inside