Chapter 4. Building a Chatroulette
The best way to master MediaStream and PeerJS is by building real-world applications, which is what we will do in this chapter. A chatroulette is a website that pairs random site visitors together for webcam and text-based conversation. Discussing how to build a chatroulette will help us to study PeerJS and PeerServer in depth, as it requires us to integrate PeerServer with Express. We will also add media controls to our site in order to pause/resume local MediaStream and allow the user to choose their desired microphone/webcam, which will help us to study MediaStream even more in depth. We will be actually creating a chatroulette that only allows the users of a particular country to chat, which would require an extra step of verification before connecting to the PeerServer; therefore, taking us even deeper into the integration of PeerServer into Express.
In this chapter, we will cover the following topics:
- Running your own instance of PeerServer
- Creating a custom PeerServer
- Integrating PeerServer with Express
- Verify users for connecting to PeerServer
- Finding the IP address and country of a user connected to the server
- Allowing the user to use a microphone and webcam directly on the webpage
- Discussing the requirements for building a completely working chatroulette