के सभी ब्राउज़र उदाहरणों मैं एक आवेदन उपयोगकर्ता को सूचित करने के लिए जब वे एक नई सूचना प्राप्त की जरूरत है पर काम कर रहा हूँ करने के लिए पुश सूचनाएं। एप्लिकेशन Azure पर होस्ट किया जाएगा और .NET MVC 3 (शायद महत्वपूर्ण नहीं है, लेकिन FYI) होगा। मैं भीSignalR एकल प्रमाणित उपयोगकर्ता
सूचनाएं एक MSSQL डाटाबेस (2008) में बचाया और एक IsRead
क्षेत्र है कर रहे हैं। विभिन्न उपयोगकर्ता और सर्वर क्रियाओं से अधिसूचनाएं उत्पन्न होती हैं। उपयोगकर्ता वरीयताओं के आधार पर, कुछ नोटिफिकेशन IsRead == false
के साथ बनाए जाएंगे।
2 विभिन्न परिदृश्यों कि मुझे लगता है कि SignalR से निपटने में सही होगा, मैं सिर्फ एक छोटे से मार्गदर्शन की आवश्यकता:
- उपयोगकर्ता कई खिड़कियों साइट और एक नई अधिसूचना पंक्ति ब्राउज़ कर खुला जोड़ा जाता है, सौंपा है कि उपयोगकर्ता,
IsRead == true
- साथ करने के लिए मैं एक विशिष्ट js समारोह एक अधिसूचना प्रकट करने के लिए कहा जाता है करने के लिए सभी विशिष्ट उपयोगकर्ता के ब्राउज़र उदाहरणों चाहते हैं पॉप अप
- उपयोगकर्ता कई हवा है ओपन ओपन और अधिसूचना पॉप पर क्लिक करता है।
- मैं एक विशिष्ट js समारोह अधिसूचना पॉप अप को हटाने के लिए कहा जाता है करने के लिए सभी विशिष्ट उपयोगकर्ता के ब्राउज़र उदाहरणों चाहते हैं। (केवल विशिष्ट ब्राउज़र उदाहरण हैं कि क्लिक संभाला भी एक js समारोह निष्पादित करेंगे अधिसूचना विवरण दिखाने के लिए)
क्या मैं
पहले परिदृश्य के लिए कोशिश की है, मुझे लगता है कि एक ही कार्रवाई कि अधिसूचना का कारण बनता है डेटाबेस के लिए लिखा जा करने के लिए सभी उपयोगकर्ता के ब्राउज़र उदाहरणों को अधिसूचित करने की जिम्मेदारी होगी।
पॉपअप पर क्लिक करके दूसरा परिदृश्य इसी तरह होगा, एक सर्वर एंडपॉइंट अजाक्स के माध्यम से बुलाया जाएगा और वह एंडपॉइंट अधिसूचना को पढ़ने के लिए डीबी अपडेट करेगा, और फिर अन्य सभी उपयोगकर्ता के ब्राउज़र उदाहरणों को सूचित करेगा ।
अगर वहाँ ASP.NET के आधार पर SignalR ग्राहकों का ट्रैक रखने के लिए एक रास्ता है फॉर्म्स प्रमाणीकरण प्रयोक्ता नाम है, तो मुझे लगता है कि दोनों स्थितियों में समस्याओं को सुलझाने में काम करेंगे।
टी एल; डॉ
मेरा मुख्य समस्या मैं SignalR का उपयोग कर एक विशिष्ट उपयोगकर्ता के ब्राउज़र उदाहरणों के सभी संकेत करने के लिए पता नहीं कैसे है। मैं ASP.NET प्रपत्र प्रमाणीकरण उपयोगकर्ता नाम के आधार पर समूह बनाने के बारे में सोच रहा था। क्या यह काम करेगा? क्या सिग्नलआर में बनाया गया एक आसान तरीका है जो इसे संभालता है?
आपकी टिप्पणी के लिए धन्यवाद। मैं इसे आज़माउंगा और देख सकता हूं कि यह कैसे काम करता है! –
यह बहुत अच्छा काम किया! धन्यवाद :) –