
P A R T I I I
P R O G R A M M I N G W I T H T H E R A S P B E R R Y P I
194
These are IRC
status codes
, provided by the server to indicate when particular operations have
completed. These are used by the program to know when it has received the required list of
names from the IRC server. Next, set up the variables for the server connection by entering
the following lines:
irc = {
‘host’ : ‘chat.freenode.net’,
‘port’ : 6667,
‘channel’ : ‘#raspiuserguide’,
‘namesinterval’ : 5
}
The first line tells Python to create a
dict
data type. Short for dictionary, this allows multiple
variables to be stored in a single master variable—in this case,
irc
. These individual vari-
ables can then be recalled later in the program. Although you could write this program with-
out using dicts to store variables, it would make the program significantly more difficult to
read. The dict begins with the opening curly brace, and ends with the closing curly brace on
the final line.
The
host
variable should be set to the fully qualified domain name (FQDN) of the IRC server
to which the program will connect. In this example,
chat.freenode.net
is used, but if
you want to customise the program to use a different server, change the domain name here.
The
port
variable tells the program which network port IRC is running on, which will usually
be 6667. The
channel
variable tells Python which channel to join in order to monitor the
users, while
namesinterval
controls how long the program waits to refresh the list of
users, measured in seconds.
Set up a second dict to store the user-specific variables by typing in the following lines:
user = {
‘nick’ : ‘botnick’,
‘username’ : ‘botuser’,
‘hostname’ : ‘localhost’,
‘servername’ : ‘localhost’,
‘realname’ : ‘Raspberry Pi Names Bot’
}
As with
irc
, all these variables are stored within a dict called
user
to make it clear which
variables pertain to which section. The
nick
variable should be set to the IRC nickname the
program will use. Don’t use your usual nickname if you’re planning to connect to the IRC
server at the same time; instead, try appending
-bo
t to the end of your name to make it
Summary of Contents for A
Page 1: ......
Page 2: ......
Page 3: ...Raspberry Pi User Guide 2nd Edition...
Page 4: ......
Page 5: ...Raspberry Pi User Guide 2nd Edition Eben Upton and Gareth Halfacree...
Page 10: ......
Page 26: ...R A S P B E R R Y P I U S E R G U I D E S E C O N D E D I T I O N 10...
Page 28: ......
Page 29: ...Chapter 1 Meet the Raspberry Pi...
Page 37: ...Chapter 2 Getting Started with the Raspberry Pi...
Page 56: ......
Page 57: ...Chapter 3 Linux System Administration...
Page 79: ...Chapter 4 Troubleshooting...
Page 89: ...Chapter 5 Network Configuration...
Page 109: ...Chapter 6 The Raspberry Pi Software Configuration Tool...
Page 122: ......
Page 123: ...Chapter 7 Advanced Raspberry Pi Configuration...
Page 140: ......
Page 141: ...Chapter 8 The Pi as a Home Theatre PC...
Page 151: ...Chapter 9 The Pi as a Productivity Machine...
Page 160: ......
Page 161: ...Chapter 10 The Pi as a Web Server...
Page 172: ......
Page 173: ...Chapter 11 An Introduction to Scratch...
Page 189: ...Chapter 12 An Introduction to Python...
Page 216: ......
Page 218: ......
Page 219: ...Chapter 13 Learning to Hack Hardware...
Page 234: ......
Page 235: ...Chapter 14 The GPIO Port...
Page 249: ...Chapter 15 The Raspberry Pi Camera Module...
Page 265: ...Chapter 16 Add on Boards...
Page 280: ......
Page 281: ...Appendix A Python Recipes...
Page 287: ...Appendix B Raspberry Pi Camera Module Quick Reference...
Page 293: ...Appendix C HDMI Display Modes...