This repository has been archived by the owner on Dec 21, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.example.xml
139 lines (134 loc) · 6.75 KB
/
config.example.xml
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
<config>
<!-- Bot authentication details -->
<auth jid="[email protected]/Resource" password="secreteating" priority="10" server="__optional__" />
<!-- SleekXMPP plugins and config, note: you need to completely restart bot after making changes in this section -->
<sleek>
<!-- Data Forms -->
<plugin name="xep_0004" />
<!-- Last activity -->
<plugin name="xep_0012" />
<!-- Service Discovery -->
<plugin name="xep_0030" />
<!-- Extended Stanza Addressing -->
<plugin name="xep_0033" />
<!-- Multi User Chat -->
<plugin name="xep_0045">
<muc room="[email protected]" nick="KeelsBot" />
</plugin>
<!-- Ad-Hoc Commands -->
<plugin name="xep_0050" />
<!-- Result Set Management -->
<plugin name="xep_0059" />
<!-- Publish Subscribe -->
<plugin name="xep_0060" />
<!-- Chat State Notifications -->
<plugin name="xep_0085" />
<!-- Software Version -->
<plugin name="xep_0092">
<!-- Bot client identification details - optional, do not change unless you want to mask the true nature of the bot ;-) -->
<!--<config name="KeelsBot" version="0.5.0" />-->
</plugin>
<!-- XMPP Ping -->
<plugin name="xep_0199">
<!-- Periodically ping the server and reconnect on timeout -->
<!--<config keepalive="true" frequency="300" timeout="30" />-->
</plugin>
<!-- Entity Time -->
<plugin name="xep_0202" />
<!-- Direct MUC Invitations -->
<plugin name="xep_0249" />
</sleek>
<!-- Location of the sqlite3 database used for persistent storage. -->
<storage file="/var/lib/scripts/keelsbot/test.sqlite" />
<!-- Users the bot knows about.
Identification is performed the same way as in XEP-0016: Privacy Lists with type=jid:
1. <user@domain/resource> (only that resource matches)
2. <user@domain> (any resource matches)
3. <domain/resource> (only that resource matches)
4. <domain> (the domain itself matches, as does any user@domain or domain/resource)
In MUC the real JID is checked first. Then if no match is found (or real JID is not available),
the identification proceeds with room@server/nick JID.
If you ommit some attributes on jid element, their values are taken from users element (or hardcoded defaults).
Lang attribute (default en): What language the bot should use for communication with the user.
Level attribute (default 0): What access level to the bot's commands the user has.
All messages from users with negative access level are ignored. -->
<users level="0" lang="en">
<jid lang="en" level="100">[email protected]</jid><!-- owner -->
<jid lang="cs">conf.netlab.cz</jid><!-- communicate with all users from conf.netlab.cz in Czech -->
<jid level="0">badhost.com/goodresource</jid><!-- override the following rule -->
<jid level="-1">badhost.com</jid><!-- banned -->
</users>
<!-- Permission setting for bot's commands.
If you ommit some attributes on command element, their values are taken from permissions element (or hardcoded defaults).
Level attribute (default 0): Minimum access level that the user must have to use this command. -->
<permissions level="0">
<!-- plugin: admin -->
<command level="100">reload</command>
<command level="100">restart</command>
<command level="100">die</command>
<command level="100">loglevel</command>
<!-- plugin: chatbot -->
<command level="100">convreload</command>
<command level="80">chat</command>
<command level="80">shut</command>
<!-- plugin: parrot -->
<command level="80">say</command>
<command level="80">tell</command>
</permissions>
<!-- KeelsBot plugins -->
<keels>
<plugin name="admin" />
<plugin name="antispam">
<!-- This should be enabled only in MUCs, where bot is moderator. You can disable banning of users by noban attirbute. -->
<muc room="[email protected]" noban="noban">
<!-- If the 'limit' of 'type' (message or character) is reached in given 'interval' (number of seconds), take action.
First time warn the user and remember him for 'expiration' seconds.
Second time kick the user and again remember him.
Third time ban the user permanently (or kick again with noban). -->
<limit type="message" interval="10" limit="5" expiration="300" />
<limit type="character" interval="5" limit="800" expiration="60" />
</muc>
</plugin>
<plugin name="chatbot">
<!-- If you want to debug the conversations, enter the log directory. -->
<config log="/path/to/log/dir" />
<!-- Rooms, where KeelsBot is supposed to respond. -->
<muc room="[email protected]" />
<muc room="[email protected]" disabled="disabled" />
<!-- What dictionaries KeelsBot should use. -->
<dict path="/path/to/keelsbot/misc/conversations/*.xml" />
</plugin>
<plugin name="definitions" />
<plugin name="feedreader">
<!-- An interval is number of minutes to wait between checks. -->
<feed url="http://example.com/feed.xml" interval="60">
<subscriber type="groupchat" jid="[email protected]" />
<subscriber type="chat" jid="[email protected]" />
</feed>
</plugin>
<plugin name="help" />
<plugin name="muc_log">
<log room="[email protected]" file="/path/to/file.log" />
</plugin>
<plugin name="muc_presence">
<!-- List of rooms, where the new record should be announced in public chat -->
<muc room="[email protected]" />
</plugin>
<plugin name="muc_stability" />
<plugin name="parrot" />
<plugin name="pastebin">
<!-- If you want, you can change the default language (text) and expiration (1D), see http://pastebin.com/api.php for details. -->
<config lang="php" expiration="1D" />
</plugin>
<plugin name="seen" />
<plugin name="texy" />
<plugin name="twitter">
<!-- authorization for this app instance -->
<auth app_key="bflmpsvz" access_token="DamnYouTwitterWithAllThisBullshit" />
<!-- List of rooms where the bot should expand twitter statuses. -->
<muc room="[email protected]" />
</plugin>
<plugin name="uptime" />
<plugin name="vocabulary" />
</keels>
</config>