[英]Show a System Tray notification or Desktop notification from the web application
我已經使用具有登錄功能的J2EE 6.0在Java中創建了一個Web應用程序。 當用戶登錄到應用程序時,計時器從59:59(分鍾:秒)開始計時,並一直減少直到3:00。 剩下3分鍾時,它將向用戶顯示一個彈出窗口 ,要求注銷或將他們的時間/會話再次延長至59:59。
我的問題是用戶是否正在做其他工作,例如在Outlook上瀏覽還是在新窗口/瀏覽器(Firefox等)中通過Internet進行其他瀏覽。 我如何通知用戶他的會話/時間即將到期。 該應用程序只能在Microsoft Windows Internet Explorer上運行。
我找到了這些用於顯示桌面通知的鏈接,但是不幸的是我的應用程序特定於僅在Internet Explorer上運行
因此,我無法使用桌面通知。
我以為我會創建一個Swing應用程序以在Windows系統托盤中顯示通知彈出窗口,提示“您的會話即將到期”。 但是我被困在它將如何在客戶端計算機上運行。 我聽說過Java Web Start , AjaxSwing等。使用Java Web Start軟件,用戶可以通過單擊網頁中的鏈接來啟動Java應用程序。 它需要客戶端系統中的JRE。 Java Web Start將要求用戶下載Java插件 ,該插件將下載令人討厭的JRE(如果在客戶端系統中找不到)。
AjaxSwing會將Swing應用程序轉換為HTML,Javascript和CSS,所以我不確定它將如何從瀏覽器中顯示出來,以在系統托盤中顯示彈出窗口。 我認為仍然會堅持使用瀏覽器。
我搜索了閃爍的選項卡選項,但它沒有閃爍Windows任務欄中的選項卡。
我在Windows的Growl上讀過書,但不確定是否對我有幫助。 也請告訴我。 請建議我如何通知用戶他的會話即將到期。 我已經知道我可以通過電子郵件通知。 請提供創新的想法和解決方案,幫助我進一步發展。
我遇到了同樣的問題,並使用了jQuery通知插件作為解決方法,您也可以在插件回調中使用“ onShow”播放聲音或確保用戶得到通知的任何方法
嘗試將其用於Google Chrome瀏覽器:
function notifyBrowser(title, desc, url) {
if (Notification.permission !== "granted") {
Notification.requestPermission();
} else {
var notification = new Notification(title, {
icon: 'http://YourWebsite.com/logo.png',
body: desc,
});
/* Remove the notification from Notification Center when clicked.*/
notification.onclick = function() {
window.open(url);
};
/* Callback function when the notification is closed. */
notification.onclose = function() {
console.log('Notification closed');
};
}
}
因此,僅調用該函數:
notifyBrowser('Pay attention', 'You have new notifications', 'www.stackoverflow.com');
字體: http : //www.9lessons.info/2015/11/display-browser-notifications-from-web.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.