在应用场景中,生成一个新的订单,并在后台提醒消息和播放音频(这里使用了轮询的简单实现):下面是附加的代码
1.在laravel-admin中找到index.blade.php文件并编辑它
{ {-音频通知-}}音频样式=' display: noneheight : 0 ' id=' BG-music ' preload=' auto ' src=' http :http://fjdx . sc . chinaz.com/Files/DownLoad/sound 1/201511/6571 . MP3 ' loop=' loop '/audio script函数LA(){ } LA . token=' { { csrf _ token()} } ';var get={ URL : '/admin/send notice ',dataType:'json ',success : function(RES){ console . log(RES);if(RES . code==200){ toastr . options . onclick=function(){ location . href='/admin/order ';//点击跳转页面};toastr . options . time out=120000;//保存2分钟to str . warning(RES . msg);//提示文本varaudio=document . getelementbyid(' BG-music ');//启用音频通知audio . play();setTimeout(function(){ audio . load();//1.5秒后关闭音频通知,1500);} },error:函数(RES){ console . log(RES);} };//这里的重点是Ajax定期访问服务器,持续获取数据。这里,每5秒请求一次。window.setInterval(函数(){$)。Ajax(get)},5000);/script2。请求路由控制器
/* * *轮询确定是否有新订单* * @返回void */public函数send notice(){//处理逻辑$ count=0;//获取结果$ getCount=session()-get(' count ');if($ count $ getCount){ session()-put(' count ',$ count);//save sessionreturn ['code'=200,' msg'='您有新订单,请及时处理'];}//如果不为真,保存最新值session()-put('count ',$ count);返回[' code '=201];}取得效果:
注意:
如果不能用谷歌浏览器播放提示音?
1.输入chrome :///flags/#自动播放-策略
2.查找自动播放策略
3.修改默认值
摘要
以上是边肖介绍的Laravel-admin消息提醒和播放音频功能的实现代码。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!如果你觉得这篇文章对你有帮助,请转载,请注明出处,谢谢!