Σχεδιασμός και ανάπτυξη πλατφόρμας αποστολής μαζικών και εξατομικευμένων ειδοποιήσεων, δεδομένων και μηνυμάτων (web push notifications) σε συσκευές διασυνδεμένες στο διαδίκτυο
Analysis, design and implementation of a web push notification platform for massive and personalized messages submission
Keywords
Web push notification ; Distributed application ; Service worker ; Push API ; APIAbstract
Η παρούσα διπλωματική εργασία πραγματεύεται την ανάλυση απαιτήσεων, το σχεδιασμό και ανάπτυξη ενός πληροφοριακού συστήματος μαζικής αποστολής προωθημένων μηνυμάτων (web push notifications). Σχεδιάστηκε ένα ολοκληρωμένο πληροφοριακό σύστημα αποστολής μαζικών προωθημένων μηνυμάτων (web push notifications). Το όλο σύστημα σχεδιάστηκε με γνώμονα την ευκολία χρήσης και εγκατάστασης από την πλευρά των διαχειριστών ιστοτόπων. Παράλληλα δόθηκε έμφαση στο σχεδιασμό προκειμένου να προκύψει ένα ολοκληρωμένο σύστημα που να μπορεί κλιμακωθεί εύκολα και να εκτελείται σε πολλαπλούς εξυπηρετητές σε μελλοντική επέκταση του έργου.
Το όλο έργο αποτελείται από τρεις λειτουργικές μονάδες. Το πρώτο μέρος του συστήματος που αποτελεί και τον πυρήνα του συστήματος αποτελείται από ένα ιδιωτικό API, το οποίο υλοποιήθηκε σε περιβάλλον εργασίας Slim 4.0. Παράλληλα με το API σχεδιάστηκε και ένας service worker και οι απαραίτητες συνοδευτικές συναρτήσεις του (SDK), προκειμένου να μπορεί να εκτελεστεί η υπηρεσία σε έναν ιστότοπο και να μπορεί να λάβει ο τελικός χρήστης ένα προωθημένο μήνυμα. Τέλος αναπτύχθηκε η βασική δομή ενός περιβάλλοντος αποστολής προωθημένων μηνυμάτων που απευθύνεται σε διαχειριστές ιστοτόπων σε περιβάλλον εργασίας Slim 4.0. Και οι τρεις επιμέρους λειτουργικές μονάδες αναπτύχθηκαν χρησιμοποιώντας το ιδεατό περιβάλλον υπηρεσιών σε containers του Docker.
Abstract
This work is focusing on the analysis, design and implementation of a web push notification system. During this work a new web push notifications information system was designed. The whole system was designed having in mind the usability and the user easy experience of using it or integrated it to any third part website. At the same time, this work was focused an architecture and system design in order to be able to be scaled up and run on multiple servers in a future extension of the work.
The whole project consists of three functional components. The first part of the system, which is the main core of the whole system, is been consisted by a private Application Programming Interface (API), which was implemented in a Slim 4.0 framework. Along with the API, a service worker and its necessary functions (sdk) were designed, so that the service can be executed on any third-party website and the end user can receive a push notification message. The whole platform, was developed under docker virtual services within containers. Finally, the basic structure of the last function component of the proposed platform was implemented on Slim 4.0 framework too. The last is dealing with an interface of platform that allow web administrators to use and sent massive push notification messages to all their subscribers.