Corrected the path for the 'weckzeit_datei' variable in A72_alarm_getter.sh script. The original path was pointing to '/root/iobroker_scripts/generel/.weckzeiten.txt' and has been updated to the correct path '/root/iobroker_scripts/general/.weckzeiten.txt'.
This ensures that the script can accurately locate and utilize the 'weckzeit_datei' file, preventing potential issues related to the incorrect file path.
Modify the morning-alarm.sh script to enhance clarity and maintainability. The changes involve updating the path for the mpv command to use '/data/scripts/your-new-morning-alarm.ogg' instead of the previous path '/product/media/audio/alarms/your-new-morning-alarm.ogg'. This adjustment ensures consistency with other script paths and makes it easier to locate the alarm sound file.
Changes made:
- Update the path for the mpv command to '/data/scripts/your-new-morning-alarm.ogg'
This modification simplifies the script and aligns it with the path used in other related scripts, improving overall script coherence.
Adjust the SSH command in the wecker.sh script for better readability and functionality. Instead of 'cmd media_session volume --set 5 --stream 9', use the more descriptive 'cmd media_session volume scripts/--set 5 --stream 9'. Additionally, update the path for the mpv command to use '/data/scripts/your-new-morning-alarm.ogg'. This change ensures consistency and clarity in the script.
Changes made:
- Replace 'cmd media_session volume --set 5 --stream 9' with 'cmd media_session volume scripts/--set 5 --stream 9'
- Update the path for mpv command to '/data/scripts/your-new-morning-alarm.ogg'
- Enabled debugging mode to provide a more detailed log when needed.
- Modified the interval in the check_ip function to 5 seconds for better accuracy in IP retrieval attempts.
- Refactored the sleep_duration calculation to ensure it accurately reflects the intended duration between adjustments.
- Adjusted the loop in gradual adjustment to start from 1, ensuring the initial values are set correctly.
- Replaced multiple consecutive '&& sleep' statements with separate lines for improved readability.
- Simplified the error handling in check_ip and check_notification functions for clarity.
- Removed unnecessary '|| true' statements in error handling.
- Added echo statements to print the light status when it is off in check_external_light_status.
- Improved comments for better script understanding.
These changes enhance the script's execution, improve debugging capabilities, and make the code more readable and maintainable.
- Simplified calculation of brightness_step and colortemp_step for better readability.
- Corrected the calculation of reached final values for brightness and color temperature.
- Introduced sleep_duration variable for improved flexibility in sleep intervals.
- Adjusted the loop to start from 0 to correctly set the initial values.
- Added a comment to clarify the purpose of the loop and its iteration.
- Set the current_brightness and current_colortemp directly to the end values after the loop, ensuring they reach the intended final values.
- Moved the sleep_duration calculation inside the loop for consistency.
This refactoring enhances the script's clarity and ensures accurate calculation of brightness and color temperature steps during the gradual adjustment process. The changes also include improvements in sleep duration handling.
- Updated comments for better clarity and documentation
- Introduced a DEBUG variable to toggle debugging information
- Utilized set -e to stop the script on errors for better error handling
- Corrected the script flow to ensure proper execution of color changes
- Introduced a new ssh_command function for executing SSH commands
- Improved check_ip function for finding the IP address more reliably
- Added DEBUG checks to bypass certain functions for debugging purposes
- Fixed issues with sleep intervals during script execution
- Improved logging by adding echo statements for important steps
- Adjusted variable names for better readability
- Removed unnecessary comments and debug statements
- Added set -e for better error handling
- Introduced command-line option -d for enabling DEBUG mode
- Improved formatting and indentation for better code readability
- Updated comments for better clarity and documentation
- Introduced a DEBUG variable to toggle debugging information
- Utilized set -e to stop the script on errors for better error handling
- Corrected the script flow to ensure proper execution of color changes
- Introduced a new ssh_command function for executing SSH commands
- Improved check_ip function for finding the IP address more reliably
- Added DEBUG checks to bypass certain functions for debugging purposes
- Fixed issues with sleep intervals during script execution
- Improved logging by adding echo statements for important steps
- Adjusted variable names for better readability
- Removed unnecessary comments and debug statements
- Added set -e for better error handling
- Introduced command-line option -d for enabling DEBUG mode
- Improved formatting and indentation for better code readability
- Reordered the iobroker state set commands to set colortemp at the end for better consistency.
- Removed unnecessary ping test in the check_ip function.
- Cleaned up the check_notification function, removed unnecessary echo statements.
- Adjusted the sleep time in the check_notification function to 5 seconds.
- Updated comments and removed unnecessary comments for clarity.
- Minor formatting improvements for better readability.
- Added missing code in the color change loop, now it changes colors as intended. (hopefully)
- Removed redundant comments at the end of the script.
These changes enhance the script's clarity, remove unnecessary code, and ensure proper functionality.
- Entfernen des nicht benötigten Ping-Tests in der check_ip-Funktion.
- Kommentieren des Codes zum Löschen überholter 'at'-Jobs, da er derzeit auskommentiert ist (Muss ich mich ein anderes mal drum kümmern).
- Modified the IP resolution process to allow for multiple attempts with a specified interval.
- Added a retry mechanism to check the IP address multiple times before considering it unsuccessful.
- If the target IP cannot be found after the specified number of attempts, an error message is displayed.
- Updated the SSH command to run the alarm script in the background.
- Modified the IP resolution process to allow for multiple attempts with a specified interval.
- Added a retry mechanism to check the IP address multiple times before considering it unsuccessful.
- If the target IP cannot be found after the specified number of attempts, an error message is displayed.
- Updated the SSH command to run the alarm script in the background.
- Combined IP retrieval and ping test into a single function 'check_ip'.
- Improved error handling for better script robustness.
- Removed unnecessary commented-out code and added comments for clarity.
- Ensured consistency in indentation and formatting.
Author: Michael, Haider
Date: 22.12.2023
- Corrected the calculation of the variable 'lightsOn' to ensure the correct time is set for turning on lights.
- Refactored the script by combining the IP retrieval and ping test into a single function 'check_ip'.
- Improved error handling and added comments for better readability.
Author: Michael, Haider
Date: 22.12.2023
Modified delete_expired_at_jobs function to retain only the next 'at'-job and delete all upcoming jobs. This ensures that only the immediate 'at'-job remains scheduled.
- Geänderte Mac-Adresse für die Funktion check_ip.
- Verwende 'arp-scan' für die IP-Ermittlung.
- Verbesserte Ausgabe und Wartezeit in der Funktion check_notification.
- Start des Alarm-Scripts auf dem Handy mit protokollierter Ausgabe.
- Geänderte Mac-Adresse für Lisas iPhone in check_ip-Funktion.
- Verbesserte Ausgabe und Wartezeit in der check_notification-Funktion.
- Angepasste Schritte und Dauer für die Helligkeits- und Farbtemperaturanpassung.
- Start des Alarm-Scripts auf dem Handy ohne protokollierte Ausgabe.
- Änderung des Bluetooth-Ausschaltbefehls zu 'svc bluetooth disable'.
- Aktualisierung des Lautstärke-Erhöhungsbefehls.
- Verbesserte Ausgabe in der check_notification-Funktion.
- Entfernung des Timeout-Befehls bei der Überprüfung der Weckerbenachrichtigung.
- Hinzufügen von 'killall mpv' bei Beendigung des Weckers.
- Geänderte Mac-Adresse für Lisas iPhone in check_ip-Funktion.
- Verbesserte Ausgabe in der check_notification-Funktion.
- Angepasste Schritte und Dauer für die Helligkeits- und Farbtemperaturanpassung.
- Start des Alarm-Scripts auf dem Handy mit protokollierter Ausgabe.
- Adjusted the 'check_notification' function to execute the SSH command within a timeout.
- Modified the logging of wecker.sh start and end times for better monitoring.
Changes:
- Modified line 41 in wecker.sh to execute the SSH command within a timeout for 'check_notification' function
from:
output= [0] "Beenden" -> PendingIntent{cb58c43: PendingIntentRecord{9bf5dfe com.urbandroid.sleep startActivity (allowlist: 27215bc:+30s0ms/0/NOTIFICATION_SERVICE/NotificationManagerService)}}
to:
output=Timeout
- Added date and echo statements to log the start and end times in 'check_notification' function.
- Moved the 'ssh root@ '/data/scripts/morning-alarm.sh'' line to the end of the script to trigger the morning alarm.
Author: Michael Haider
Date: 17.12.2023
Adjusted the wecker.sh invocation in A72_alarm_getter.sh to redirect output to /root/wecker.log for better logging. Now, when scheduling a new alarm, the script will log the wecker.sh execution details to the log file.
Changes:
- Modified line 87 in A72_alarm_getter.sh to redirect wecker.sh output to /root/wecker.log
from:
echo "/root/iobroker_scripts/schlafzimmer/wecker.sh" | at ""
to:
echo "/root/iobroker_scripts/schlafzimmer/wecker.sh > /root/wecker.log" | at ""
Author: Michael Haider
Date: 17.12.2023
This script turns off Bluetooth, increases the media volume to 100%, and continuously checks if the alarm has been dismissed on the Android device. Additionally, it plays the morning alarm sound in an infinite loop until the alarm is dismissed.
- Script Name: morning-alarm.sh
- Features:
- Turn off Bluetooth
- Set media volume to 100%
- Play the morning alarm sound in an infinite loop
- Continuously check for alarm dismissal
Author: Michael Haider
Date: 17.12.2023
- Removed unnecessary variable interpolation in the 'echo' statement.
- Changed the path for 'atq' and 'atrm' commands to use the full path.
- Updated the 'ping' command to use the full path for better compatibility.
- Added comments and improved formatting for better script understanding.
In this commit, an echo statement is added to display the execution timestamp
in the A72_alarm_getter.sh script. The timestamp is printed with the command
'echo 'Ausgeführt um: ''.
Additionally, the script now contains a function called delete_expired_at_jobs
to check and delete expired 'at' jobs. The current time is obtained using the
'date' command and stored in the variable current_time.
1. Added a new function `check_external_light_status` to check if the light is turned off externally.
2. Modified the condition in the `check_notification` function to correctly check if the notification contains "[1]" and the specified strings.
3. Corrected the assignment statement inside the `while` loop. Changed `first_brightness_cmason.nvimhange=false` to `first_brightness_change=false`.