Time and Weather/Voice ID conflict

Setup Information

********** AllStarLink [ASL] Version Info **********

OS : Debian GNU/Linux 12 (bookworm)
OS Kernel : 6.12.47+rpt-rpi-v8

Asterisk : 22.4.1+asl3-3.5.5-1.deb12
ASL [app_rpt] : 3.5.5

Inquiry

I have set up a friends GMRS repeater to use ASL3 as the repeater controller. We are not utilizing the linking capability. I have KD5FMU’s Time and Weather script installed so the repeater announces time and weather at the top of the hour. We also have a custom voice id playing at the top of the hour as well. I want the Voice id to play first, followed by the time and weather. Ive tried going about that by having a cronjob call the script for the voice id first and then time and weather. I.E.

00 00-23 * * * /usr/local/sbin/wscy308.sh; (/usr/bin/nice -19 /usr/bin/perl /usr/local/sbin/saytime.pl 48813 64525 >/dev/null)

I have also tried calling the time and weather at the end of the voice id script. In both cases only the voice id will work and the time and weather shows weird errors about missing files. This is what the console looks like upon execution of the above cronjob.

What is extremely strange is that if I reverse the order and have time and weather play first, followed by the voice id everything works correctly. No issues at all. I cant figure out why it works in one order but not the order I need it to. DOes anyone have any ideas what is conflicting and causing this?

I was just playing around and tried the following in the crontab.

25 * * * * /usr/local/sbin/wscy308.sh; sleep 5; (/usr/bin/nice -19 /usr/bin/perl /usr/local/sbin/saytime.pl 48813 64525 >/dev/null>

adding the sleep in between seems to make everything work. So I suppose Ive sort of answered my own question. Why is this sleep required here though?

same reason you were told on the discord channel, you are trying to have asterisk process to much and it fails due to fact it hasn’t finished one task before you assign it another task.

I don’t use discord. If your referring to github, I don’t see where anyone said “you are trying to have asterisk process to much and it fails due to fact it hasn’t finished one task before you assign it another task.” I was told “Try the following script which will combine the two files and play them as one. That should resolve your issue.” I did exactly this after resolving a permissions issue and still had the same problem. Thus the post here. If I was supposed to extrapolate that to me forcing Asterisk to do too much at once. I unfortunately did not. Regardless its fixed now. Thanks for the assistance

The sleep command is the equivalent of a pause. The sleep command gives the first command time to complete before invoking the second command.