我为我们的办公室创建了一个PHP网页,它每分钟都会自动刷新,在一堆不同的数据库中查找新的更改。当发生更改时,我会以wav文件的形式向最终用户播放许多不同的通知。
例如,我会通知员工以下事件:
他们的上午休息时间
他们的午餐
他们的PM休息时间
当我们的知识库中发布新文章时
但是,最重要的是:我在同一个页面中有一个IFrame,IFrame每5秒刷新一次,在一个名为“override_request”的特殊表中查找更改。当有人点击一个请求覆盖的按钮时,一个声音将提醒一大群员工接受覆盖。声音将每5秒重复一次,直到有人接受覆盖。这可能听起来很烦人,但这是一个呼叫中心,每5秒钟就有人等待,而客户在打电话是至关重要的。
在早期版本的chrome中,无论你在哪个标签页或应用程序中,背景音频都会播放。在54.X版本左右,Chrome默认禁用背景音频,后来提供了一个名为(disable-gesture-requirement-for-media-playback)的标志。
在最新发布的Google Chrome 60.X以上版本中,他们删除了(disable-gesture-requirement-for-media-playback),并提供了另一个名为(Autoplay Policy)的标志。
首先,新的标记允许只有在切换标签页之前播放背景音频时才能播放背景音频。这不是问题所在,我创建了一个空白音频文件,在登录网站时加载,它解决了这个问题。
现在,问题来了:一旦新旗(自动播放策略)在首次登录时识别背景音频,它允许音频在后台播放,直到页面执行刷新!一旦页面自动刷新,它将重置允许后台音频的标志。Chrome将识别页面刷新而用户未被刷新的事实。t,因此它阻止来自该选项卡的任何进一步的背景音频,直到它被带回前景。
有没有人知道另一个标志或javascript,将允许页面刷新和保持后台音频通知活着?
1条答案
按热度按时间xt0899hw1#
我也遇到过类似的问题。我没有解决方案,但我的工作涉及到运行一个便携版的chrome 53.0.2767.0。它允许我在任何打开的标签页中播放背景音频,而不需要任何焦点。我想你也必须做类似的事情。