-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.txt
155 lines (118 loc) · 4.46 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
Neutron - a Jabber bot in Python
--------------------------------
Copyright 2002-2007 Mike Mintz http://www.mikemintz.com/
http://ejabberd.jabber.ru/neutron
Introduction
------------
Neutron is a plugin-based Jabber bot written in Python that provides
functionalities for individuals and chatrooms. To use it, you only need
to create an account on a Jabber server, configure Neutron to log into
that account and start it. Neutron will allow users to subscribe to its
presence, enter into chatrooms and answer to commands.
Install
-------
1. Get the source code from the SVN repository
svn checkout http://svn.hypothetic.org/neutron/trunk neutron
2. Prepare permissions (optional)
addgroup jabber
adduser neutron
adduser neutron jabber
chown neutron:jabber neutron-0.5 -R
chmod 750 neutron-0.5 -R
cd neutron
3. Configure
Edit config.txt and put the username, server and password of the Jabber
account where Neutron must login.
4. Execute
./neutron.py
5. Execute as different user in daemon mode (optional)
su neutron -c "./neutron.py &"
Directory structure
-------------------
# Directories
chatlogs Chatroom logs in HTML format
dynamic Files automatically generated
localized Localized plugins: copy them to 'plugins/' to enable them
modules Python modules required to run Neutron and plugins
plugins Plugins that extend Neutron functionalities
private Logs of private chats
static Files with static data
# Files
neutron.py Neutron executable
neutron.cfg Main configuration file
neutron.rc Init script with commands to execute on initialization
dynamic/chatrooms.cfg List of chatrooms where Neutron will enter
dynamic/log.txt Log of all XMPP traffic (does not work)
Plugins
-------
# Bot
access Gives access to admin privileges
admin Commands to administer Neutron
chat
help Shows help
log Logs private chats, chatrooms and debug info
python Evaluates a Python expression, statement or shell command
# Jabber related
presence Allows contacts to subscribe to its presence
sg Asks a server its statistics
userinfo Gives information on JIDs
# Chatrooms
chatbot Joins a chatroom and speaks to Chatbot (useless)
eliza Talks with chat participants (uses Eliza)
rss Subscribes a chatroom to a RSS feed
vote Polls
# Utilities
deadline Add multiple deadlines (date and message) and display remaining time
query Create word definitions and stores in file
temperature Converts temperatures to and from C and F
time Gives UTC and Internet time
# Reads database
quote Gives a random quote or fortune
# Asks Internet
babel Translate between languages [babelfish]
dict Shows the DICT definition of a word
dns Returns the DNS lookup for a host or IP address
domain Returns information on specified domain
google Performs a Google search. Set your Google key on modules/googlekey.txt
stock Returns information on stock [yahoo]
weather Shows weather from NOAA
# Local plugins
Czech:
idos Searches IDOS for direct connection between two places in Czech Republic
kino Returns list of movies in cinemas for given city in Czech Rep.
lamer Shows random message from www.lamer.cz
tv Returns TV programme for one of supported channels
Other:
update Updates Neutron from Internet (does not work)
Russian:
bashorg Gives random quotes from bash.org / bash.org.ru / linux.org.ru / python.org
tv Returns TV programme for one of supported channels
quiz Quiz in chatroom (requires quizdata.txt)
Spanish:
saluda It's a modification of quote plugin (requires saludos.txt and saludos2.txt)
USA:
fact-usa Shows info in Area code and ZIP code (requires areacodes.txt and zipcodes.txt)
Start using it
--------------
Now that Neutron is logged on his account in a Jabber server, you can add it
to your roster and start to chat with him. Some example commands:
help
!commands
help !domain
!domain jabber.org
help !join
RSS plugin
----------
1. Add a RSS feed to Neutron:
!rss_add identifier link
!rss_add planetjab http://planet.jabber.org/rss10.xml
2. Subscribe room to it:
!rss_subscribe identifier room
!rss_subscribe planetjab [email protected]
3. Finally start the RSS fetching loop::
!rss_start
Feature Requests
----------------
# help_plugin
- !commands should show only commands that the user has privileges enought to use
- Give helpful error on invalid username/password for initial login