2016-02-16 93 views
-1

我的應用程序需要收集所有更新記錄的通知,並在用戶會話/瀏覽器關閉後立即發送更新記錄摘要短信。 (*我們的短信服務器爲基礎,這就是爲什麼我只需要插入接收消息到某個表)。ASP.Net MVC C#在會話超時/瀏覽器關閉時發送通知

我需要幫助創建一個概念,我將如何實現上述要求。

+0

https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API和http://www.asp.net/signalr/overview/getting-started/introduction-to-信號器 – Mohayemin

回答

0

至少有兩種方式,我能想到的是如何做到這一點:

  1. 由於Mohayemin建議 - 的WebSockets - 在ASP.NET中,你可以使用SignalR。這將允許您在客戶端和服務器之間建立雙向通道,並在關閉時通知它。這項技術的問題在於,如果用戶關閉窗口並在此之後打開另一個窗口,則可能由於第一次會話結束而發送SMS,但您無法對第二次會話的打開做出反應。不知道這是否困擾你。

  2. 隨着您從用戶那裏收到的每個請求(如果您希望閒置的用戶在您的頁面上打開瀏覽器作爲活動用戶,您可以每分鐘發送一次Ajax請求),您更新了數據庫中的時間戳,它將保存用戶上一次活動的價值。然後創建一個像cron一樣工作的後臺線程,因此它會在每5分鐘一次,並列出所有最近的活動超過您的限制(例如15分鐘)的用戶。如果你發現一些,發送短信並標記你已經處理了這個(避免雙重發送)。此解決方案解決了第一次關閉後提前重新打開會話的問題,因此它可能是您想要使用的那個。

+0

我喜歡你的第二個想法(^ _ ^)b – user3035024

+0

謝謝,如果你喜歡它,那麼你可以upvote它。如果它適合你,你可以接受它是一個正確的答案。 – Wapac

相關問題