fixed the update_config_playlist version

This commit is contained in:
2025-06-25 10:30:46 +03:00
parent 01a6a95645
commit f7d749cc8b
13 changed files with 635 additions and 45 deletions

View File

@@ -1,10 +1,10 @@
{
"screen_orientation": "Landscape",
"screen_name": "rpi-tv11",
"screen_name": "tv-terasa",
"quickconnect_key": "8887779",
"server_ip": "192.168.1.74",
"port": "5000",
"server_ip": "digi-signage.moto-adv.com",
"port": "80",
"screen_w": "1920",
"screen_h": "1080",
"playlist_version": 6
"playlist_version": 2
}

View File

@@ -1,6 +1,559 @@
2025-06-24 16:02:45 - STARTED: 123.jpeg
2025-06-24 16:04:27 - STARTED: 123.jpeg
2025-06-24 16:05:01 - STARTED: 123.jpeg
2025-06-24 16:08:00 - STARTED: 123.jpeg
2025-06-24 16:09:01 - STARTED: 123.jpeg
2025-06-24 16:09:31 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=192.168.1.74, host=rpi-tv11, quick=8887779, port=5000
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-24 16:22:50 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-24 16:22:50 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] SettingsScreen: Configuration saved.
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-24 16:23:01 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-24 16:23:01 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] Password correct. Exiting app.
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=192.168.1.74, host=rpi-tv11, quick=8887779, port=5000
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:05:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:05:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca41910>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:05:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:05:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffefe4c89d0>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:05:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:05:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeee379d10>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:06:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:06:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeec9fa210>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:06:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:06:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca2d450>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:06:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:06:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeee37ae50>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:07:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:07:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeee3c0d50>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:07:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:07:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] SettingsScreen: Testing connection to server...
[INFO] [SignageApp] SettingsScreen: Sending request to http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}...
[ERROR] [SignageApp] SettingsScreen: Error connecting to server: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca2d490>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffefc80c390>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:07:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:07:44 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca21b50>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:08:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:08:04 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] SettingsScreen: Testing connection to server...
[INFO] [SignageApp] SettingsScreen: Sending request to http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}...
[ERROR] [SignageApp] SettingsScreen: Error connecting to server: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeee3c0f10>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] SettingsScreen: Testing connection to server...
[INFO] [SignageApp] SettingsScreen: Sending request to http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}...
[ERROR] [SignageApp] SettingsScreen: Error connecting to server: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca2d150>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7ffeeca43710>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:08:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:08:24 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Password correct. Exiting app.
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=192.168.1.74, host=rpi-tv11, quick=8887779, port=5000
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:11:51 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:11:51 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff07f5b2d0>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:12:11 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:12:11 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Password correct. Exiting app.
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=192.168.1.74, host=rpi-tv11, quick=8887779, port=5000
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:12:23 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:12:23 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff48104f50>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:12:43 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:12:43 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff593c0850>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:13:03 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:13:03 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] SettingsScreen: Configuration saved.
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:13:22 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:13:22 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] SettingsScreen: Testing connection to server...
[INFO] [SignageApp] SettingsScreen: Sending request to http://digi-signage.moto-adv.com:80/api/playlists with params: {'hostname': 'tv-terasa', 'quickconnect_code': '8887779'}...
[INFO] [SignageApp] SettingsScreen: Server is reachable.
[INFO] [SignageApp] SettingsScreen: Configuration saved.
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:13:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:13:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff58bb8950>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:13:57 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:13:57 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff480e9710>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:14:17 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:14:17 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff480eabd0>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:14:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:14:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff57a804d0>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:14:57 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:14:57 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff429d8990>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:15:17 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:15:17 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] End of playlist reached. Checking for updates...
[INFO] [SignageApp] Fetching playlist from URL: http://192.168.1.74:5000/api/playlists with params: {'hostname': 'rpi-tv11', 'quickconnect_code': '8887779'}
[ERROR] [SignageApp] Failed to fetch playlist: HTTPConnectionPool(host='192.168.1.74', port=5000): Max retries exceeded with url: /api/playlists?hostname=rpi-tv11&quickconnect_code=8887779 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fff48104b90>: Failed to establish a new connection: [Errno 111] Connection refused'))
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] Playlist versions match. No update needed.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:15:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:15:37 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] SettingsScreen: Configuration saved.
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], 'version': 6}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'file_name': '20250417_09h25m37s_grim.png', 'url': '/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png', 'duration': 20}], Version: 6
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:15:55 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:15:55 - STARTED: 20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] Password correct. Exiting app.
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=digi-signage.moto-adv.com, host=tv-terasa, quick=8887779, port=80
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[WARNING] [SignageApp] python_functions: Local playlist file not found.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [], Version: 0
[WARNING] [SignageApp] MediaPlayer: No local playlist found. Fetching from server...
[INFO] [SignageApp] Fetching playlist from URL: http://digi-signage.moto-adv.com:80/api/playlists with params: {'hostname': 'tv-terasa', 'quickconnect_code': '8887779'}
[INFO] [SignageApp] Server response: {'hashed_quickconnect': '$2b$12$pBmwfGas1B.vLIadbe9vdecp1ioOW/ZkTK.k8/PcxFm5g0SLoo9nG', 'playlist': [{'duration': 20, 'file_name': 'Ibex_450.jpg', 'url': 'http://digi-signage.moto-adv.com/media/Ibex_450.jpg'}, {'duration': 20, 'file_name': 'cropped-cropped-main-picture-scaled-1.jpeg', 'url': 'http://digi-signage.moto-adv.com/media/cropped-cropped-main-picture-scaled-1.jpeg'}], 'playlist_version': 2}
[INFO] [SignageApp] Fetched updated playlist from server.
[INFO] [SignageApp] python_functions: Updated playlist version in app_config.txt to 2.
[INFO] [SignageApp] MediaPlayer: Server playlist fetched successfully.
[INFO] [SignageApp] python_functions: Starting media file download...
[INFO] [SignageApp] python_functions: Successfully downloaded Ibex_450.jpg to /home/pi/Desktop/signage-player/src/static/resurse/Ibex_450.jpg
[INFO] [SignageApp] python_functions: Successfully downloaded cropped-cropped-main-picture-scaled-1.jpeg to /home/pi/Desktop/signage-player/src/static/resurse/cropped-cropped-main-picture-scaled-1.jpeg
[INFO] [SignageApp] python_functions: Starting save_local_playlist function.
[INFO] [SignageApp] python_functions: Updated local playlist with server data.
[INFO] [SignageApp] python_functions: Finished save_local_playlist function.
[INFO] [SignageApp] python_functions: Starting save_local_playlist function.
[INFO] [SignageApp] python_functions: Updated local playlist with server data.
[INFO] [SignageApp] python_functions: Finished save_local_playlist function.
[INFO] [SignageApp] python_functions: Starting load_config function.
[INFO] [SignageApp] python_functions: Configuration file loaded successfully.
[INFO] [SignageApp] python_functions: Configuration loaded: server=digi-signage.moto-adv.com, host=tv-terasa, quick=8887779, port=80
[INFO] [SignageApp] Screen size set to 1920x1080
[INFO] [SignageApp] MediaPlayer: Starting on_enter method.
[INFO] [SignageApp] python_functions: Starting load_local_playlist function.
[INFO] [SignageApp] python_functions: Local playlist loaded: {'playlist': [{'duration': 20, 'file_name': 'Ibex_450.jpg', 'url': 'http://digi-signage.moto-adv.com/media/Ibex_450.jpg'}, {'duration': 20, 'file_name': 'cropped-cropped-main-picture-scaled-1.jpeg', 'url': 'http://digi-signage.moto-adv.com/media/cropped-cropped-main-picture-scaled-1.jpeg'}], 'version': 2}
[INFO] [SignageApp] python_functions: Finished load_local_playlist function successfully.
[INFO] [SignageApp] MediaPlayer: Loaded local playlist: [{'duration': 20, 'file_name': 'Ibex_450.jpg', 'url': 'http://digi-signage.moto-adv.com/media/Ibex_450.jpg'}, {'duration': 20, 'file_name': 'cropped-cropped-main-picture-scaled-1.jpeg', 'url': 'http://digi-signage.moto-adv.com/media/cropped-cropped-main-picture-scaled-1.jpeg'}], Version: 2
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/Ibex_450.jpg
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:27:18 - STARTED: Ibex_450.jpg
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:27:18 - STARTED: Ibex_450.jpg
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/Ibex_450.jpg
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] MediaPlayer: Finished on_enter method.
[INFO] [SignageApp] SettingsScreen: Log messages loaded successfully.
[INFO] [SignageApp] SettingsScreen: Testing connection to server...
[INFO] [SignageApp] SettingsScreen: Sending request to http://digi-signage.moto-adv.com:80/api/playlists with params: {'hostname': 'tv-terasa', 'quickconnect_code': '8887779'}...
[INFO] [SignageApp] SettingsScreen: Server is reachable.
[INFO] [SignageApp] Navigating to the next media.
[INFO] [SignageApp] Canceling image timer.
[INFO] [SignageApp] MediaPlayer: Starting play_media method.
[INFO] [SignageApp] MediaPlayer: Playing media: /home/pi/Desktop/signage-player/src/static/resurse/cropped-cropped-main-picture-scaled-1.jpeg
[INFO] [SignageApp] MediaPlayer: Canceling existing image timer.
[INFO] [SignageApp] MediaPlayer: Starting log_event function.
2025-06-25 10:27:37 - STARTED: cropped-cropped-main-picture-scaled-1.jpeg
[INFO] [SignageApp] MediaPlayer: Logged event: 2025-06-25 10:27:37 - STARTED: cropped-cropped-main-picture-scaled-1.jpeg
[INFO] [SignageApp] MediaPlayer: Finished log_event function.
[INFO] [SignageApp] Showing image: /home/pi/Desktop/signage-player/src/static/resurse/cropped-cropped-main-picture-scaled-1.jpeg
[INFO] [SignageApp] MediaPlayer: Finished play_media method.
[INFO] [SignageApp] Password correct. Exiting app.

View File

@@ -78,7 +78,7 @@
# Input fields in the upper half of the screen
BoxLayout:
orientation: 'vertical'
size_hint_y: 0.4 # Allocate 85% of the screen height for input fields
size_hint_y: 0.7 # Allocate 85% of the screen height for input fields
Label:
text: "Screen Orientation"
@@ -184,14 +184,29 @@
orientation: 'vertical'
size_hint_y: None
height: 200 # Adjust height as needed
padding: 10
spacing: 5
canvas.before:
Color:
rgba: 0.2, 0.2, 0.2, 1 # Dark gray background
Rectangle:
pos: self.pos
size: self.size
Color:
rgba: 1, 1, 1, 1 # White border
Line:
width: 2
rectangle: (self.x, self.y, self.width, self.height)
Label:
id: log_messages_label
text: "Log messages will appear here."
font_size: 14
font_name: "RobotoMono-Regular.ttf" # Use a monospace font
halign: 'left'
valign: 'top'
text_size: self.size
color: 1, 1, 1, 1 # White text
# Buttons in the lower part of the screen
BoxLayout:

View File

@@ -4,15 +4,23 @@ import os
# Path to the log file
LOG_FILE_PATH = os.path.join(os.path.dirname(__file__), 'Resurse', 'log.txt')
# Configure the logger to write to the log file
logging.basicConfig(
level=logging.INFO, # Set the logging level to INFO
format='[%(levelname)s] [%(name)s] %(message)s', # Format for log messages
handlers=[
logging.FileHandler(LOG_FILE_PATH, mode='a'), # Append logs to the file
logging.StreamHandler() # Also log to the console
]
)
# Create a logger instance
Logger = logging.getLogger('SignageApp')
Logger.setLevel(logging.INFO) # Set the logging level to INFO
# Create a shared logger instance
Logger = logging.getLogger('SignageApp')
# Create a file handler to write logs to the log.txt file
file_handler = logging.FileHandler(LOG_FILE_PATH, mode='a') # Append logs to the file
file_handler.setLevel(logging.INFO)
# Create a formatter for the log messages
formatter = logging.Formatter('[%(levelname)s] [%(name)s] %(message)s')
file_handler.setFormatter(formatter)
# Add the file handler to the logger
Logger.addHandler(file_handler)
# Optionally, add a stream handler to log messages to the console
stream_handler = logging.StreamHandler()
stream_handler.setLevel(logging.INFO)
stream_handler.setFormatter(formatter)
Logger.addHandler(stream_handler)

View File

@@ -25,7 +25,7 @@ import requests
import logging
# Import functions from python_functions.py
from python_functions import load_local_playlist, download_media_files, clean_unused_files,save_local_playlist, fetch_server_playlist
from python_functions import load_local_playlist, download_media_files, clean_unused_files,save_local_playlist, update_config_playlist_version, fetch_server_playlist
from logging_config import Logger # Import the shared logger
# Load the KV file for UI layout
@@ -106,7 +106,7 @@ class MediaPlayer(Screen):
def on_enter(self):
"""Called when the screen is entered."""
Logger.info("MediaPlayer: Entering screen...")
Logger.info("MediaPlayer: Starting on_enter method.")
# Attempt to load the local playlist
local_playlist_data = load_local_playlist()
@@ -143,23 +143,27 @@ class MediaPlayer(Screen):
self.show_buttons() # Ensure buttons are visible when the screen is entered
else:
Logger.warning("MediaPlayer: Playlist is empty. No media to play.")
Logger.info("MediaPlayer: Finished on_enter method.")
def log_event(self, file_name, event):
# Log the start or stop event of a media file and clean up old logs.
# Get the current timestamp
timestamp = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
log_message = f"{timestamp} - {event}: {file_name}\n" # Format the log message
"""Log the start or stop event of a media file."""
Logger.info("MediaPlayer: Starting log_event function.")
try:
# Get the current timestamp
timestamp = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
log_message = f"{timestamp} - {event}: {file_name}\n" # Format the log message
# Write the log message to the log file
with open(self.log_file, 'a') as log:
log.write(log_message)
Logger.info(f"Logged event: {log_message.strip()}") # Log the event to the console
# Clean up logs older than 24 hours
self.cleanup_old_logs()
# Write the log message to the log file
with open(self.log_file, 'a') as log:
log.write(log_message)
Logger.info(f"MediaPlayer: Logged event: {log_message.strip()}")
except Exception as e:
Logger.error(f"MediaPlayer: Failed to log event: {e}")
Logger.info("MediaPlayer: Finished log_event function.")
def cleanup_old_logs(self):
# Delete log entries older than 24 hours.
"""Delete log entries older than 24 hours."""
Logger.info("MediaPlayer: Starting cleanup_old_logs function.")
try:
# Read all log entries
if os.path.exists(self.log_file):
@@ -181,18 +185,20 @@ class MediaPlayer(Screen):
if (now - log_time).total_seconds() <= 86400: # 24 hours in seconds
filtered_lines.append(line)
except (ValueError, IndexError):
# If the log entry is malformed, skip it
Logger.warning(f"Malformed log entry skipped: {line.strip()}")
# If the log entry is malformed, log the issue but do not raise warnings
Logger.info(f"MediaPlayer: Skipping malformed log entry: {line.strip()}")
# Write the filtered log entries back to the log file
with open(self.log_file, 'w') as log:
log.writelines(filtered_lines)
Logger.info("Old log entries cleaned up successfully.")
Logger.info("MediaPlayer: Old log entries cleaned up successfully.")
except Exception as e:
Logger.error(f"Failed to clean up old logs: {e}")
Logger.error(f"MediaPlayer: Failed to clean up old logs: {e}")
Logger.info("MediaPlayer: Finished cleanup_old_logs function.")
def play_media(self):
"""Play the current media in the playlist."""
Logger.info("MediaPlayer: Starting play_media method.")
if not self.playlist or not isinstance(self.playlist, list):
Logger.error("MediaPlayer: Playlist is invalid or empty. Cannot play media.")
return
@@ -206,16 +212,16 @@ class MediaPlayer(Screen):
base_dir = os.path.join(os.path.dirname(__file__), 'static', 'resurse')
file_path = os.path.join(base_dir, file_name) # Full path to the media file
Logger.info(f"Playing media: {file_path}")
Logger.info(f"MediaPlayer: Playing media: {file_path}")
# Check if the file exists
if not os.path.exists(file_path):
Logger.error(f"Media file not found: {file_path}")
Logger.error(f"MediaPlayer: Media file not found: {file_path}")
return
# Cancel any existing timers
if self.image_timer:
Logger.info("Canceling existing image timer.")
Logger.info("MediaPlayer: Canceling existing image timer.")
Clock.unschedule(self.image_timer)
# Log the start of the media
@@ -227,7 +233,8 @@ class MediaPlayer(Screen):
elif file_extension in ['.jpg', '.jpeg', '.png', '.gif']:
self.show_image(file_path, duration) # Show image
else:
Logger.error(f"Unsupported media type for file: {file_name}")
Logger.error(f"MediaPlayer: Unsupported media type for file: {file_name}")
Logger.info("MediaPlayer: Finished play_media method.")
def play_video(self, file_path):
"""Play a video file without a fade-in effect."""

View File

@@ -10,6 +10,7 @@ LOCAL_PLAYLIST_FILE = './static/local_playlist.json' # Path to the local playli
def load_config():
"""Load configuration from app_config.txt."""
Logger.info("python_functions: Starting load_config function.")
if os.path.exists(CONFIG_FILE):
try:
with open(CONFIG_FILE, 'r') as file:
@@ -21,6 +22,7 @@ def load_config():
else:
Logger.error(f"python_functions: Configuration file {CONFIG_FILE} not found.")
return {}
Logger.info("python_functions: Finished load_config function.")
# Load configuration and initialize variables
config_data = load_config()
@@ -33,12 +35,14 @@ Logger.info(f"python_functions: Configuration loaded: server={server}, host={hos
def load_local_playlist():
"""Load the playlist and version from local storage."""
Logger.info("python_functions: Starting load_local_playlist function.")
if os.path.exists(LOCAL_PLAYLIST_FILE):
try:
with open(LOCAL_PLAYLIST_FILE, 'r') as local_file:
local_playlist = json.load(local_file)
Logger.info(f"python_functions: Local playlist loaded: {local_playlist}")
if isinstance(local_playlist, dict) and 'playlist' in local_playlist and 'version' in local_playlist:
Logger.info("python_functions: Finished load_local_playlist function successfully.")
return local_playlist # Return the full playlist data
else:
Logger.error("python_functions: Invalid local playlist structure.")
@@ -49,9 +53,11 @@ def load_local_playlist():
else:
Logger.warning("python_functions: Local playlist file not found.")
return {'playlist': [], 'version': 0}
Logger.info("python_functions: Finished load_local_playlist function.")
def save_local_playlist(playlist):
"""Save the updated playlist locally."""
Logger.info("python_functions: Starting save_local_playlist function.")
if not playlist or 'playlist' not in playlist:
Logger.error("python_functions: Invalid playlist data. Cannot save local playlist.")
return
@@ -62,6 +68,7 @@ def save_local_playlist(playlist):
Logger.info("python_functions: Updated local playlist with server data.")
except IOError as e:
Logger.error(f"python_functions: Failed to save local playlist: {e}")
Logger.info("python_functions: Finished save_local_playlist function.")
def fetch_server_playlist():
"""Fetch the updated playlist from the server."""

View File

@@ -1 +1 @@
{"playlist": [{"file_name": "20250417_09h25m37s_grim.png", "url": "/home/pi/Desktop/signage-player/src/static/resurse/20250417_09h25m37s_grim.png", "duration": 20}], "version": 6}
{"playlist": [{"duration": 20, "file_name": "Ibex_450.jpg", "url": "http://digi-signage.moto-adv.com/media/Ibex_450.jpg"}, {"duration": 20, "file_name": "cropped-cropped-main-picture-scaled-1.jpeg", "url": "http://digi-signage.moto-adv.com/media/cropped-cropped-main-picture-scaled-1.jpeg"}], "version": 2}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 537 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 410 KiB