Giter Club home page Giter Club logo

Comments (25)

NikosAvg avatar NikosAvg commented on August 15, 2024 1

Εγώ έγραψα τον κώδικα, πάνω κάτω όπως αναφέρει το λινk το έχω κάνει αν δείτε το αρχείο json.

from site-gr.

p15zerv avatar p15zerv commented on August 15, 2024 1

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

Μιας και δεν χρησιμοποιώ notifications σχεδόν πουθενά, αναρωτιέμαι αν είναι δυνατό να γίνει αυτό όσο το site δεν είναι ανοιχτό στο browser; Αν όχι, δε βρίσκω τόσο χρήσιμη/πρακτική αυτή την προσέγγιση: δε θεωρώ πιθανό να αφήνει κάποιος το site ανοιχτό για να περιμένει πότε θα βγει καινούρια ανακοίνωση.

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

Αυτή η προσέγγιση μου αρέσει περισσότερο! Ίσως ήταν ενδιαφέρον να διερευνηθεί στο μέλλον και κάποιου είδους ιστορικό, αντί να εμφανίζεται απλώς ειδοποίηση αν ο server ανιχνεύσει ότι υπάρχει καινούριο post. Ως προς το τελευταίο, να φανταστώ πρέπει αναγκαστικά να ξανα ξεκινήσει ο server για να ανιχνεύσει και να εμφανίζει ένα νέο post; Αυτό μάλλον σχετίζεται και με το #97...

Τώρα, ως προς τις τεχνολογίες, ίσως αντί των desktop notifications να είχε ενδιαφέρον κάτι όπως το

https://github.com/sciactive/pnotify

που αναφέρθηκε παραπάνω.

Επίσης, με βάση μια κουβένα που είχα κάνει κάποια στιγμή με τον @constantinexisc, στο κάτω μέρος της σελίδας μας φαίνεται να υπάρχει λειτουργικό RSS feed. Μήπως μπορεί να χρησιμεύσει κάπου;

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024 1

Το RSS feed του @p15zerv είναι ίσως η καλύτερη ιδέα, γιατί τα notification με κλειστό browser χωρίς ενεργό server από πίσω είναι σχεδόν αδύνατα κατά τη γνώμη μου.
Η δεύτερη προσέγγιση γίνεται και χωρίς κάποια έχτρα τεχνολογία έχει η html5 notifications api
https://www.htmlgoodies.com/html5/creating-your-own-notifications-with-the-html5-notifications-api.html
αλλά δεν είναι πραγματικά notifications με την έννοια ότι πρέπει καποιος να μπει στο site για να το λάβει.
Το RSS feed πιστεύω είναι πολύ πιο εφικτό για το συγκεκριμένο project

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

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

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

με αφορμή το ντέμο της προηγούμενης εβδομάδας
αν θυμάμαι σωστά: https://github.com/web-push-libs/web-push
θυμίζω το προηγούμενο μου ποστ

επίσης, νομίζω ότι δεν είναι καλή ιδέα να φύγουμε από το jekyll π.χ,
https://github.com/sciactive/pnotify

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

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

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

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

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

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Εντάξει θα το δω λίγο ακόμα και θα σας πω.

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

@epidrome Δεν βρίσκω κάποιον τρόπο να υλοποιήσω τα push notifications χωρίς τη δυνατότητα να γράψω σε κάποιο αρχείο, αυτό που μπορώ να κάνω είναι να ειδοποιώ τον χρήστη όταν μπαίνει στη σελίδα ότι υπάρχει νέο post με ένα notification.
Θα ήθελα τη γνώμη σας πάνω σε αυτό για να δω αν θα το προχωρήσω.

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

δεν καταλαβαίνω
με ποια τεχνολογία?

ο καλύτερος τρόπος να παρουσιάζουμε-συζητάμε είναι όπως #96

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Όταν λέτε τεχνολογία εννοείτε για τα notification; Αυτό που κάνω είναι να χρησιμοποιώ το local storage για να αποθηκεύω τοπικά για τον κάθε χρήστη αν θέλει να τις βλεπει και αν έχει δει την τελευταία ανακοίνωση. Και αν υπάρχει νέα ανακοίνωση και δεν την έχει δει ο χρήστης τότε όταν μπει στη σελιδα μας του δειχνω την ανακοινωση.

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

ο καλύτερος τρόπος να παρουσιάζουμε-συζητάμε είναι όπως #96

#96 (comment)

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

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

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

both!

"mention" has been done already via "assign"

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Η βασική ιδέα ήταν όταν κάποιο νέο post ανεβαίνει στο site να στέλναμε σε χρήστες οι οποίοι ήθελαν να λαμβάνουν ειδοποιήσεις ένα push notification για να τους ενημερώνουμε, κάτι το οποίο είναι αδύνατο με τον τρόπο που έχουμε δομήσει και χωρίς την χρήση βάσης δεδομένων το site διότι θα έπρεπε με κάποιο τρόπο να αποθηκεύουμε αυτούς που θέλουν τις ειδοποιήσεις.
Το αμέσως επόμενο το οποίο είναι και εφικτό με τον τρόπο που είναι το site φτιαγμένο είναι να δείχνουμε ειδοποίηση για νέο post όταν μπαίνει στην σελίδα και υπάρχει νέο post. Αυτό γίνετε χρησιμοποιώντας δυο αρχεία javascript, ένα στο site-gr το οποίο θα είναι υπεύθυνο για την ανίχνευση νέου post κατά το deployment του site και ενα στο minimal-ionio το οποίο θα στέλνει την ειδοποίηση, και τη χρήση του local storage έτσι ώστε να αποθηκεύουμε τοπικά για κάθε χρήστη το αν θέλει να δέχεται ειδοποιήσεις και αν έχει δει ήδη την ειδοποίηση για το νέο post έτσι ώστε να μην του δείχνουμε κάθε φορά που μπαίνει ξανά και ξανά την ειδοποίηση.

Πιο αναλυτικά οι προσθήκες:
site-gr:

  • _feeds/firstpost.json (ένα αρχείο το οποίο κάθε φορά έχει αποθηκευμένα τα δεδομένα του πιο πρόσφατου post) link to file
  • _tools/newpostcheck.js (το js αρχείο το οποίο είναι υπεύθυνο για τον έλεγχο των post για την ανίχνευση νέου.) link to file

minimal-ionio:

  • assets/js/client.js (Το αρχείο το οποίο είναι υπεύθυνο για την ερώτηση ως προς τα δικαιώματα εμφάνισης ειδοποιήσεων και την αποστολή των ειδοποιήσεων.) link to file

Local storage:
Το local storage δεν είναι τίποτα το ιδιαίτερο, απλά σου δίνει την δυνατότητα να αποθηκεύεις τοπικά στον κάθε χρήστη κάποιες 'μεταβλητές' οι οποίες λειτουργούν πάνω κάτω σαν τα cookies και μπορούν να διαγραφούν κάνοντας άπλα εκκαθάριση ιστορικού.

Όλες οι παραπάνω αλλαγές βρίσκονται στα δικά μου fork των δυο αποθετηρίων και συγκεκριμένα στα αντίστοιχα branch με όνομα deploy καθώς και στο δικό μου deployment στο netlify.

Αυτή είναι η ποιο καλή εξήγηση που μπορώ να δώσω και θα ήθελα τις γνώμες σας @epidrome @andreanastil @Spirosvw

from site-gr.

epidrome avatar epidrome commented on August 15, 2024
  1. έγραψες αυτόν τον κώδικα ή βασίζεται σε κάποια παραδείγματα-βιβλιοθήκη? ποια είναι τα dependencies?

  2. παρατηρώ ότι έχεις κάποια στατικά αρχεία json, έχεις δει την δυνατότητα μετατροπής data-->json?
    https://jekyllrb.com/docs/liquid/filters/

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

ο κώδικας μοιάζει με
https://humanwhocodes.com/blog/2018/09/detecting-new-post-jekyll-netlify/

βρήκα και αυτό
https://web-push-book.gauntface.com

επίσης αντιγράφω το αρχικό σχόλιο, γιατί δεν έχω δει κάποια απάντηση:

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

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

η ανάγκη για συστηματική ανάλυση-κατανόηση είναι σημαντικότερη από το να έχουμε μια λύση

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Ναι το json αρχείο νομίζω από αυτό το site το βρήκα, αν εννοούσατε αυτό για κώδικα ναι δεν είναι δικό μου, το κομμάτι των notification είναι δικό μου.
Το δεύτερο είναι ο πρώτος τρόπος που προσπάθησα και αν διαβασεται χρειάζεται κάπου να αποθηκεύουμε τα credentials των χρηστών τα οποία θα χρησιμοποιούμε για να στέλνουμε notifications.
https://web-push-book.gauntface.com/chapter-02/01-subscribing-a-user/

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

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

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

πάντως, ας περιμένουμε και την γνώμη των άλλων

στο μεταξύ καλό είναι να δεις και κάποιο βατό θέμα από τα διαθέσιμα

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Ένταξη αλλά δεν καταλαβαίνω τι εννοείτε να σας στείλω για να σας φωτίσω; πάνω σε ποιο θέμα στο πως λειτουργούν τα push notification ή σε εναλλακτικές τεχνολογίες;
Γενικά τα push notification είναι πολύ απλά στο πως λειτουργούν:

  • Ζητάς άδεια από τον χρήστη να του στέλνεις.
  • Αν την δεκτή αποθηκεύεις τα στοιχειά του.
  • Κάθε φορά που θες να στείλεις κάτι ο server το στέλνει.

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

from site-gr.

epidrome avatar epidrome commented on August 15, 2024

ως τελικός χρήστης φυσικά και καταλαβαίνω, εδώ όμως ο ρόλος μας είναι διαφορετικός: τεχνολογίες-ανάπτυξη-συνεργασία-εκπαίδευση,

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

ας διαβάσουν τα σχόλια και ας μας πουν την γνώμη τους και οι συνεργάτες: @constantinexisc @p15zerv

για την ώρα, @NikosAvg:

στο μεταξύ καλό είναι να δεις και κάποιο βατό θέμα από τα διαθέσιμα

from site-gr.

NikosAvg avatar NikosAvg commented on August 15, 2024

Έγινε. Θα κοιτάξω.

from site-gr.

stale avatar stale commented on August 15, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

from site-gr.

Spirosvw avatar Spirosvw commented on August 15, 2024

Υπάρχει η δυνατότητα δημιουργίας ενός browser plugin που να στέλνει notifications μέσω του browser σε όσους έχουν εγκαταστήσει το plugin αυτό. Δεν γνωρίζω κατά πόσο είναι εφικτό αλλά βρήκα και αυτό το link: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/notifications/create

from site-gr.

stale avatar stale commented on August 15, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

from site-gr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.