Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Raspberry Pi By Example

You're reading from   Raspberry Pi By Example Start building amazing projects with the Raspberry Pi right out of the box

Arrow left icon
Product type Paperback
Published in Apr 2016
Publisher
ISBN-13 9781785285066
Length 294 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Arush Kakkar Arush Kakkar
Author Profile Icon Arush Kakkar
Arush Kakkar
Arrow right icon
View More author details
Toc

Table of Contents (17) Chapters Close

Preface 1. Introduction to Raspberry Pi and Python FREE CHAPTER 2. Minecraft Pi 3. Building Games with PyGame 4. Working with a Webcam and Pi Camera 5. Introduction to GPIO Programming 6. Creating Animated Movies with Raspberry Pi 7. Introduction to Computer Vision 8. Creating Your Own Motion Detection and Tracking System 9. Grove Sensors and the Raspberry Pi 10. Internet of Things with the Raspberry Pi 11. Build Your Own Supercomputer with Raspberry Pi 12. Advanced Networking with Raspberry Pi 13. Setting Up a Web Server on the Raspberry Pi 14. Network Programming in Python with the Pi A. Newer Raspberry Pi Models Index

A chat program

In the previous section, we went through the basics of creating a socket server and client in Python. In this section, we will write a chat application in Python that is powered by Python sockets.

The chat application we are going to make will be a common chat room rather than a peer-to-peer chat. So this means that multiple chat users can connect to the chat server and exchange messages. Every message is broadcast to every connected chat user.

The chat server

The chat server performs the following tasks:

  • It accepts multiple incoming connections for the client.
  • It reads incoming messages from each client and broadcasts them to all the other connected clients.

The following is the code for the chat server:

import socket, select

#Function to broadcast chat messages to all connected clients
def broadcast_data (sock, message):
    #Do not send the message to master socket and the client who has send us the message
    for socket in CONNECTION_LIST:
        if socket != server_socket...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime