Google Chromeαφού η έκδοση 42 υποστηρίζει το Push API μέσω Διακομιστές GoogleΧρήση GCM Πιθανότατα έχετε ήδη δει αυτές τις προτροπές για πρόσβαση σε ειδοποιήσεις. Εάν επιτρέψετε την πρόσβαση, ο ιστότοπος θα μπορεί να σας στέλνει ειδοποιήσεις. Αυτό το χαρακτηριστικό είναι ολοκαίνουργιο και λίγοι άνθρωποι το γνωρίζουν, ωστόσο, κατά τη γνώμη μου, έχει ήδη μεγάλα μειονεκτήματα:
  • Κάθε ιστότοπος ζητά δικαιώματα στο πρόγραμμα περιήγησης, είναι δύσκολο να ελέγξετε πόσες πηγές μπορούν να σας στείλουν ειδοποιήσεις τώρα, η καθεμία έχει τη δική της διαδικασία παρασκηνίου που ξυπνά ξεχωριστά, δεν υπάρχει ιστορικό λαμβανόμενων ειδοποιήσεων ή φιλτραρίσματος, δεν υπάρχει συγχρονισμός των συνδρομών μεταξύ συσκευές
  • Οι ιστότοποι πρέπει να στέλνουν ειδοποιήσεις απευθείας σε συσκευές, να παρακολουθούν τη συνάφεια της βάσης δεδομένων συσκευών, να παρακολουθούν τη συσκευή κάθε χρήστη ξεχωριστά
  • Αυτή η δυνατότητα λειτουργεί μόνο σε ιστότοπους με SSL.

Μια ενδιάμεση υπηρεσία που φροντίζει όλες αυτές τις λειτουργίες μπορεί να λύσει τα προβλήματα που προκύπτουν.

Λίγη θεωρία

Μπορείτε να βρείτε το κύριο άρθρο στο οποίο έφτιαξα αυτή τη λειτουργία
Εν ολίγοις, το πρόγραμμα περιήγησης δημιουργεί ένα Service-Worker (διαθέσιμο από το Chrome 40), αυτό είναι μια διαδικασία παρασκηνίου στο JS. Δεν λειτουργεί συνεχώς στο παρασκήνιο, αλλά ανταποκρίνεται σε διάφορα αιτήματα από το εξωτερικό. Για παράδειγμα, όταν έρχεται ένα μήνυμα push. Φυσικά, δεν απαιτεί ανοιχτή σελίδα. Επιπλέον, λειτουργεί ακόμα κι αν το πρόγραμμα περιήγησης είναι κλειστό (καλά, όχι εντελώς κλειστό, αλλά στο παρασκήνιο.)

Όταν φτάσει ένα μήνυμα Push, το πρόγραμμα περιήγησης εμφανίζει ειδοποιήσεις. Αυτό είναι όλο. Αυτό σας επιτρέπει να εφαρμόσετε πλήρως τη λήψη ειδοποιήσεων push χωρίς εφαρμογές, επιπλέον, λειτουργεί σε android στο mobile chrome! Από τις προφανείς ελλείψεις μπορούν να εντοπιστούν σε αυτή τη στιγμήτο γεγονός ότι δεν είναι δυνατή η αποστολή ωφέλιμου φορτίου σε μήνυμα push, π.χ. το ίδιο το μήνυμα. Η Google το αποδίδει σε ζητήματα ασφαλείας και αναφέρει ότι στο Chrome 44 το πρόβλημα έχει επιλυθεί πλήρως και το πρόγραμμα περιήγησης θα μπορεί να λαμβάνει δεδομένα απευθείας. Επίσης, σύμφωνα με ορισμένες αναφορές, εάν το πρόγραμμα περιήγησης ήταν κλειστό, τότε το αίτημα δεν θα φτάσει σε αυτό. Αυτό το πρόβλημα επιλύεται με την απόρριψη όλων των ειδοποιήσεων που δεν επιβεβαιώθηκαν κατά τη λήψη οποιουδήποτε επόμενου μηνύματος.

Πώς το PushAll λύνει το πρόβλημα

Μπορείτε να στείλετε ειδοποιήσεις μέσω του Push API ακόμα και χωρίς καθόλου ιστότοπο. Δηλαδή, μπορείτε να δημιουργήσετε ένα κανάλι και να στείλετε ειδοποιήσεις χειροκίνητα, είτε από τον διακομιστή μέσω curl, είτε συνδέοντας μια ροή RSS. Σε αυτήν την περίπτωση, ο χρήστης επιτρέπει την πρόσβαση για αποστολή στον ιστότοπο PushAll.
Ταυτόχρονα, ο προγραμματιστής δεν χρειάζεται να σκεφτεί σε ποιον στέλνει την ειδοποίηση. Σε μια εφαρμογή Android, σε ένα πρόσθετο chrome ή απευθείας μέσω του Push API. Μπορεί να στείλει ένα μήνυμα σε μια ντουζίνα χρήστες, αλλά στην πραγματικότητα θα πάει σε κάθε μία από τις 2-3 συσκευές του κάθε χρήστη. Στο μέλλον, αυτό θα περιλαμβάνει άλλα προγράμματα περιήγησης και άλλες πλατφόρμες όπως το iOS και το WP.

Δοκιμές

Η συνάρτηση γράφτηκε μόλις χθες και επομένως απαιτείται δοκιμή.

Για να δοκιμάσετε τις ειδοποιήσεις μέσω του Push API, πρέπει να μεταβείτε στον ιστότοπο PushAll.ru και να συνδεθείτε χρησιμοποιώντας τον λογαριασμό σας Google.

Αμέσως μετά τη σύνδεση, θα μεταφερθείτε στον κατάλογο καναλιών. Υπάρχει μια εναλλαγή επάνω δεξιά που ενεργοποιεί τη νέα δυνατότητα.

Μόλις ενεργοποιηθεί, το Chrome θα σας ζητήσει να αποκτήσετε πρόσβαση στις ειδοποιήσεις. Μετά από αυτό, πρέπει να μεταβείτε στην ενότητα προφίλ και να κάνετε "ping" στη συσκευή

Γράψτε μου σε ένα προσωπικό ή στα σχόλια πώς λειτουργούν οι ειδοποιήσεις. Μερικοί άνθρωποι είχαν προβλήματα με τις ειδοποιήσεις και θα ήθελα να διορθώσω την κατάσταση. Ελέγξτε επίσης τις ειδοποιήσεις στο δικό σας Android smartphone. Καθώς δοκιμάζετε, νομίζω ότι θα βρείτε μερικά ενδιαφέροντα κανάλια στον κατάλογο.

Άμεσα, για να μην υπάρχουν ερωτήσεις: δεν είναι απαραίτητο να λαμβάνετε όλες τις ειδοποιήσεις από τα κανάλια. Εγγραφή στο κανάλι, το άνοιξε ξανά - άνοιξε το φίλτρο, μπήκα λέξεις-κλειδιά. Για τα θέματα που είναι σημαντικά για εσάς, πρώτα απ 'όλα, οι ειδοποιήσεις θα αποστέλλονται αμέσως σε συσκευές και μπορείτε να διαβάσετε τα υπόλοιπα από τους ίδιους τους ιστότοπους (αυτό ισχύει, για παράδειγμα, για το κανάλι SoHabr ή τα κανάλια τηλεοπτικών σειρών)

προοπτικές

Αυτή η δυνατότητα σάς επιτρέπει να προσεγγίσετε ένα μεγάλο κοινό χρηστών. Πολλοί άνθρωποι δυσκολεύονται να εγκαταστήσουν μια εφαρμογή ή ένα πρόσθετο, αλλά το πάτημα μερικών κουμπιών δεν είναι δύσκολο.
Στο μέλλον, θα γράψω ένα ειδικό widget για ιστότοπους. Θα μπορείτε να κάνετε 4 πράγματα ταυτόχρονα με ένα κλικ.
  • Κανω ΕΓΓΡΑΦΗ.
  • Να ερθει μεσα
  • Εγγραφείτε
  • Ενεργοποιήστε τις ειδοποιήσεις Push API στο πρόγραμμα περιήγησης.
Δηλαδή, ο χρήστης θα κάνει κλικ στο κουμπί, θα του ζητηθεί πρόσβαση σε έναν λογαριασμό Google, θα του ζητηθεί πρόσβαση σε ειδοποιήσεις - αυτό είναι όλο. Ο χρήστης είναι έτοιμος να λάβει ειδοποιήσεις. Επιπλέον, εάν ο χρήστης στη συνέχεια κατεβάσει την εφαρμογή για οποιαδήποτε άλλη πλατφόρμα, θα συνεχίσει να λαμβάνει ειδοποιήσεις από τον ιστότοπό σας, μέχρι να καταργήσει την εγγραφή του από αυτές στο ΠΡΟΣΩΠΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ. Ταυτόχρονα, η υπηρεσία μου σας επιτρέπει να στείλετε ακόμη και σε κινητές συσκευέςειδοποιήσεις χωρίς εγκατάσταση της εφαρμογής!

Push - ειδοποίηση, τι είναι; Αυτός είναι ένας τύπος ειδοποίησης που εμφανίζεται, μετά την είσοδο σε συγκεκριμένους ιστότοπους, στην επάνω δεξιά ή αριστερή γωνία του παραθύρου του προγράμματος περιήγησης, προσφέροντας εγγραφή σε ειδήσεις, ενημερώσεις ιστότοπου ή άλλες αλλαγές στην πύλη που επισκεφτήκατε. Σε γενικές γραμμές, για να το θέσω απλά, αυτό είναι ένα αναδυόμενο παράθυρο με μια κλήση για εγγραφή στον ιστότοπο.

Σίγουρα δεν έχω τίποτα ενάντια στις συνδρομές κάθε είδους. Για παράδειγμα, αν σας αρέσει και είναι για εσάς χρήσιμο υλικό, που δημοσιεύεται στον ιστότοπό μας, μπορείτε εύκολα να εγγραφείτε σε εμάς χρησιμοποιώντας το ίδιο RSS ή να χρησιμοποιήσετε τη φόρμα συνδρομής αλληλογραφίας και επίσης να εγγραφείτε στο Ομάδα VKή ακολουθήστε μας στο YouTube. Και το πιο σημαντικό, μπορείτε να το κάνετε με δική σας πρωτοβουλία, και όχι επειδή ένα παράθυρο με τη λέξη " Εγγραφείτε, εγγραφείτε, εγγραφείτε».

Η δημοτικότητα τέτοιων ειδοποιήσεων push μόλις αρχίζει να αυξάνεται, με αποτέλεσμα όλο και περισσότεροι ιστότοποι να προσπαθούν να εισαγάγουν παρόμοια από μόνοι τους. Είμαι βέβαιος ότι όλοι οι ειδησεογραφικοί ιστότοποι έχουν αυτή τη δυνατότητα ενεργοποιημένη για μεγάλο χρονικό διάστημα.

Το πιο εκπληκτικό είναι ότι η μόδα για ειδοποιήσεις αυτού του είδους μόλις άρχισε να κερδίζει δυναμική και έχει ήδη κουραστεί αρκετά από όλους. Πολλοί τα συγκρίνουν με το ίδιο παρεμβατική διαφήμισηκαι αναδυόμενα παράθυρα που παρεμποδίζουν και ενοχλούν.

Έτσι, σε αυτό το σεμινάριο, θα σας δείξω πώς να απενεργοποιήσετε την ειδοποίηση συνδρομής στις ρυθμίσεις του προγράμματος περιήγησής σας και να απαλλαγείτε από αυτό το ενοχλητικό αναδυόμενο παράθυρο για πάντα.

Απενεργοποίηση ειδοποιήσεων push στο Mozilla Firefox

Κατ 'αρχήν, η απενεργοποίηση της εμφάνισης ειδοποιήσεων, σχεδόν σε όλα τα προγράμματα περιήγησης, συμβαίνει απευθείας στις ρυθμίσεις. Ωστόσο, ο Firefox αποδείχθηκε εξαίρεση, ναι, στις ρυθμίσεις μπορείτε να απενεργοποιήσετε την ειδοποίηση επιλέγοντας το πλαίσιο ελέγχου "Μην ενοχλείτε" στις ρυθμίσεις περιεχομένου, αλλά θα αποκλειστούν μόνο μέχρι να επανεκκινήσετε το πρόγραμμα περιήγησης.

Μόλις ανοίξετε ξανά τον Firefox, η ένδειξη που έχετε ορίσει προηγουμένως καταργείται αυτόματα και όλα ξεκινούν από την αρχή. Φυσικά, αυτή η επιλογή δεν ταιριάζει σε όλους, επομένως για τέτοιους χρήστες που θέλουν να απενεργοποιήσουν μια για πάντα τις ειδοποιήσεις push, θα πρέπει να κάνετε τα εξής:

Η τιμή που έχετε ορίσει σε false σημαίνει ότι δεν θα σας ενοχλεί πλέον η συνδρομή για να λαμβάνετε ειδοποιήσεις push.

Αποκλεισμός ειδοποιήσεων push στο Google Chrome

Στο Chrome, η απενεργοποίηση των ειδοποιήσεων είναι πολύ πιο εύκολη, επειδή μπορείτε να το κάνετε στις συνήθεις ρυθμίσεις και δεν χρειάζεται να μεταβείτε στη διαμόρφωση του προγράμματος περιήγησης.


Εάν είναι απαραίτητο, κάνουμε επανεκκίνηση του προγράμματος περιήγησης και χαιρόμαστε που δεν υπάρχουν συνεχώς αναδυόμενες προσφορές για να λαμβάνουμε ειδοποιήσεις από τον ιστότοπο που επισκεφτήκατε.

Απαλλαγή από ειδοποιήσεις push στο πρόγραμμα περιήγησης Yandex

Το επόμενο δεν θα είναι λιγότερο διάσημο πρόγραμμα περιήγησης Yandex. Σίγουρα πολλοί άνθρωποι γνωρίζουν ότι για τη δημιουργία αυτού του προγράμματος περιήγησης χρησιμοποιήθηκε η ίδια μηχανή όπως στο Chrome, επομένως ακόμη και οι ρυθμίσεις είναι σχεδόν ίδιες.


Για παράδειγμα, οι ρυθμίσεις μου αποθηκεύτηκαν για κάποιο λόγο μόνο από τη δεύτερη φορά, δεν ξέρω με τι συνδέεται, ίσως αντί για το κουμπί "Τέλος" έκανα κλικ στο σταυρό και μόλις έκλεισα το παράθυρο, ως αποτέλεσμα που δεν αποθηκεύτηκαν οι ρυθμίσεις. Λοιπόν, το κύριο πράγμα είναι ότι όλα λειτούργησαν τη δεύτερη φορά και το αίτημα για εγγραφή για ειδοποιήσεις εξαφανίστηκε.

Είναι δυνατό να απενεργοποιήσετε τις ειδοποιήσεις push στο Opera;

Και φυσικά δεν θα παρακάμψουμε την όπερα. Γνωρίζω ότι ένας πολύ μεγάλος αριθμός χρηστών εξακολουθεί να προτιμά να το χρησιμοποιεί. Επομένως, εδώ είναι μια οδηγία για την απενεργοποίηση των ειδοποιήσεων push για την Opera.


Γενικά, οι ρυθμίσεις δεν είναι καν πολύ διαφορετικές από τα προηγούμενα προγράμματα περιήγησης, αλλά κατ 'αρχήν αυτό δεν είναι σημαντικό, το κύριο πράγμα είναι ότι τώρα τα αιτήματα για λήψη ειδοποιήσεων από τον ιστότοπο δεν θα μας ενοχλούν πλέον.

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push (push) in Το πρόγραμμα περιήγησης Yandex, Chrome, Firefox και Opera

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push - αυτή η ερώτηση ανησυχεί ορισμένους χρήστες που βλέπουν ειδοποιήσεις στο πρόγραμμα περιήγησης αφού συνδεθούν σε πολλούς ιστότοπους στο Διαδίκτυο. Η τεχνολογία Push έχει σχεδιαστεί για τη διανομή πληροφοριών στο Διαδίκτυο από τον πάροχο, σε αυτήν την περίπτωση, τον ιστότοπο, στον χρήστη αυτού του ιστότοπου.

Απαιτούνται ειδοποιήσεις push για τον ιστότοπο για την ενημέρωση των επισκεπτών του ιστότοπου για τα νέα, κυρίως για την κυκλοφορία νέων άρθρων. Σε αυτή την περίπτωση, ο επισκέπτης λαμβάνει έγκαιρα ειδοποιήσεις από τον ιστότοπο και μπορεί να διαβάσει άμεσα τις ειδήσεις.

Οι ειδοποιήσεις για λογαριασμό του ιστότοπου αποστέλλονται χρησιμοποιώντας μια υπηρεσία τρίτου μέρους που οργανώνει την παράδοση ειδοποιήσεων στους υπολογιστές των χρηστών.

Τι είναι μια ειδοποίηση push σε έναν υπολογιστή; Εάν ο επισκέπτης του ιστότοπου συμφωνεί να λαμβάνει επικοινωνίες από αυτόν τον πόρο, τότε κατά καιρούς εμφανίζονται ειδοποιήσεις για τα νέα αυτού του ιστότοπου στην επιφάνεια εργασίας του χρήστη.

Πώς λειτουργούν οι ειδοποιήσεις push

Όταν επισκέπτεται έναν ιστότοπο που έχει ενεργοποιημένη τη λειτουργία αποστολής ειδοποιήσεων, ο επισκέπτης βλέπει κάθε φορά ένα αίτημα για να επιτρέπεται η εμφάνιση ειδοποιήσεων, στο οποίο προτείνεται να κάνει κλικ στα κουμπιά "Allow" ή "Block". Τα ονόματα των κουμπιών μπορεί να είναι διαφορετικά, αλλά το νόημα είναι το ίδιο παντού.

Ο επισκέπτης του ιστότοπου μπορεί να αγνοήσει αυτό το αναδυόμενο παράθυρο επειδή το παράθυρο αιτήματος ειδοποίησης push είναι μικρό και δεν παρεμποδίζει την περιήγηση στον ιστότοπο.

Η εμφάνιση τέτοιων παραθύρων είναι διαφορετική, ανάλογα με την υπηρεσία που στέλνει ειδοποιήσεις από αυτόν τον ιστότοπο.

Κάνοντας κλικ στο κουμπί "Να επιτρέπεται", συμφωνείτε να λαμβάνετε μηνύματα push στον υπολογιστή σας.

Στην περιοχή ειδοποιήσεων, στην επιφάνεια εργασίας του υπολογιστή του χρήστη, θα εμφανίζονται ειδοποιήσεις σχετικά με νέα σε αυτόν τον ιστότοπο. Συνήθως, αυτό είναι ένα μήνυμα σχετικά με την κυκλοφορία ενός νέου άρθρου. Ορισμένοι ιστότοποι κάνουν κατάχρηση της δυνατότητας αποστολής ειδοποιήσεων, ειδοποιήσεων για τα πάντα στη σειρά, μερικές φορές στέλνοντας περιττές πληροφορίες.

Αφού λάβει μια ειδοποίηση push, ο χρήστης μπορεί να μεταβεί στον ιστότοπο για να διαβάσει το άρθρο ή να κλείσει την ειδοποίηση αγνοώντας αυτό το μήνυμα. Τέτοιες ειδοποιήσεις από ιστότοπους πρακτικά δεν παρεμβαίνουν στην εργασία στον υπολογιστή, καθώς εμφανίζονται στην περιοχή ειδοποιήσεων και κλείνουν μόνες τους μετά από σύντομο χρονικό διάστημα.

Για να μην εμφανίζεται πλέον το αίτημα για άδεια αποστολής ειδοποιήσεων από αυτόν τον ιστότοπο όταν επισκέπτεστε ξανά αυτόν τον ιστότοπο, κάντε κλικ στο κουμπί "Αποκλεισμός".

Εάν λαμβάνετε ήδη μηνύματα push από έναν συγκεκριμένο ιστότοπο, τότε ο χρήστης μπορεί να απενεργοποιήσει μόνος του τις ειδοποιήσεις push στο πρόγραμμα περιήγησής του, στο οποίο έχει επιτρέψει τη λήψη ειδοποιήσεων στον υπολογιστή του.

Πώς να αφαιρέσετε τις ειδοποιήσεις push μετά τη λήψη μιας ειδοποίησης

Σε πολλές ειδοποιήσεις, ανάλογα με τις ρυθμίσεις της υπηρεσίας που στέλνει ειδοποιήσεις, μπορείτε να απενεργοποιήσετε τις ειδοποιήσεις push απευθείας στο παράθυρο του ανοιχτού μηνύματος.

Για να το κάνετε αυτό, κάντε κλικ στο εικονίδιο ρυθμίσεων (γρανάζι) και, στη συνέχεια, επιλέξτε "Απενεργοποίηση ειδοποιήσεων από τον ιστότοπο".

Μετά από αυτό, οι ειδοποιήσεις από αυτόν τον ιστότοπο δεν θα εμφανίζονται πλέον στον υπολογιστή σας.

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push στο Google Chrome

Εισαγάγετε τις ρυθμίσεις του προγράμματος περιήγησης Google Chrome, μετακινηθείτε προς τα κάτω στον τροχό του ποντικιού, κάντε κλικ στον σύνδεσμο "Για προχωρημένους".

Στην ενότητα "Απόρρητο και ασφάλεια", κάντε κλικ στο κουμπί "Ρυθμίσεις τοποθεσίας". Στο παράθυρο "Ρυθμίσεις ιστότοπου" που ανοίγει, βρείτε την ενότητα "Ειδοποιήσεις".

Εδώ μπορείτε να ρυθμίσετε τη λήψη ειδοποιήσεων από ιστότοπους. Από προεπιλογή, είναι επιλεγμένο το "Ζητήστε άδεια πριν από την αποστολή (συνιστάται)".

Για να αφαιρέσετε τις ειδοποιήσεις push in Google πρόγραμμα περιήγησης Chrome, ενεργοποιήστε το στοιχείο "Να μην εμφανίζονται ειδοποιήσεις σε ιστότοπους".

Για να αποτρέψετε τη λήψη ειδοποιήσεων από έναν συγκεκριμένο ιστότοπο, κάντε κλικ στο κουμπί "Προσθήκη", το οποίο βρίσκεται απέναντι από την παράμετρο "Αποκλεισμός".

Στο παράθυρο "Προσθήκη τοποθεσίας", εισαγάγετε τη διεύθυνση τοποθεσίας και, στη συνέχεια, κάντε κλικ στο κουμπί "Προσθήκη".

Για να διαμορφώσετε τη λήψη μηνυμάτων push, κάντε κλικ στο κουμπί «Προσθήκη» που βρίσκεται απέναντι από την επιλογή «Να επιτρέπεται».

Στο παράθυρο που ανοίγει, προσθέστε τον ιστότοπο που θέλετε στη λίστα των τοποθεσιών από τους οποίους επιτρέπεται να λαμβάνετε ειδοποιήσεις στο πρόγραμμα περιήγησης Google Chrome.

Πώς να απενεργοποιήσετε τα μηνύματα push στο Mozilla Firefox (1 τρόπος)

Εισαγάγετε τις ρυθμίσεις του προγράμματος περιήγησης Mozilla Firefox, ανοίξτε την ενότητα "Απόρρητο και ασφάλεια". Στην επιλογή "Άδειες", μεταβείτε στην επιλογή "Ειδοποιήσεις".

Επιλέξτε το πλαίσιο δίπλα στην επιλογή Απενεργοποίηση ειδοποιήσεων έως ότου επανεκκινηθεί ο Firefox. Μετά από αυτό, οι ειδοποιήσεις Push δεν θα εμφανίζονται μέχρι να απενεργοποιηθεί το πρόγραμμα περιήγησης Mozilla Firefox.

Για να διαχειριστείτε τις ειδοποιήσεις, κάντε κλικ στο κουμπί "Ρυθμίσεις...". Στο παράθυρο "Επιλογές - Άδεια εμφάνισης ειδοποιήσεων" υπάρχει μια λίστα ιστότοπων, οι ειδοποιήσεις από τις οποίες επιτρέπονται ή αποκλείονται.

Εάν ένας ιστότοπος έχει την κατάσταση "Αποκλεισμός" δίπλα του, τότε οι ειδοποιήσεις από αυτόν τον ιστότοπο δεν εμφανίζονται στον υπολογιστή σας, επειδή έχετε αποκλείσει προηγουμένως ένα αίτημα για αποστολή ειδοποιήσεων από αυτόν τον ιστότοπο.

Εάν η κατάσταση "Allow" βρίσκεται δίπλα στη διεύθυνση του ιστότοπου, τότε οι ειδοποιήσεις από αυτόν τον ιστότοπο θα εμφανίζονται στον υπολογιστή σας.

Μπορείτε να αφαιρέσετε οποιονδήποτε ιστότοπο από τη λίστα χρησιμοποιώντας το κουμπί Κατάργηση ιστότοπου ή να αφαιρέσετε όλους τους ιστότοπους από τη λίστα κάνοντας κλικ στο κουμπί Κατάργηση όλων των τοποθεσιών.

Μετά από αυτό, οι νέες ειδοποιήσεις από τον απομακρυσμένο ιστότοπο δεν θα εμφανίζονται στην επιφάνεια εργασίας του υπολογιστή σας. Όταν επισκεφθείτε ξανά αυτόν τον ιστότοπο, απορρίψτε το αίτημα για λήψη ειδοποιήσεων.

Για να αποκλείσετε τη λήψη νέων μηνυμάτων από ιστότοπους διαφορετικούς από αυτούς που αναφέρονται σε αυτήν τη λίστα, επιλέξτε το πλαίσιο ελέγχου "Αποκλεισμός νέων αιτημάτων για αποστολή ειδοποιήσεων".

Για να ολοκληρώσετε τη διαμόρφωση της σειράς λήψης των ειδοποιήσεων, κάντε κλικ στο κουμπί "Αποθήκευση αλλαγών".

Πώς να αφαιρέσετε τις ειδοποιήσεις push στο Mozilla Firefox (2 τρόποι)

Για να απενεργοποιήσετε πλήρως τις ειδοποιήσεις Το πρόγραμμα περιήγησης Mozilla Firefox, πρέπει να εισαγάγετε τις κρυφές ρυθμίσεις του προγράμματος περιήγησης.

Πληκτρολογήστε στη γραμμή διευθύνσεων την έκφραση: "about:config" (χωρίς εισαγωγικά). Στο παράθυρο που ανοίγει, κάντε κλικ στο κουμπί "Αποδέχομαι τον κίνδυνο!".

Στο νέο παράθυρο, εισάγετε στο πεδίο "Αναζήτηση" την έκφραση: "dom.webnotifications.enabled" (χωρίς εισαγωγικά) και, στη συνέχεια, πατήστε το πλήκτρο "Enter".

Αυτή η ρύθμιση είναι από προεπιλογή "true". Επισημάνετε τη γραμμή, κάντε κλικ κάντε δεξί κλικποντίκι, επιλέξτε "Εναλλαγή" από το μενού περιβάλλοντος. Η τιμή της παραμέτρου θα αλλάξει σε "false".

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push στο Yandex.Browser

Εισαγάγετε τις ρυθμίσεις του προγράμματος περιήγησης Yandex, μεταβείτε στην καρτέλα "Ιστότοποι".

Στην ενότητα "Ιστότοποι", μεταβείτε στην επιλογή "Αιτήματα αποστολής ειδοποιήσεων". Υπάρχουν τρεις επιλογές δράσης εδώ:

  • Εμφάνιση αιτημάτων αποστολής (συνιστάται).
  • Να μην εμφανίζονται αιτήματα αποστολής.
  • Αυτόματη εγγραφή σε ειδοποιήσεις.

Επιλέξτε την επιθυμητή επιλογή που ρυθμίζει τη διαδικασία λήψης μηνυμάτων push. Για να απενεργοποιήσετε πλήρως όλες τις ειδοποιήσεις push στο Yandex Browser, επιλέξτε την επιλογή "Να μην εμφανίζονται αιτήματα αποστολής".

Εάν πρέπει να διαμορφώσετε τη λήψη μεμονωμένων ειδοποιήσεων, κάντε κλικ στον σύνδεσμο "Σε άλλους ιστότοπους". Στη συνέχεια, στο παράθυρο "Αποστολή ειδοποιήσεων", επιλέξτε ποιες ειδοποιήσεις push θέλετε να αποκλείσετε και ποιες να επιτρέψετε.

Ανοίξτε την καρτέλα "Επιτρέπεται" ή "Απαγορευμένο", χρησιμοποιώντας το κουμπί "Προσθήκη", προσθέστε έναν σύνδεσμο προς τον ιστότοπο στην κατάλληλη ενότητα.

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push στο Opera

Μπείτε στο μενού Πρόγραμμα περιήγησης Opera, κάντε κλικ στο αντικείμενο κατάλογος συμφραζόμενων"Ρυθμίσεις". Στη συνέχεια, επιλέξτε την ενότητα "Για προχωρημένους", κάντε κλικ στο "Ασφάλεια".

Στην ενότητα Απόρρητο και ασφάλεια, επιλέξτε την επιλογή Ρυθμίσεις περιεχομένου. Βρείτε την επιλογή "Ειδοποιήσεις".

Στο παράθυρο Ειδοποιήσεις, η επιλογή "Ζητήστε άδεια πριν από την αποστολή (προτείνεται)" είναι ενεργοποιημένη από προεπιλογή.

Εδώ πρέπει να προσθέσετε τον ιστότοπο στην ενότητα "Αποκλεισμός" ή "Να επιτρέπεται".

Πώς να απενεργοποιήσετε τις ειδοποιήσεις push στον Microsoft Edge

Συνδεθείτε στις ρυθμίσεις του προγράμματος περιήγησης Microsoft Edge. Επιλέξτε "Επιλογές", Στο παράθυρο "Επιλογές", κάντε κλικ στο στοιχείο "Προβολή Επιπλέον επιλογές". Στο παράθυρο "Επιλογές για προχωρημένους", επιλέξτε "Ειδοποιήσεις" και στη συνέχεια κάντε κλικ στο κουμπί "Διαχείριση".

Το παράθυρο Διαχείριση ειδοποιήσεων θα εμφανίσει ιστότοπους που ζητούν άδεια εμφάνισης ειδοποιήσεων. Μπορείτε να αλλάξετε τα δικαιώματα για συγκεκριμένους ιστότοπους.

Συμπεράσματα άρθρου

Ο χρήστης μπορεί ανεξάρτητα να απενεργοποιήσει τις ειδοποιήσεις push (push) στο πρόγραμμα περιήγησης που λαμβάνει στην επιφάνεια εργασίας του υπολογιστή του, επιτρέποντας την αποστολή ειδοποιήσεων από έναν συγκεκριμένο ιστότοπο.

Οι ειδοποιήσεις push εμφανίζονται στο παράθυρο του προγράμματος περιήγησης, ακόμα κι αν ήσασταν εκτός σύνδεσης τη στιγμή της αποστολής τους. Αυτό είναι ένα εξαιρετικό εργαλείο μάρκετινγκ για την προώθηση των προϊόντων και των υπηρεσιών της επιχείρησής σας. Παρόλα αυτά, μπορούν να ενοχλήσουν τους χρήστες εάν συνοδεύονται από μια ηχητική ειδοποίηση. Διαβάστε παρακάτω για να μάθετε πώς να τα απενεργοποιήσετε.

Πώς να ενεργοποιήσετε ή να απενεργοποιήσετε τις ειδοποιήσεις push web στο Google Chrome

Μεταβείτε στις ρυθμίσεις του προγράμματος περιήγησης

Κάντε κλικ στο εικονίδιο ρυθμίσεων στη δεξιά πλευρά του παραθύρου του προγράμματος περιήγησής σας και επιλέξτε "Ρυθμίσεις".

Επιλέξτε σύνθετες ρυθμίσεις

Κάντε κύλιση προς τα κάτω στη σελίδα και επιλέξτε "Ρυθμίσεις για προχωρημένους".

Επιλέξτε Ρυθμίσεις περιεχομένου

Κάντε κλικ στις "Ρυθμίσεις περιεχομένου" στην ενότητα "Απόρρητο και ασφάλεια".

Επιλέξτε Ειδοποιήσεις

Κάντε κλικ στην επιλογή Ειδοποιήσεις.

Εδώ μπορείτε να προσθέσετε ιστότοπους των οποίων τις ειδοποιήσεις θέλετε να λαμβάνετε ή να αποκλείσετε ιστότοπους των οποίων οι ειδοποιήσεις δεν σας ενδιαφέρουν.

Επίσης, μπορείτε να το κάνετε έτσι ώστε να λαμβάνετε ένα αίτημα για άδεια αποστολής ειδοποιήσεων.

Χρησιμοποιήστε ειδοποιήσεις push για να ενημερώσετε τους πελάτες σας σχετικά με τα προϊόντα back-stock, τις εκπτώσεις και τις πιο πρόσφατες δημοσιεύσεις στο ιστολόγιό σας.

Και για να μην αποκλειστούν οι ειδοποιήσεις σας, στείλτε τις μόνο σε όσους χρήστες έχουν συμφωνήσει να τις λαμβάνουν.

Push ειδοποιήσεις στο SendPulse

Η αποστολή ειδοποιήσεων στην υπηρεσία μας είναι δωρεάν - σε οποιαδήποτε ποσότητα και για πάντα! Εάν το κάνετε ήδη email marketing, χρησιμοποιήστε το push ως πρόσθετο κανάλι παράδοσης μηνυμάτων. Για παράδειγμα, στείλατε ένα email με έκπτωση για μια ειδική ημέρα την παραμονή των εορτών, αλλά ο συνδρομητής δεν το άνοιξε. Στείλτε μια ειδοποίηση push την ημέρα Χ και θα έχετε περισσότερες πιθανότητες να αυξήσετε τις πωλήσεις.

Εξατομίκευση και τμηματοποίηση ειδοποιήσεων για μια εξατομικευμένη εμπειρία, δοκιμαστικά μηνύματα, ρύθμιση αυτόματης αποστολής μετά από ορισμένα συμβάντα. Μόνο μία γραμμή κώδικα ανά ιστότοπο σας απομακρύνει από υψηλές μετατροπές και αυξήσεις πωλήσεων.

Από το 2015, η τεχνολογία άρχισε να κερδίζει γρήγορα δημοτικότητα. Push APIαπό τον Chrome. Όλο και περισσότερο, όταν επισκέπτονται διάφορους ιστότοπους ειδήσεων (και όχι μόνο ειδήσεων), οι επισκέπτες παρουσιάζονται με ένα τέτοιο πλαίσιο συστήματος με ένα αίτημα:

Παράθυρο συστήματος Google Chrome που ζητά άδεια για την παράδοση ειδοποιήσεων από τον ιστότοπο.

Θεωρώ ειλικρινά αυτό το κανάλι παράδοσης περιεχομένου (ή απόκτηση χρήστη, όπως θέλετε πείτε το) ως ένα από τα πιο πολλά υποσχόμενα. Ίσως ακόμη και σε μερικά χρόνια αυτές οι ειδοποιήσεις push να είναι το ίδιο υποχρεωτικό χαρακτηριστικό κάθε ειδησεογραφικού ιστότοπου που σέβεται τον εαυτό του, όπως είναι σήμερα το RSS και το κοινό στα κοινωνικά δίκτυα.

Ωστόσο, σήμερα αυτή η τεχνολογία είναι ακόμα αρκετά νέα και υπάρχουν λίγες οδηγίες για τη χρήση της όχι μόνο στο εγχώριο Διαδίκτυο, αλλά και σε ξένα. Δεν χρειάζεται να ψάξετε πολύ για παράδειγμα  ακόμη και η ίδια η Google, όταν ανακοίνωσε το Push API, εξέδωσε ένα πενιχρό δελτίο τύπου μέχρι δακρύων. Και μόνο τώρα, μετά από λίγες ώρες αναζήτησης στις Συνήθεις Ερωτήσεις της Google για προγραμματιστές, μπορείτε να συλλέξετε πληροφορίες για να συλλέξετε τουλάχιστον λειτουργικά σενάρια για την αποστολή ειδοποιήσεων push στους αναγνώστες σας.

Πώς να κάνετε τέτοιες ειδοποιήσεις push για τον ιστότοπό σας; Υπάρχουν δύο τρόποι εδώ: χρησιμοποιήστε υπηρεσίες τρίτων (υπάρχουν ήδη και μερικές από αυτές είναι πολύ καλές) ή δημιουργήστε τη δική σας λύση. Δεδομένου ότι είμαι υποστηρικτής της ελάχιστης χρήσης υπηρεσιών τρίτων στον ιστότοπο, η πορεία μας προς την Πόλη ήταν δεδομένη.

Όμως, για χάρη της δικαιοσύνης, αξίζει να πούμε λίγα λόγια για εξωτερικές λύσεις. Ομολογώ ότι δεν έχω μελετήσει πολύ αυτήν την αγορά (ο λόγος αναφέρεται ακριβώς παραπάνω), αλλά δεν μπορούμε να μην αναφέρουμε την υπηρεσία OneSignal, το πιο ελκυστικό χαρακτηριστικό της οποίας είναι ότι οι υπηρεσίες τους είναι εντελώς δωρεάν - κερδίζουν πουλώντας δεδομένα σχετικά με επισκέπτες στον ιστότοπο πελάτη. Υπάρχει επίσης μια υπηρεσία Jeapie, έχουν πολύ ικανό μάρκετινγκ με το μέρος τους και, κατά κανόνα, καλή ανατροφοδότηση. Ωστόσο, αξίζει να σημειωθεί ότι κάποια στιγμή η Meduza αρνήθηκε τις υπηρεσίες της - Η πλατφόρμα απλά δεν ήταν έτοιμη για τον όγκο των ωθήσεων που έπρεπε να σταλούν στο τεράστιο κοινό της Meduza.

Εκτέλεση. Λήψη διαπιστευτηρίων από την Google.

Στα δεδομένα πηγής, ένας ιστότοπος γραμμένος Ράγες 3.2.8και το καθήκον είναι να δημιουργήσετε ένα πρόγραμμα προώθησης ειδοποιήσεων για το Chrome σε αυτό.

Το πρώτο βήμα είναι να μεταφέρετε τον ιστότοπο σε HTTPS (ασφαλές πρωτόκολλο υπερκειμένου), δηλαδή να δημιουργήσετε ένα πιστοποιητικό SSL για τον ιστότοπό σας. Χωρίς αυτό, οι ειδοποιήσεις push δεν θα λειτουργήσουν (δεν έγινε έλεγχος με το κανονικό http, αλλά γράφεται έτσι παντού). Δεν θα γράψω για το τι είναι το SSL, με τι τρώγεται, πώς να τοποθετήσετε ένα πιστοποιητικό στον διακομιστή και να το συνδέσετε - το Διαδίκτυο είναι γεμάτο με παρόμοια άρθρα. Θα προτείνω μόνο το StartSSL για αυτούς τους σκοπούς. Αυτή είναι μια καλή Αρχή Πιστοποίησης, με την οποία όλοι οι φυλλομετρητές που γνωρίζω είναι φίλοι, με μια σκόπιμα απλή διαδικασία εγγραφής και επαλήθευσης (χρειάζεται μόνο να γνωρίζετε το ελάχιστο αγγλική γλώσσα) για να πάρει απολύτως δωρεάν πιστοποιητικό SSL επίπεδο εισόδου, το οποίο μπορεί να περιλαμβάνει πέντε ακόμη (sic!) υποτομείς.

Λοιπόν, πήραμε το πιστοποιητικό και ρυθμίσαμε το Nginx ή το Apache μας ανάλογα. Τώρα σε γραμμή διεύθυνσηςπρόγραμμα περιήγησης δίπλα στη διεύθυνση του ιστότοπού μας είναι αναμμένο με πράσινο χρώμα, η πιο χαριτωμένη μικρή κλειδαριά, η επιγραφή https://,και, αν σας ενδιαφέρουν τα χρήματα, το όνομα του οργανισμού.

Στη συνέχεια πάμε στο Google Cloud Platform, όπου κάνουμε εγγραφή νέο έργο, ονομάζοντάς το, για παράδειγμα, MySite-Push.

Δημιουργήστε ένα νέο έργο στο Google Cloud Platform

Μετά από λίγα δευτερόλεπτα, όταν δημιουργηθεί το έργο, μέσω της ενότητας Σύνδεση στο Google API, Σύνδεσμος Ενεργοποιήστε και διαμορφώστε το APIμεταβείτε στην ενότητα όπου ολόκληρη η λίστα Μέθοδοι APIγια όλα υπηρεσίες Google. Εκεί πρέπει να συμπεριλάβουμε τη μέθοδο Google Cloud Messagingαπό την ενότητα Mobile API.

Μέθοδος Google Cloud Messagingαπό την ενότητα Mobile API

Πιθανότατα, κατά τη σύνδεση στη μέθοδο, η Google θα σας ζητήσει να καταχωρίσετε πρόσθετα δεδομένα. Για παράδειγμα, θα σας ζητήσει να διευκρινίσετε από πού θα γίνει η κλήση του API και, στη συνέχεια, υποδεικνύουμε τον τύπο του χειριστή που χρειαζόμαστε (για παράδειγμα, διακομιστή Ιστού).

Στη συνέχεια καθορίζουμε την IP του διακομιστή (αν μας ζητηθεί) και δημιουργούμε ένα ιδιωτικό κλειδί, το οποίο θα χρησιμοποιηθεί για την εξουσιοδότηση αιτημάτων. Αυτό το κλειδί, φυσικά, θα το χρειαστούμε στο μέλλον.

Δημιουργήθηκε ιδιωτικό κλειδί για πρόσβαση στο Google API

Αφού πατήσετε το κουμπί Ετοιμοςθα βρεθούμε σε μια σελίδα όπου θα χρειαστεί να καθορίσουμε τον τομέα και να επιβεβαιώσουμε τα δικαιώματα σε αυτόν μέσω των εργαλείων Search Console. Υπάρχουν επίσης αρκετά άρθρα στο Διαδίκτυο σχετικά με αυτό και η ίδια η διαδικασία είναι διαισθητική. Ας μην σταθούμε λοιπόν εδώ.

Στην πραγματικότητα, δεν χρειαζόμαστε τίποτα άλλο από την πλατφόρμα Google Cloud. Κλειδί και ταυτότητα.

Εκτέλεση. Αρχική ρύθμιση τοποθεσίας.

Τώρα σε ριζικό φάκελοο ιστότοπός μας πρέπει να προσθέσουμε ένα αρχείο manifest.jsonπου θα αναφέρει τα εξής :

( "όνομα": "mysite.ru Push test", // Όνομα τοποθεσίας "εμφάνιση" : "standalone", // Καθορίστε πού θα εμφανίζονται οι ειδοποιήσεις "gcm_sender_id": "258466066904" // Ίδιο αναγνωριστικό εφαρμογής στο Google Cloud Platform )

Αυτό είναι το πιο απαραίτητο ελάχιστοπληροφορίες για το μανιφέστο. Μπορείτε να κάνετε google και ποιες επιπλέον παραμέτρους μπορείτε να καθορίσετε εκεί.

Λοιπόν, προσθέστε στην ενότητα μετα-ετικέτα με σύνδεσμο προς το μανιφέστο:

Τώρα στο ίδιο μέρος, στον ριζικό φάκελο, δημιουργήστε ένα αρχείο push.js,όπου εισάγουμε τον παρακάτω κωδικό:

"χρήση αυστηρή"? συνάρτηση SendPushMe() ( if ("serviceWorker" στο navigator) ( console.log("υποστηρίζεται το Service Worker"); navigator.serviceWorker.register("/sw.js").then(function() ( return navigator.serviceWorker .ready; )).then(function(reg) ( console.log("Service Worker is ready:^)", reg); reg.pushManager.subscribe((userVisibleOnly: true)).then(function(sub) ( console.log("endpoint:", sub.endpoint); $.get("https://mysite.ru/createpushadresat?adresat=" + sub.endpoint, function(data) ()); )); )) .catch(function(error) ( console.log("Service Worker error:^(", error); )); ) )

Τι κάνει αυτός ο κωδικός; Όταν καλείτε τη μέθοδο SendPushMe(), ελέγχει εάν το πρόγραμμα περιήγησης υποστηρίζει τη συνδρομή σε ειδοποιήσεις push. Στη συνέχεια, εάν συμβεί (στην κονσόλα καταγραφής προγραμματιστή, το μήνυμα " Το Service Worker υποστηρίζεται”, διαφορετικά θα εμφανιστεί ένα μήνυμα σφάλματος), θα προσπαθήσει να εγγραφεί Υπάλληλος σέρβιςπου θα εμφανιστεί σύντομα στο /sw.jsΕίναι αυτή τη στιγμή που ο χρήστης θα δει ένα αίτημα από το πρόγραμμα περιήγησης για επιβεβαίωση της ενέργειας. Στη συνέχεια, εάν ο χρήστης συμφωνήσει, ο εργαζόμενος θα εγγραφεί και στη διεύθυνση https://mysite.ru/createpushadresatΑίτημα GET σε μια μεταβλητή διεύθυνσηθα μεταβιβαστεί ένα μοναδικό αναγνωριστικό προγράμματος περιήγησης. Θα εμφανίζεται επίσης στην κονσόλα καταγραφής του προγραμματιστή.

Τώρα ας δημιουργήσουμε ένα Service Worker. Αυτό θα είναι το αρχείο sw.jsστον ριζικό φάκελο:

"χρήση αυστηρή"? self.addEventListener("install", function(event) ( event.waitUntil(self.skipWaiting()); )); self.addEventListener("push", συνάρτηση (γεγονός) ( event.waitUntil(fetch("/latest.json").then(function (response) ( if (response.status !== 200) ( console.log(" Σφάλμα αιτήματος Latest.json: " + answer.status); ρίχνει νέο Error(); ) return answer.json().then(function (data) ( if (data.error || !data.notification) (console.error ("Σφάλμα μορφής Latest.json.", data.error); δημιουργία νέου σφάλματος(); ) var title = data.notification.title; var body = data.notification.body; var icon = "https://mysite. ru/my_beautiful_push_icon.png"; return self.registration.showNotification(title, ( body: body, icon: icon, data: ( url: data.notification.url ) )); )).catch(function (err) ( κονσόλα .error("Σφάλμα ανάκτησης δεδομένων", err); )); ))); )); self.addEventListener("notificationclick", συνάρτηση (συμβάν) ( event.notification.close(); var url = event.notification.data.url; event.waitUntil(clients.openWindow(url)); ));

Αυτός ο κωδικός, αφού τον καλέσει, δημιουργεί μια ειδοποίηση, τα δεδομένα για την οποία λαμβάνονται από το αρχείο τελευταία.jsonπου βρίσκεται στο https://mysite.ru/latest.json.Εάν το αίτημα για αυτό το αρχείο αποτύχει ή ο ιστότοπος απαντήσει με μη έγκυρο json, θα εμφανιστεί μια αντίστοιχη καταχώρηση στην κονσόλα καταγραφής του προγραμματιστή. Εάν όλα είναι καλά, θα δημιουργηθεί μια ώθηση. Το Push σχηματίζεται από μεταβλητές σώμα- αυτό είναι ένα σύντομο μήνυμα κειμένου, τίτλος- push title, url- ο σύνδεσμος που θα ακολουθήσει ο χρήστης όταν κάνει κλικ στην ειδοποίηση και εικόνισμα- ένα όμορφο και ευχάριστο (κατά προτίμηση τετράγωνο, με πλευρά τουλάχιστον 150 εικονοστοιχείων) εικονίδιο, το οποίο θα δείχνει το λογότυπο του ιστότοπου. Και συγκεκριμένα σε αυτό το σενάριο εικόνισμα- στατική παράμετρος και όλες οι άλλες ενημερώνονται δυναμικά από τελευταία.json.

Μπορείτε να μεταφέρετε λίγο το σενάριο, έτσι ώστε το εικονίδιο να είναι επίσης μια δυναμική παράμετρος, αλλά μου φαίνεται ότι αυτό θα είναι απολύτως περιττό, είναι καλύτερο να κάνετε ειδοποιήσεις επωνυμίας παρά να παρέχετε μια εικόνα που δεν μπορείτε πραγματικά να δείτε σε μια μικρή Σπρώξτε.

Και τέλος, δημιουργούμε τελευταία.jsonαπό το οποίο θα λαμβάνονται πληροφορίες για ειδοποιήσεις. Νομίζω ότι δεν είναι δύσκολο να μαντέψει κανείς ότι θα βρίσκεται στον ριζικό φάκελο. Και ιδού το περιεχόμενό του:

("ειδοποίηση":("url":"https://mysite.ru/posts/1","title":"Καλά νέα","body":"Έχουμε κάνει μια καταπληκτική συνδρομή για το Chrome"), "_id" :319)

Υποθέτω ότι δεν έχει νόημα να εξηγήσω τι είναι αυτό σε αυτό το json, όλα είναι ξεκάθαρα ούτως ή άλλως.

Θεωρητικά, ο ιστότοπός μας, ή μάλλον το front-end του, είναι σχεδόν εντελώς έτοιμο τώρα. Το μόνο που μένει να κάνουμε είναι να μάθουμε πώς να ενημερώνουμε την Google ότι έχουμε νέες ενημερώσεις, ώστε αυτές με τη σειρά τους να ενημερώνουν σχετικά τα προγράμματα περιήγησης των συνδρομητών μας. Και, φυσικά, ενημερώστε δυναμικά το δικό μας τελευταία.json. Ωστόσο, αυτό είναι στο επόμενο μέρος.

ΥΣΤΕΡΟΓΡΑΦΟ. Παρεμπιπτόντως, μπορείτε να καλέσετε τη SendPushMe() αυτή τη στιγμή και να δείτε τι συμβαίνει. Για να το κάνετε αυτό, για παράδειγμα, μπορείτε να δημιουργήσετε έναν σύνδεσμο, κάνοντας κλικ στον οποίο αυτή η μέθοδος θα καλείται και θα καλείται:

Καλέστε το SendPushMe

Και, εάν όλα γίνονται σωστά, αφού κάνετε κλικ σε έναν τέτοιο σύνδεσμο, θα εμφανιστεί ένα παράθυρο συστήματος με ένα αίτημα:

Αλλά μην βιαστείτε να δώσετε την άδεια ακόμα. Κάντε κλικ στο σταυρό και κλείστε το παράθυρο προς το παρόν.

Εάν έχετε κάνει ήδη κλικ, ανοίξτε τις ρυθμίσεις του ιστότοπου (κάνοντας κλικ στο πράσινο κλείδωμα στη γραμμή διευθύνσεων, εάν κάποιος δεν το γνωρίζει) και στο στοιχείο "Ειδοποιήσεις", επαναφέρετε τη ρύθμιση Καθολική στην προεπιλογή ("Ερώτηση").

Τώρα ανοίξτε την κονσόλα προγραμματιστή F12 -> Κονσόλα. Στη συνέχεια, κάντε ξανά κλικ στο σύνδεσμο «Κλήση SendPushMe».

Η κονσόλα θα πρέπει να εμφανίζει δύο γραμμές διαδοχικά που περιέχουν " Το Service Worker υποστηρίζεται" και " Ο υπάλληλος σέρβις είναι έτοιμος"αντίστοιχα. Και το ίδιο το πρόγραμμα περιήγησης πρέπει να ζητήσει ξανά άδεια. Και τώρα μπορείτε να δώσετε τη συγκατάθεσή σας.

Ως αποτέλεσμα, τρεις τέτοιες καταχωρήσεις θα πρέπει να εμφανίζονται στην κονσόλα προγραμματιστή:

Push αρχείο καταγραφής συνδρομών πρόγραμμα περιήγησης Chrome

Αν θυμάστε, το σενάριο push.jsστέλνει ένα αίτημα GET. Είναι το τελικό σημείο που μεταβιβάζεται στον διακομιστή με αυτό το αίτημα. Λίγο αργότερα, θα μάθουμε στον ιστότοπο να τα θυμάται, ώστε να μπορούμε να στέλνουμε ώθηση χρησιμοποιώντας αυτά τα αναγνωριστικά.

Τι έχουμε τώρα; Έχουμε έναν πλήρη συνδρομητή στις ειδοποιήσεις από τον ιστότοπο και τώρα μπορούμε να απομονώσουμε τα αναγνωριστικά των συνδρομητών. Τώρα ο ίδιος ο Θεός μου είπε να προσπαθήσω να στείλω στον εαυτό μου μια ειδοποίηση.

Για να το κάνετε αυτό, πρέπει να ενημερώσετε την Google για τη νέα ειδοποίηση και αυτός, με τη σειρά του, θα ενημερώσει τους συνδρομητές μας (ή έναν μόνο, όπως έχουμε τώρα) σχετικά.

Η Google ειδοποιείται με ειδικό αίτημα POST προς https://gcm-http.googleapis.com/gcm/sendεδώ σε αυτή τη μορφή:

Content-Type:application/json Authorization:key=A...A //Το ιδιωτικό κλειδί της εφαρμογής μας που λάβαμε στο τελευταίο μέρος. ( "to" : "bk3RNwTe3H0:CI2k_...", // Μοναδικό αναγνωριστικό συνδρομητή. "data" : ( "τίτλος": "Πορτογαλία εναντίον Δανίας", // Δεδομένα ειδοποίησης "κείμενο": "5 έως 1" ) , )

Όπως μπορείτε να μαντέψετε, αυτό το αίτημα ειδοποιεί έναν συγκεκριμένο συνδρομητή και τα δεδομένα για ειδοποίηση μεταβιβάζονται απευθείας στο αίτημα. Ωστόσο, το περιεχόμενο των ειδοποιήσεών μας έχει ληφθεί από το latest.json. Ναι, και η αποστολή προσωπικού αιτήματος σε κάθε συνδρομητή είναι πολύ τολμηρή. Αν και, αν χρειάζεται να στείλετε μεμονωμένες και προσωπικές ειδοποιήσεις, αυτή η επιλογή είναι η κατάλληλη για εσάς. Ωστόσο, θα στείλουμε αιτήματα σε παρτίδες, για τα οποία χρησιμοποιούμε το ακόλουθο σχήμα:

Content-Type:application/json Authorization:key=A...A //Το ιδιωτικό κλειδί της εφαρμογής μας που λάβαμε στο τελευταίο μέρος. ( "registration_ids" : ( [...] // Συστοιχία αναγνωριστικών συνδρομητών. ), )

Σε αυτήν την περίπτωση, καθώς το αίτημα δεν περιέχει δεδομένα για την ίδια την ειδοποίηση, το πρόγραμμα περιήγησης θα επικοινωνήσει με τον Υπάλληλο Εξυπηρέτησης, από τον οποίο θα λάβει πληροφορίες.

Ας δημιουργήσουμε και στείλουμε ένα αίτημα μέσω του τερματικού (κονσόλα SSH):

μπούκλα--header "Authorization: key=AI...3A" \ --header Content-Type:"application/json" \ https://gcm-http.googleapis.com/gcm/send \ -d "(\" register_ids\":[\"cym...W3\"]"

Κονσόλα SSH με ένα απεσταλμένο αίτημα POST και το Push που προκύπτει

Αυτό το στιγμιότυπο οθόνης δείχνει τόσο το ίδιο το αίτημα όσο και το αποτέλεσμά του - μια ειδοποίηση που ήρθε ένα δευτερόλεπτο αργότερα.

Ναι, το κάναμε - το πιο σημαντικό και, φαίνεται, σκοτεινό κομμάτι πίσω. Η περαιτέρω εργασία προς αυτή την κατεύθυνση θα εξαρτηθεί από το σε τι είναι γραμμένος ο ιστότοπός σας. Και, αν ο ιστότοπός σας είναι γραμμένος στο Rails, τότε είμαστε ακόμα στο δρόμο. Εάν όχι, τότε μην βιαστείτε να πείτε αντίο: στο επόμενο τελικό μέρος, θα επιστρέψω σε αυτές τις ερωτήσεις σχετικά με το θέμα των ειδοποιήσεων Ιστού, η λύση των οποίων θα είναι χρήσιμη για προγραμματιστές ιστού οποιασδήποτε εξειδίκευσης.

Έτσι, Chrome Push Notifications για έναν ιστότοπο Ruby On Rails

Αρχικά, επιτρέψτε μου να πω ότι αυτό το παράδειγμα κώδικα ισχύει για έναν ιστότοπο Rails 3.2.8!

Ουσιαστικά πρέπει να κάνουμε:

  1. Λειτουργικότητα έτσι ώστε ο ιστότοπός μας να θυμάται τα αναγνωριστικά συνδρομητών.
  2. Μοντέλο για τη δημιουργία ειδοποιήσεων push.
  3. Δυναμικά ενημερωμένο το latest.json;
  4. Λοιπόν, προσθέστε μερικές γραμμές κώδικα στον ελεγκτή, ο οποίος θα στείλει ένα αίτημα POST στον διακομιστή Google κατά τη δημιουργία ενός νέου Push.

Αν το ξεχάσατε, να σας θυμίσω ότι στο πρώτο μέρος το προσθέσαμε αμέσως push.jsμια γραμμή για να σχηματιστεί ένα αίτημα GET στον ιστότοπό μας, το οποίο μεταδίδει το αναγνωριστικό του προγράμματος περιήγησης κάθε πρόσφατα υπογεγραμμένου ατόμου.

Τώρα ας βεβαιωθούμε ότι ο ιστότοπός μας κατανοεί τι είδους αίτημα είναι και αποθηκεύει τα δεδομένα. Πρώτα απ 'όλα, ας δημιουργήσουμε ένα μοντέλο και έναν ελεγκτή για συνδρομητής push:

Rails g μοντέλο pushsubscriber browserkey:string rake db:migrate rails g controller pushsubscribers create delete

Αντιστοίχιση "/createpushadresat", σε: "pushsubscribers#create", μέσω: : παίρνω

Τώρα ο ιστότοπός μας προωθεί τα εισερχόμενα αιτήματα GET στον ελεγκτή push συνδρομητές , όπου θα υποβληθεί σε επεξεργασία με τη μέθοδο δημιουργώ . Ας το ρυθμίσουμε:

def δημιουργώ@newsubscriber = Pushsubscriber.new(:browserkey => URI(params[:adresat].to_s).path.split("/").last) αν@newsubscriber.save; render:text => "ok" αλλού render:text => "αποτυχία" τέλος τέλος

Πρέπει να πω αμέσως ότι αυτός ο κώδικας είναι μόνο για να δείξει προς ποια κατεύθυνση πρέπει να αναπτυχθείτε. Δεν ελέγχει σχεδόν τίποτα και δεν χρησιμοποιεί ούτε επικυρωτές ούτε regexps - μην το χρησιμοποιείτε έτσι. Ελέγχει μόνο ότι η παράμετρος εισαγωγής περιέχει δεδομένα με τη μορφή συνδέσμου και, στη συνέχεια, η τελευταία ενότητα μετά την κάθετο εξάγεται από αυτήν τη σύνδεση και αποθηκεύεται στη βάση δεδομένων. Είναι σε αυτή τη μορφή push.jsμεταδίδει τελικό σημείο. Και είναι στην τελευταία ενότητα (μετά την κάθετο) του τελικού σημείου που περιέχεται το αναγνωριστικό του προγράμματος περιήγησης.

Έτσι, οι άνθρωποι άρχισαν να εγγράφονται στις ενημερώσεις μας και τώρα η Βάση Δεδομένων μας συμπληρώνεται με αναγνωριστικά. Ώρα να αρχίσετε να τους στέλνετε ειδοποιήσεις:

Τίτλος ειδοποίησης Rails g scaffold:string bodytext:string url:string succescount:integer rake db:migrate

Αυτή η εντολή Scaffold θα δημιουργήσει ένα ελάχιστα λειτουργικό μοντέλο για εμάς Γνωστοποίησημε χωράφια τίτλος,σώμα κειμένου,urlκαι καταμέτρηση επιτυχίας. Τα πρώτα τρία - αντίστοιχα ο τίτλος, το κείμενο και ο σύνδεσμος της μελλοντικής ειδοποίησης και καταμέτρηση επιτυχίας- Ο αριθμός των ωθήσεων που μεταδόθηκαν με επιτυχία, τις οποίες η Google θα μας ενημερώσει ευγενικά. Θα δημιουργηθεί επίσης ένας ελεγκτής με προβολές για αυτό το μοντέλο. Φυσικά, εκεί θα πρέπει ακόμα να εισαγάγετε τις δημιουργημένες προβολές στη συνολική σχεδίαση του ιστότοπου και να "περικλείσετε" τον ελεγκτή πριν_φίλτρο’ami έτσι ώστε μόνο άτομα με την κατάλληλη πρόσβαση μπορούν να «σπρώξουν». Αλλά αυτό είναι στο χέρι σας να το αποφασίσετε μεμονωμένα. Και τώρα είμαστε λίγοι (στην πραγματικότητα όχι πολύ)διορθώστε τη μέθοδο δημιουργίας σε notifications_controller.rb:

απαιτώ"open-uri" απαιτώ"multi_json" απαιτώ"ουρι" def δημιουργώ@notification = Notification.new(params[:notification]) αν@notification.save @adresats = Pushsubscriber.all.collect(&:browserkey) @keys = "("registration_ids":" [email προστατευμένο] _json+")".as_json uri = URI.parse("https://android.googleapis.com/gcm/send") http = Net::HTTP.new(uri.host,uri.port) http.use_ssl = true req = Net::HTTP::Post.new(uri.path) req["Authorization"] = "key=A...A" # Εισαγάγετε το ιδιωτικό κλειδί εδώ req["Content-Type"] = "application/json " res = http.request(req, @keys) parsed_json = ActiveSupport::JSON.decode(res.body) @notification.update_attribute(:success, parsed_json["success"].to_i) τέλος redirect_to notifications_path τέλος

Αυτός ο κωδικός, εάν δημιουργηθεί και αποθηκευτεί μια νέα ειδοποίηση (@notification), δημιουργεί και στέλνει ένα αίτημα POST στην Google (ακριβώς όπως κάναμε παραπάνω), στο οποίο ΟΛΑ τα αναγνωριστικά συνδρομητών μας μεταδίδονται σε μορφή json σύμφωνα με τις προδιαγραφές της Google. Τότε η Google θα πρέπει να μας απαντήσει με το json της. Από το οποίο αναλύεται το τμήμα επιτυχίας, από το οποίο αποθηκεύεται ο αριθμός - αριθμός ωθήσεων που μεταδόθηκαν με επιτυχία. Το τμήμα αποτυχίας μεταβιβάζεται επίσης εκεί, στο οποίο, κατά συνέπεια, αποθηκεύεται ο αριθμός των μη παραδοθέντων ωθήσεων για τον ένα ή τον άλλο λόγο. Γενικά, μπορείτε να δείτε μόνοι σας ποια δεδομένα μεταδίδει η Google, ίσως αποφασίσετε να αποθηκεύσετε κάτι άλλο.

Και όπως και την προηγούμενη φορά δεδομένου κωδικούδεν λαμβάνει υπόψη ότι η Google ενδέχεται να μην απαντήσει ή να απαντήσει με μήνυμα σφάλματος και να μην είναι έγκυρο json για ανάλυση. Εξετάστε τέτοιες περιπτώσεις στην ανάπτυξή σας.

Λοιπόν, τώρα προσπαθούμε να δημιουργήσουμε μια ώθηση στον ιστότοπό μας χρησιμοποιώντας τη φόρμα Notification.new (δημιουργήθηκε από το Scaffold) και… Voilà! Το σύστημα λειτουργεί - λάβαμε μια ειδοποίηση!

Το πραγματικό περιεχόμενο για αυτήν την ειδοποίηση εξακολουθεί να λαμβάνεται από το στατικό τελευταία.json. Το τελευταίο πράγμα που απομένει είναι να αναγκάσετε αυτό το αρχείο να ενημερώνεται δυναμικά. Πως να το κάνεις? Πολύ απλό, γιατί έχουμε ήδη ένα μοντέλο ειδοποιήσεων και σε τελευταία.jsonθα πρέπει να περιέχει ακριβώς την τελευταία μας Ειδοποίηση (δηλαδή Notification.all.last). Για να γίνει αυτό, αφαιρούμε το στατικό μας latest.json από τον ριζικό φάκελο του ιστότοπου και το προσθέτουμε σε διαδρομές.rbπαρακάτω διαδρομή:

Αντιστοίχιση "/latest.json", με: "notification#latestpush", μέσω: :get

Αυτό είναι τώρα τελευταία.jsonθα δημιουργηθούν με τη μέθοδο τελευταία ώθησηστον ελεγκτή Γνωστοποίηση. Ας δημιουργήσουμε αυτή τη μέθοδο:

Def latestpush @push = Pushnotification.all.last render json: "("ειδοποίηση":("url":"" [email προστατευμένο] _s+"","τίτλος":"" [email προστατευμένο] _s+"","σώμα":"" [email προστατευμένο] _s+""),"_id":" [email προστατευμένο] _s+")".as_json τέλος

Τώρα ας δημιουργήσουμε μια άλλη ειδοποίηση μέσω της φόρμας Notification.new. Και, τέλος, βλέπουμε μια ώθηση στη γωνία της οθόνης με ακριβώς το περιεχόμενο που μόλις οδηγήθηκε στη φόρμα.

Φαίνεται ότι αυτό είναι όλο; Τα πάντα, αλλά όχι ακριβώς. Πρώτον, εγγραφήκαμε, αλλά δεν καταργήσαμε - να είστε ειλικρινείς και να δώσετε στους επισκέπτες του ιστότοπου αυτή την ευκαιρία. Δεύτερον, κάναμε μια συνδρομή, αλλά εξακολουθεί να μην είναι ενημερωτική και εμφανίζεται σε όλους και όχι μόνο Χρήστες Chrome, για το οποίο γίνεται η συνδρομή. Και τρίτον, έχουμε φτιάξει ένα πολύ ενδιαφέρον παιχνίδι στην ιστοσελίδα μας, το οποίο έχει τους δικούς του κανόνες χρήσης. Αυτό είναι το μόνο για το οποίο θα μιλήσουμε στο επόμενο, τρίτο και, τέλος, στο τελευταίο μέρος της ιστορίας μας Chrome Push API.