Εξέλιξη Κομματιού
Διαχείριση Συσκευών Πολυμέσων
1. Δικαιώματα Περιηγητή με το navigator.permissions
- Πρόσβαση σε υλικό:
- Κάμερα web
- Μικρόφωνο
- Προαιρετικά δικαιώματα:
- Γεωτοποθεσία
- Ειδοποιήσεις
- Πρόχειρο (ανάγνωση/εγγραφή)
- Υποβολή ερωτημάτων και κατάσταση δικαιωμάτων
- Περιορισμοί και συμβατότητα περιηγητών
2. Ανάγνωση Συσκευών Πολυμέσων με το navigator.mediaDevices
- Απαρίθμηση συσκευών
- Διαχείριση αλλαγών συσκευών
3. Συμβατότητα μεταξύ Περιηγητών
- Χρήση API:
- navigator.permissions.query()
- navigator.mediaDevices.enumerateDevices()
- getUserMedia()
- Στρατηγική υποκατάστασης για Safari
4. Διαχείριση Συσκευών Πολυμέσων
- Αρχικοποίηση συσκευής: getUserMedia(constraints)
- Περιορισμοί συσκευών πολυμέσων
- Έναρξη και διακοπή ροών πολυμέσων
- Διαχείριση αλλαγών συσκευών
5. Συσκευές Εγγραφής με το MediaRecorder
- Έναρξη/διακοπή ροής και εγγραφής
- Λήψη αρχείου .webm
- Προεπισκόπηση κυματομορφής σε πραγματικό χρόνο
Προαιρετικές Προσθήκες:
- Αποθήκευση σε μορφή .wav χρησιμοποιώντας το ScriptProcessorNode
- Απεικόνιση φάσματος FFT ήχου
- Μπάρα έντασης σε ντεσιμπέλ
- Αναγνώριση φωνής με το webkitSpeechRecognition
Σύνδεση Ομοτίμων (Peer Connection)
1. Διακομιστές Σηματοδότησης
- Επιλογές αμφίδρομων καναλιών:
- WebSocket
- Socket.io
- SignalR
- Δομή μηνύματος
- Απλοποιημένος πελάτης WebRTC
- Πλήρης ροή σηματοδότησης
2. Βιντεοκλήση μέσω WebRTC
- Αρχιτεκτονική: Node.js + ws
- Πελάτης WebRTC: RTCPeerConnection
- Τοπικός έλεγχος E2E
Προαιρετικές Λειτουργίες:
- Τερματισμός κλήσης (κλείσιμο σύνδεσης, διακοπή πολυμέσων)
- Ομαδικές κλήσεις (δωμάτια πολλαπλών χρηστών)
- Απλή πιστοποίηση βασισμένη σε διακριτικά (tokens)
3. Κοινή Χρήση Οθόνης
- Χρήση της getDisplayMedia()
- Αρχιτεκτονική και επιλογές
4. Πρωτόκολλο Περιγραφής Συνεδρίας (SDP)
- Εισαγωγή και περιεχόμενα
- Ανάγνωση και ερμηνεία SDP
- Κωδικοποιητές:
- Ήχου & Βίντεο
- Διαπραγμάτευση και έλεγχος
- Στρατηγικές υποκατάστασης
5. Στατιστικά WebRTC με την getStats()
- Τύποι στατιστικών
- Πώς να ερμηνεύσετε τα στατιστικά
- Γραφήματα ζωντανού ρυθμού μετάδοσης/απόκλισης (jitter)
- Στρατηγικές προσαρμογής ποιότητας
6. Όλα τα θέματα είναι
- Πρακτικό σενάριο χρήσης
Απαιτήσεις
Αυτό το μάθημα είναι ιδανικό για προγραμματιστές frontend και full-stack, αρχιτέκτονες τεχνολογίας και μηχανικούς που δημιουργούν λειτουργίες επικοινωνίας σε πραγματικό χρόνο βασισμένες στον περιηγητή, όπως βιντεοκλήσεις, κοινή χρήση οθόνης ή ροή ήχου. Οι συμμετέχοντες θα πρέπει να έχουν άνετη γνώση JavaScript και τεχνολογιών ιστού, με προαιρετική εμπειρία σε Node.js και επικοινωνία βασισμένη σε WebSocket.
Σχόλια (3)
Απολάμβανα πραγματικά τη μάθηση για τις επιθέσεις με AI και τα εργαλεία που υπάρχουν για να ξεκινήσω να ασχολούμαι και να χρησιμοποιώ ενεργά σε δοκιμές ασφαλείας. Κέρδισα πολλές γνώσεις που δεν είχα στην αρχή, και το μάθημα εκπλήρωσε τις προσδοκίες μου. Το αγαπημένο μου μέρος από την εκπαίδευση ήταν ο Comet Browser, και ξαφνιάστηκα από τις δυνατότητές του. Σίγουρα θα το διερευνήσω περισσότερο. Συνολικά ήταν ένα εξαιρετικό μάθημα και απολάμβανα τη μάθηση όλων των OWASP GenAI Top 10.
Patrick Collins - Optum
Κομμάτι - OWASP GenAI Security
Μηχανική Μετάφραση
Πρακτικές ασκήσεις, προσωπική καθοδήγηση και διευκρινίσεις ερωτήσεων.
Jose Paulos - INESC TEC
Κομμάτι - Tailwind CSS
Μηχανική Μετάφραση
Ότι κάθε τεχνική μαθηματική έρχεται με πολλά πρακτικά στοιχεία για να επιβεβαιωθούν οι έννοιες.
Andrei-Calin Bajea
Κομμάτι - OWASP Top 10 2025
Μηχανική Μετάφραση