The new Asterisk PBX system for some odd reason have an issue with MOH not working by default. Digging deeper I found out that there’s a mismatch in directory names where asterisk looks for these files.
It looks like the GUI portion of asterisk uploads files to /var/lib/asterisk/mohmp3 but config files set to look in /var/lib/asterisk/moh. the easiest fix is as below.
mv /var/lib/asterisk/mohmp3/*.* /var/lib/asterisk/moh/
rm -f /var/lib/asterisk/mohmp3
ln -s /var/lib/asterisk/moh /var/lib/asterisk/mohmp3
This will move all content on mohmp3 directory to moh, delete mohmp3 folder and then create a symlink named mohmp3 targeting moh. Now you don’t have to mess about with editing any config files.