You're right, my headache is making me fail...
Where does '/' come into this ?
That is called a forwardslash on Linux, while the '\' is called a backslash.
If you write a bash script, you can declare and set a variable with something like:Which you can print with:Code:
user_name="hortimech"Which should produce:Code:
echo "username = $user_name"But, if you change the code to:Code:
username = hortimechThat will produce:Code:
echo "$user_name = $user_name"and if you add the escape character '\' like this:Code:
hortimech = hortimechyou will get this:Code:
echo "\$user_name = $user_name"And writing all this, I realised what is happeningCode:
$user_name = hortimech![]()
You are sending the message to a function which uses printf to print it, printf works very similar to 'echo', so it gets "DATE - $user_name is hortimech" and tries to expand '$user_name", which, because it isn't set as a local variable, it does. I still do not see why this stops your script from working. This is mainly because I do not know just how the script is being called.
Thank you for digging into this! I tested and you're right about the output. What do you need to know? Do you mean how the script is ivoked by motionEye? I is added to the motion notifications section, exactly as action to run at the end of the motion:
Code:
/home/my_username/.config/motioneye-telegram/bin/motion-send.sh %$ %t[/usr/local/lib/python3.13/dist-packages/motioneye/scripts/relayevent.sh "/home/my_username/.config/motioneye/motioneye.conf" stop %t; /home/my_username/.config/motioneye-telegram/bin/motion-send.sh %$ %t][/code]
Notice I'm running motionEye as user and I moved the script folder into /home/my_username/.config
Statistics: Posted by Raspbop — Mon Jan 26, 2026 10:31 pm