miaurc 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587
  1. #
  2. # miau 0.5.3 configuration file example
  3. # (C) 2003-2004 Tommi Saviranta <tsaviran@cs.helsinki.fi>
  4. #
  5. # About structure of this configuration file:
  6. #
  7. # - All parameters are written inside quotes (for example, "foobar")
  8. #
  9. # - Options are defined like: option = "parameter1"[:"parameter2"] ...
  10. #
  11. # - When entering multiparameter options, certain parameters have default
  12. # values and can be left out.
  13. #
  14. # - When entering multiparameter options and, for example, user doesn't want
  15. # to set parameter2 at all but he needs to set parameter3, parameter2 can
  16. # be skipped with column (':') like: "parameter1"::"parameter3".
  17. #
  18. # - Empty lines and characters after '#' (hash) are ignored.
  19. #
  20. # - When setting permissions, switched etc. (switches (booleans) are described
  21. # as "state"), everything beginning with "t", "r" and "1" are concidered as
  22. # "true" or "yes" (positive). Everything else is "false" or "no" (negative).
  23. # Required settings
  24. ################################################################################
  25. # nicknames = { "nick" }: Your nickname (and secondary nicknames) on IRC.
  26. # If the primary nick (first nick on the list) is already on use,
  27. # miau will try the others on the list.
  28. #
  29. # Default: no default
  30. #
  31. # Example:
  32. #nicknames = {
  33. # "zak"
  34. # "zakh"
  35. #}
  36. # realname = "realname": Your "real" name on IRC.
  37. #
  38. # Default: no default
  39. #
  40. # Example:
  41. #realname = "Prokhor Zakharov"
  42. # username = "username": Your ident (matters only if you don't have identd
  43. # running).
  44. #
  45. # Default: no default
  46. #
  47. # Example:
  48. #username = "zak"
  49. # password = "password": The password miau will expect to receive from client
  50. # when it's registering with nick. If this is 13 characters long,
  51. # miau assumed it's crypted.
  52. #
  53. # If miau is compiled with ENABLE_MKPASSWD, miau can generate password-hashes
  54. # (from command line) with -c -switch.
  55. #
  56. # Default: no default
  57. #
  58. # Example:
  59. #password = "foobar"
  60. # listenport = "port": The port miau will wait for incoming connections.
  61. #
  62. # Default: no default
  63. #
  64. # Example:
  65. #listenport = "4096"
  66. # servers = { "server":"port":"password":"timeout" }: miau's IRC-server-list.
  67. # Each line represents one server, where timeout is delay in
  68. # seconds before connectiong attempt times out. Only "server"
  69. # parameter is required.
  70. #
  71. # Default: no default
  72. #
  73. # Example:
  74. #servers = {
  75. # "irc.net"
  76. # "irc.foo.bar":"6662"
  77. # "localhost"::"foobar"
  78. # "127.0.0.1":"6670"::"5"
  79. #}
  80. # connhosts = { "host":"permitted" }: List of hosts that are allowed (or denied)
  81. # to connect to miau. When boolean-value is left unset, it is
  82. # assumed to be "true". This list will be processed as a chain
  83. # which means latter rules can override previous ones.
  84. #
  85. # Default: no default
  86. #
  87. # Example:
  88. #connhosts = {
  89. # "*":"yes"
  90. # "client*.evil.net":"no"
  91. #}
  92. # Optional settings
  93. ################################################################################
  94. # listenhost = "host": Host miau uses to listen on.
  95. #
  96. # If you are compiled with IPV6 and need this to listen on an IPV4 port, you
  97. # must use an IP in the form ::FFFF:127.0.0.1
  98. #
  99. # Default: no default
  100. #
  101. # Example:
  102. #listenhost = "127.0.0.1"
  103. # bind = "host": Host/IP miau uses for outgoing connections.
  104. #
  105. # Default: none
  106. #
  107. # Example:
  108. #bind = "172.16.1.1"
  109. # maxclients = "number": Maximum number of clients connected to miau
  110. # concurrently. Set to zero for unlimited clients.
  111. #
  112. # Default: 3
  113. #
  114. #Example:
  115. #maxclients = "1"
  116. # stonedtimeout = "seconds": Time (in seconds) with no data from the server
  117. # before it is declared stoned and being disconnected. Although
  118. # minimum value is 30, this value has no upper limit. Watch out,
  119. # though, if this value is set too high, death of servers may stay
  120. # undetected for a very long time if you are idle.
  121. #
  122. # Default: 90
  123. #
  124. # Example:
  125. #stonedtimeout = "150"
  126. # connecttimeout = "seconds": Time (in seconds) before connection attampt will
  127. # time out. Note that while connecting to the server miau will not
  128. # respond to clients. Minimum value is 5, and many systems define
  129. # maximum value.
  130. #
  131. # Default: 30
  132. #
  133. # Example:
  134. #connecttimeout = "60"
  135. # channels = { "channel":"keyword" }: List of channels to join.
  136. #
  137. # Default: none
  138. #
  139. # Example:
  140. #channels = {
  141. # "#foobar"
  142. # "#miau":"cats"
  143. #}
  144. # rejoin = "state": Rejoin channels after disconnecting from the server.
  145. # If rejoin is set to true, channels defined in "channels" are
  146. # also joined when client first time connects to miau.
  147. #
  148. # Default: true
  149. #
  150. # Example:
  151. #rejoin = "false"
  152. # leave = "state": Leave channels when all clients have detached from miau.
  153. # If "leave" is set to "false" and "rejoin" is set to "true",
  154. # channels defined at "channels" will be joined at miau startup.
  155. # If both "leave" and "rejoin" is set to "true", channels that
  156. # are left at client detach, are rejoined when client attached
  157. # back to miau.
  158. #
  159. # Default: false
  160. #
  161. # Example:
  162. #leave = "false"
  163. # leavemsg = "message": Message miau will either use as PART-message or as an
  164. # ACTION when all clients have detached from miau. If unset or
  165. # set to empty, no message will be shown. Note that many people
  166. # dislike event-based messages (which happens when "leave" is set
  167. # to "false" and "leavemsg" is set). Also see usequitmsg.
  168. #
  169. # Note: Note that commenting this option out and rehashing after leavemsg was
  170. # set, this option is _not_ reverted. To disable leavemsg afterwards you
  171. # need to write an empty string here and rehash.
  172. #
  173. # Default: none
  174. #
  175. # Example:
  176. #leavemsg = "doh"
  177. # awaymsg = "message": Text that will be set to miau's away-reason when all
  178. # clients have detached from miau. If unset or set to empty,
  179. # AWAY-status will be left untouched. When any client attaches
  180. # back to miau, AWAY-status will be reset. Also see usequitmsg.
  181. #
  182. # Note: If user sets him/herself away, miau will not touch away-status nor
  183. # message neither when connecting to or disconnecting from miau.
  184. #
  185. # Note: Note that commenting this option out and rehashing after awaymsg was
  186. # set, this option is _not_ reverted. To disable awaymsg afterwards you
  187. # need to write an empty string here and rehash.
  188. #
  189. # Default: none
  190. #
  191. # Example:
  192. #awaymsg = "bouncing around - all private messages will be logged"
  193. # usequitmsg = "state": Use last quit-reason as away-reason and/or leave-message
  194. # (if respective options are enabled) when all clients have
  195. # disconnected from miau. If quit-reason is empty, default values
  196. # of awaymsg and leavemsg will be used, otherwise most recent
  197. # quit-message overrides values in miaurc.
  198. #
  199. # Default: true
  200. #
  201. # Example:
  202. # usequitmsg = "false"
  203. # getnick = "selection": miau can try to reclaim your primary nick when it is
  204. # lost. This option may be one of the following: "never",
  205. # "detached", "attached", or "always".
  206. # "never" ....... miau will not try to get your nick back.
  207. # "detached" .... miau will try to get your nick when no
  208. # clients are attached.
  209. # "attached" .... miau will try to get your nick when
  210. # there are one or more clients attached.
  211. # "always" ...... miau will try to get your nick
  212. #
  213. # Note: Do _not_ use options "attached" and "always" with clients (like
  214. # irc-II EPIC) that automatically change your nick when they receive
  215. # NICKINUSE from the server - you might end up chaning your nick until
  216. # server drops your connection due excess flood.
  217. #
  218. # Default: detached
  219. #
  220. # Example:
  221. #getnick = "always"
  222. # getnickinterval = "seconds": Time between tries (in seconds) to obtain
  223. # currently (possibly) lost primary nick. Don't set it too low
  224. # or you might get kicked out the server due to excess flood.
  225. #
  226. # Default: 60
  227. #
  228. # Example:
  229. #getnickinterval = "30"
  230. # antiidle = "minutes": Time between idle-timer resets in minutes. Set to 0 to
  231. # disable.
  232. #
  233. # Default: 0
  234. #
  235. # Example:
  236. #antiidle = "300"
  237. # qloglength = "minutes": Age of oldest line in quicklog in minutes. Set to zero
  238. # to disable quicklog.
  239. #
  240. # This option might not be compiled in.
  241. #
  242. # Default: 30
  243. #
  244. # Example:
  245. #qloglength = "30"
  246. # timestamp = "option": Location of timestamp in quicklog events. This option
  247. # may be one of the following "beginning", "end", or "none".
  248. #
  249. # This option might not be compiled in.
  250. #
  251. # Default: none
  252. #
  253. # Example:
  254. #timestamp = "beginning"
  255. # flushqlog = "state": If set to true, quicklog will be written only when no
  256. # clients are connected and quicklog will be erased when client
  257. # connects to miau. If you are running a single client, you
  258. # probably want to leave this to "false.
  259. #
  260. # This option might not be compiled in.
  261. #
  262. # Default: true
  263. #
  264. # Example:
  265. #flushqlog = "true"
  266. # inbox = "state": Enables logging private messages when no clients are
  267. # connected to miau.
  268. #
  269. # This option might not be compiled in.
  270. #
  271. # Default: true
  272. #
  273. # Example:
  274. #inbox = "true"
  275. # nevergiveup = "state": If set to true, miau will reset "working"-status of
  276. # servers to working when all are set to dysfunctional.
  277. # Respectively, if set to false, miau will quit when all servers
  278. # on the list have been set to dysfunctional.
  279. #
  280. # Default: true
  281. #
  282. # Example:
  283. #nevergiveup = "false"
  284. # norestricted = "state": If set to true, miau will not stay on server that
  285. # forces user to have restricted-status (+r).
  286. #
  287. # Default: true
  288. #
  289. # Example:
  290. #norestricted = "false"
  291. # reconnectdelay = "seconds": Time (in seconds) between connection attempts.
  292. # Minumun value is set to 1.
  293. #
  294. # Default: 10
  295. #
  296. # Example:
  297. #reconnectdelay = "30"
  298. # nickfillchar = "fill character": Character used to modify your primary nick
  299. # when all defined nicks are already occupied. Note character is
  300. # a single octet (byte) and if longer string is fed, only the
  301. # first character is used.
  302. #
  303. # Example: When nickfillchar is set to '_', primary nick is "zak" and all
  304. # defined nicks are occupied, next nicks tried are "zak_", "zak__",
  305. # "zak___" and so on. When nick has grown too long, it will be shifted
  306. # one characted to right (where shift is cyclic) - this means
  307. # "zak______" will become "_zak_____", which, again, will become
  308. # "__zak____".
  309. #
  310. # Default: _
  311. #
  312. # Example:
  313. #nickfillchar = "^"
  314. # maxnicklen = "length": Maximum nick length, used with nickfillchar.
  315. #
  316. # Default: 9
  317. #
  318. # Example:
  319. #maxnicklen = 11
  320. # usermode = "usermode(s)": Usermode that miau will request (if no clients are
  321. # attached at the moment) from the server when connection to the
  322. # server is established. Leave unset or set to empty to disable
  323. # this feature.
  324. #
  325. # Default: none
  326. #
  327. # Example:
  328. #usermode = "+i"
  329. # forwardmsg = "command": miau can collect the (private) messages within three
  330. # (3) minutes and pipe them into the program specified. Leave this
  331. # unset or set to empty to disable this feature.
  332. #
  333. # Default: none
  334. #
  335. # Example:
  336. #forwardmsg = "mail user@host"
  337. # ignore = { "mask":"ignored" }: List of users whose private messages (PRIVMSG)
  338. # and noticies (NOTICE) are ignored when no clients are attached
  339. # to miau. When "ignored" is left undefined, it is assumed to be
  340. # "true". Setting "ignored" to "false" means that this user will
  341. # _not_ be ignored. This list is processed as a chain.
  342. #
  343. # Default: none
  344. #
  345. # Example:
  346. #ignore = {
  347. # "*@localhost":"yes"
  348. # "zak*":"no"
  349. #}
  350. # privlog = "mode": Whatever private messages should be logged in nick-specific
  351. # files. Can be one of "never", "detached", "attached", and
  352. # "always".
  353. #
  354. # This option might not be compiled in.
  355. #
  356. # Default: never
  357. #
  358. # Example:
  359. #privlog = "always"
  360. # chanlog = { "channel(s)":"options":"logfile" }: List of channel logfiles.
  361. #
  362. # When channel is set to "*", line represents global log. When logging,
  363. # if channel doesn't have entry of it's own in this list, it will use settings
  364. # of global log and write log to it's own file. When defining global log,
  365. # "logfile" is ignored. Each line can have multiple channels
  366. # (like "#foobar,#miau").
  367. #
  368. # If logfile is left undefined, logfile will be named after the channel with
  369. # possible postfix (see logpostfix). All lofiles are written in miau's work
  370. # directory.
  371. #
  372. # Options consist of abritary set of following possibilities:
  373. # j: log joins
  374. # e: log parts (exits)
  375. # q: log quits
  376. # m: log messages (privmsg/notice)
  377. # c: log mode changes (changes)
  378. # n: log nick changes
  379. # o: log misc events (other)
  380. # b: log messages from miau (bouncer)
  381. # a: log all of above
  382. # A: log when a client is attached
  383. # D: log when a client is detached
  384. # C: log continuously (status of clients doesn't matter)
  385. #
  386. # This option might not be compiled in.
  387. #
  388. # Default: none
  389. #
  390. # Example:
  391. #chanlog = {
  392. # "#foobar":"a" # log everything on #foobar
  393. # "#miau":"aD":"foo.log" # log everything to file "foo.log" when
  394. # all clients are detached
  395. # "*":"mjeq" # log only messages, joins, parts and quits
  396. # by default
  397. #}
  398. # logpostfix = "postfix": When writing log to undefined logfile, each logfile
  399. # consists of channel name followed by postfix. Postfix can be
  400. # defined here.
  401. #
  402. # This option might not be compiled in.
  403. #
  404. # Default: no postfix
  405. #
  406. # Example:
  407. #logpostfix = ".log"
  408. # onconnect = { "mode":"target/data"(:"data") }: When miau connects and
  409. # registers user to server, miau can send pre-defined messages.
  410. # User can define miau to send normal messages (PRIVMSG), notices
  411. # (NOTICE) or arbitrary messages.
  412. #
  413. # Mode can be one of the following:
  414. # p: private message (PRIVMSG).
  415. # n: notice (NOTICE). Should be used with services and automatons, but
  416. # unfortunately some network services can't cope with notices.
  417. # r: "raw" message. This means user must provide complete message to send
  418. # to the server. Using raw message user has complete control over what
  419. # is being sent. If you don't know what this is, you don't need this.
  420. # When using modes "p" or "n", user must provide both message and target where
  421. # as with raw messages only one parameter in addition to type should be given.
  422. #
  423. # This option might not be compiled in.
  424. #
  425. # Default: none
  426. #
  427. # Example:
  428. #onconnect = {
  429. # "p":"nickserv":"identify foobar"
  430. # "n":"nickserv@services.host.net":"id raboof"
  431. # "r":"OPER foo bar"
  432. #}
  433. # automodes = { "mask":"privilegded" }: List of people who are automatically
  434. # given certain privilege on channel. Mask is given in form of
  435. # "mode:nick!username@host/#channel" (where "mode" is a single
  436. # character) and list is processed as a chain.
  437. #
  438. # This option might not be compiled in.
  439. #
  440. # Default: none
  441. #
  442. # Example:
  443. #automodes = {
  444. # "o:zak*!zak@client*-myisp.com/#channel":"yes"
  445. # "o:zak*!*@evil.impersonator.net/#foobar":"no"
  446. # "v:newbie*!*@ircnet.com/#newbie":"yes"
  447. #}
  448. # automodedelay = "seconds": Time (in seconds) after first queued mode change
  449. # would take effect. During this period of time miau can collect
  450. # more than one mode change and commit up to three at a time.
  451. # Other situation reasonaly big value (like 30) here could prove
  452. # useful is channel where there are stupid "auto-oping" bots.
  453. # (Stupid bots do mode changes even if someone else did that
  454. # already.)
  455. #
  456. # This option might not be compiled in.
  457. #
  458. # Default: 30
  459. #
  460. # Example:
  461. #automodedelay = "60"
  462. # cmdpasswd = "password": Password for remote commands. If this is 13 characters
  463. # long, miau assumes it's crypted. Comment this out or leave it
  464. # empty to disable remote commands. When sending miau a remote
  465. # command, password _always_ begins with column (':') (if
  466. # cmdpasswd is set to "foobar" (or hash of it), you need to send
  467. # miau a message beginning with ":foobar" to issue a remote
  468. # command).
  469. #
  470. # This feature might not be compiled in.
  471. #
  472. # If miau is compiled with ENABLE_MKPASSWD, miau can generate password-hashes
  473. # (from command line) with -c -switch.
  474. #
  475. # Default: disabled
  476. #
  477. # Example:
  478. #cmdpasswd = ""
  479. # dccbounce = "state": miau can bounce DCCs. Set to true to enable bouncing.
  480. # You probably don't need this.
  481. #
  482. # This option might not be compiled in.
  483. #
  484. # Default: false
  485. #
  486. # Example:
  487. #dccbounce = "true"
  488. # dccbindhost = "host": If miau has separate IPs for IRC-network and clients,
  489. # you should enter IP for clients here.
  490. #
  491. # This option might not be compiled in.
  492. #
  493. # Default: no default
  494. #
  495. # Example:
  496. #dccbindhost = "10.0.0.1"