Ανάλυση και ανάπτυξη ενός P2P Web Video Chat μέσω Peer JS


Τρίτη, 21-07-20, Nick Zoumpoulis

Ανάλυση και ανάπτυξη ενός P2P Web Video Chat μέσω Peer JS
Share

Πάντα θεωρούσαμε αρκετά ενδιαφέρουσα τη δυνατότητα να μπορούν οι χρήστες μιας ιστοσελίδας να συνομιλούν μέσω video conference σε πραγματικό χρόνο. Μια τέτοια τεχνολογία θα είχε αρκετές εφαρμογές σε εμπορικές ιστοσελίδες, portals και εφαρμογές τηλεϊατρικής κτλ.

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

Η ανήσυχη ομάδα της INTERNETi, ψάχνοντας, αναλύοντας και δοκιμάζοντας πάντα νέες τεχνολογίες και δυνατότητες, ανακάλυψε πριν από λίγο καιρό την online πλατφόρμα του PeerJS, βασισμένη στο πρωτόκολλο του WebRTC και ανεπτυγμένη από την ομάδα του PeerJS.

Οι πρώτες δοκιμές ήταν φοβερά ενθαρρυντικές μιας και η εφαρμογή και παραμετροποίηση του πρωτοκόλλου και του συστήματος δεν ήταν δύσκολη. Παράλληλα, η συνεχόμενη ανάπτυξή του από την ομάδα του PeerJS και η υποστήριξη τριών πολύ γνωστών browser (Chrome, Firefox και Opera) κάνουν το μέλλον της εφαρμογής να φαντάζει λαμπρό.

Η μαγεία πίσω από αυτή την τεχνολογία είναι το person to person, χωρίς την χρήση ενδιάμεσου server ή media server υποστηρίζοντας παράλληλα πολύ καλές αναλύσεις σε κάμερα και ποιότητα ήχου. Πολύ καλό επίσης είναι και το frame rate που δεν έδειχνε να κολλάει σε καμία δοκιμή.

Η χρήση της εφαρμογής είναι πολλαπλή, από ένα απλό text chat, σε ένα video chat, σε ένα πιο πολύπλοκο video chat που περιλαμβάνει μεταφορά αρχείων μεταξύ των χρηστών, μέχρι και υποστήριξη παιχνιδιών όπως το tetris.

Εμείς κάναμε χρήση της πλατφόρμας και ο στόχος μας ήταν να συνδυάσουμε 2 από τις δυνατότητές της, text chat & video chat, ώστε να αναπτύξουμε μια μικρή δοκιμαστική εφαρμογή που θυμίζει λίγο το Skype.

Καταφέραμε λοιπόν να μπορούμε να καλούμε έναν άλλο χρήστη σε συνομιλία video και με κανονικό κουδούνισμα τηλεφώνου. Ο χρήστης που δέχεται την κλήση μπορεί να την απορρίψει ή να την δεχτεί. Αν επιλέξει το δεύτερο τότε η online video συνομιλία ξεκινά. Υπάρχει βέβαια και το κατάλληλο κουμπί για τερματισμό της συνομιλίας όταν έρθει αυτή η στιγμή. Ο κώδικας είναι καθαρά client side based και κάνει χρήση του πρωτοκόλλου PeerJS καθώς και του JQuery. Επίσης, γίνεται χρήση HTML και CSS καθώς και ενός μικρού αρχείου mp3 για το κουδούνισμα του τηλεφώνου.

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

Cookie Settings