MyBB Community Forums

Full Version: Add a sound when new PM is received
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi, is possible to add a notification sound when new PM is received? I know that html5 can handle it, I know the code but where to add it? 

Is it possible with stock mybb or do I need to use ajax pm notification for exmaple?

Thank you very much for any help!

OK, I have installed and modified Ajax PM notification (MyBB 1.8). Now I need to add a code, where please?
Your HTML5 <audio> element, for instance:

<audio id="pmsound" autoplay>
	<source src="sound.ogg" type="audio/ogg">
	<source src="sound.mp3" type="audio/mpeg">
</audio>

autoplay so that it starts automatically

I assume that you're using Ajax PM Notification by querschlaeger.
Then try to add in the file ./pm.php, in the echo function, your <audio> element
I added <audio></audio> at the end of echo in pm.php

if(defined('AJAXPMNOTICE'))
{
	echo '<div style="position: fixed; right: 60px; top: 40px; width: 360px; z-index: 32765;">
<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px; opacity: 0.5;"></span>
<span style="background-color: #000000; border-right: 2px solid #ffffff; border-left: 2px solid #ffffff; display: block; height: 1px; margin: 0 3px; opacity: 0.5;"></span>
<span style="background-color: #000000; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 1px; margin: 0 2px; opacity: 0.5;"></span>
<span style="background-color: #000000; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 2px; margin: 0 1px; opacity: 0.5;"></span>
<div style="background-color: #000000; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; color: #ffffff; opacity: 0.5; padding: 0 5px; text-align: center;"><img src="images/ajaxpmnotice.png" alt="" style="float: left; margin-top: -30px;" />'.AJAXPMNOTICE.'</div>
<span style="background-color: #000000; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 2px; margin: 0 1px; opacity: 0.5;"></span>
<span style="background-color: #000000; border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 1px; margin: 0 2px; opacity: 0.5;"></span>
<span style="background-color: #000000; border-right: 2px solid #ffffff; border-left: 2px solid #ffffff; display: block; height: 1px; margin: 0 3px; opacity: 0.5;"></span>
<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px; opacity: 0.5;"></span>
</div>
<div style="position: fixed; right: 60px; top: 40px; width: 360px; z-index: 32766;">
<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px"></span>
<span style="border-right: 2px solid #ffffff; border-left: 2px solid #ffffff; display: block; height: 1px; margin: 0 3px;"></span>
<span style="border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 1px; margin: 0 2px;"></span>
<span style="border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 2px; margin: 0 1px;"></span>
<div style="border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; color: #ffffff; padding: 0 5px; text-align: center;"><img src="images/ajaxpmnotice.png" alt="" style="float: left; margin-top: -30px;" /><a href="'.$mybb->settings['bburl'].'/private.php" style="color: #ffffff; text-decoration: none;">'.AJAXPMNOTICE.'</a></div>
<span style="border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 2px; margin: 0 1px;"></span>
<span style="border-right: 1px solid #ffffff; border-left: 1px solid #ffffff; display: block; height: 1px; margin: 0 2px;"></span>
<span style="border-right: 2px solid #ffffff; border-left: 2px solid #ffffff; display: block; height: 1px; margin: 0 3px;"></span>
<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px;"></span>
</div>';
<audio id="pmsound" autoplay>
<source src="/pmnotification.mp3" type="audio/mpeg">
</audio>
}

OK, nevermind - I fixed it. Now I need last thing:
- how to play notification sound only one time? Now it plays every 10seconds
- is possible to add a X close button for this notification?
<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px;"></span>
</div>';
<audio id="pmsound" autoplay>
<source src="/pmnotification.mp3" type="audio/mpeg">
</audio>

It isn't in the echo function

Must be:

<span style="background-color: #ffffff; display: block; height: 1px; margin: 0 5px;"></span>
</div>
<audio id="pmsound" autoplay>
<source src="/pmnotification.mp3" type="audio/mpeg">
</audio>';

I recommend you to add also .ogg audio format