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 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<!-- $Id: contents.html 11393 2008-05-11 06:56:12Z topia $ -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Auto 関係のモジュール - Tiarra Documentation</title>
<link rel="stylesheet" type="text/css" href="../default.css" />
</head>
<body>
<div class="header">
<h1>Auto 関係のモジュール</h1>
</div>
<hr class="sep" />
<div class="pane-main">
<div id="module-Auto::Alias" class="module">
<div class="module-header"><h2 title="ユーザエイリアス情報の管理を行ないます。">Auto::Alias</h2>
<span class="description">ユーザエイリアス情報の管理を行ないます。</span></div>
<div class="content">
<p class="comment">
エイリアスは基本的にname,userの二つのフィールドから成っており、<br />
それぞれユーザー名、ユーザーマスクを表します。<br />
</p>
<p class="comment">
エイリアス定義ファイルのパスと、そのエンコーディング。<br />
このファイルは次のようなフォーマットである。<br />
1. それぞれの行は「<キー>: <値>」の形式である。<br />
2. 空の行で、各ユーザーを区切る。<br />
3. <値>はカンマで区切られて複数の値とされる。<br />
<br />
エイリアス定義ファイルの例:<br />
<br />
name: sample<br />
user: *!*sample@*.sample.net<br />
<br />
name: sample2,[sample2]<br />
user: *!sample2@*.sample.net,*!sample2@*.sample2.net<br />
<br />
</p>
<div class="element"><span class="key">alias</span>:<span class="value">alias.txt</span></div>
<div class="element"><span class="key">alias-encoding</span>:<span class="value">euc</span></div>
<p class="comment">
この発言をした人のエイリアスが登録されていれば、それをprivで送る。<br />
</p>
<div class="element"><span class="key">confirm</span>:<span class="value">エイリアス確認</span></div>
<p class="comment">
「<addで指定したキーワード> user *!*user@*.user.net」のようにして情報を追加。<br />
発言をした人のエイリアスが未登録だった場合は、userのみ受け付けて新規追加とする。<br />
</p>
<div class="element"><span class="key">add</span>:<span class="value">エイリアス追加</span></div>
<p class="comment">
「<removeで指定したキーワード> name ユーザー」のようにして情報を削除。<br />
userを全て削除されたエイリアスは他の情報(name等)も含めて消滅する。<br />
</p>
<div class="element"><span class="key">remove</span>:<span class="value">エイリアス削除</span></div>
<p class="comment">
メッセージが追加されたときの反応を指定します。<br />
ランダムなメッセージを発言する際のフォーマットを指定します。<br />
エイリアス置換が有効です。#(nick.now)、#(channel)は<br />
それぞれ相手のnick、チャンネル名に置換されます。<br />
#(key)、#(value)は、追加されたキーと値に置換されます。<br />
</p>
<div class="element"><span class="key">added-format</span>:<span class="value">#(name|nick.now): エイリアス #(key) に #(value) を追加しました。</span></div>
<div class="element"><span class="key">add-failed-format</span>:<span class="value">#(name|nick.now): エイリアス #(key) の追加に失敗しました。</span></div>
<p class="comment">
メッセージが削除されたときの反応を指定します。<br />
added-formatで指定できるものと同じです。<br />
</p>
<div class="element"><span class="key">removed-format</span>:<span class="value">#(name|nick.now): エイリアス #(key) から #(value) を削除しました。</span></div>
<div class="element"><span class="key">remove-failed-format</span>:<span class="value">#(name|nick.now): エイリアス #(key) からの削除に失敗しました。</span></div>
<p class="comment">
エイリアスの追加や削除が許されている人。省略された場合は「*!*@*」と見做される。<br />
</p>
<div class="element"><span class="key">modifier</span>:<span class="value">*!*@*</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Answer" class="module">
<div class="module-header"><h2 title="特定の発言に反応して対応する発言をする。">Auto::Answer</h2>
<span class="description">特定の発言に反応して対応する発言をする。</span></div>
<div class="content">
<p class="comment">
Auto::Aliasを有効にしていれば、エイリアス置換を行ないます。<br />
</p>
<p class="comment">
反応する発言と、それに対する返事を定義します。<br />
エイリアス置換が有効です。#(nick.now)と$(channel)はそれぞれ<br />
相手の現在のnickとチャンネル名に置換されます。<br />
<br />
コマンド: reply<br />
書式: <反応する発言のマスク> <それに対する返事><br />
例:<br />
</p>
<div class="element"><span class="key">reply</span>:<span class="value">こんにちは* こんにちは、#(name|nick.now)さん。</span></div>
<p class="comment">
この例では誰かが「こんにちは」で始まる発言をすると、<br />
発言した人のエイリアスを参照して「こんにちは、○○さん。」のように発言します。<br />
<br />
コマンド: channel-reply<br />
書式: <反応するチャンネルのマスク> <反応する発言のマスク> <それに対する返事><br />
例:<br />
</p>
<div class="element"><span class="key">channel-reply</span>:<span class="value">#あいさつ@ircnet こんにちは* こんにちは、#(name|nick.now)さん。</span></div>
<p class="comment">
この例では#あいさつ@ircnetで誰かが「こんにちは」で始まる発言をすると、<br />
発言した人のエイリアスを参照して「こんにちは、○○さん。」のように発言します。<br />
<br />
コマンド: answer-to-myself<br />
書式: <真偽値><br />
例:<br />
</p>
<div class="element"><span class="key">answer-to-myself</span>:<span class="value">on</span></div>
<p class="comment">
自分の発言にも反応するようになります。<br />
デフォルトは off です。<br />
</p>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Calc" class="module">
<div class="module-header"><h2 title="Perlの式を計算させるモジュール。">Auto::Calc</h2>
<span class="description">Perlの式を計算させるモジュール。</span></div>
<div class="content">
<p class="comment">
反応する発言を指定します。<br />
</p>
<div class="element"><span class="key">request</span>:<span class="value">計算</span></div>
<p class="comment">
使用を許可する人&チャンネルのマスク。<br />
例はTiarraモード時。 [default: なし]<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* +*!*@*</span></div>
<p class="comment">
[plum-mode] mask: +*!*@*<br />
</p>
<p class="comment">
結果が未定義だったときに置き換えられる文字列。省略されると undef 。<br />
</p>
<div class="element"><span class="key">undef</span>:<span class="value">(未定義)</span></div>
<p class="comment">
正常に計算できたときのフォーマット<br />
method: 計算式, result: 結果, error: エラー, signal: シグナル<br />
</p>
<div class="element"><span class="key">reply-format</span>:<span class="value">#(method): #(result)</span></div>
<p class="comment">
エラーが起きたときのフォーマット<br />
method: 計算式, result: 結果, error: エラー, signal: シグナル<br />
</p>
<div class="element"><span class="key">error-format</span>:<span class="value">#(method): エラーです。(#(error))</span></div>
<p class="comment">
シグナルが発生したときのフォーマット<br />
</p>
<div class="element"><span class="key">signal-format</span>:<span class="value">#(method): シグナルです。(#(signal))</span></div>
<p class="comment">
signal-$SIGNALNAME-format 形式。<br />
$SIGNALNAME には現状 alarm/sigfpe があります。<br />
該当がなければ signal-format にフォールバックします。<br />
</p>
<p class="comment">
いくつかの例を挙げます。<br />
</p>
<div class="element"><span class="key">signal-alarm-format</span>:<span class="value">#(method): 時間切れです。</span></div>
<div class="element"><span class="key">signal-sigfpe-format</span>:<span class="value">#(method): 浮動小数点計算例外です。</span></div>
<p class="comment">
タイムアウトする秒数を指定します。 alarm に渡されます。<br />
再帰を止めるのに使えますが、どうもメモリリークしていそうな雰囲気です。<br />
</p>
<div class="element"><span class="key">timeout</span>:<span class="value">1</span></div>
<p class="comment">
サブルーチン定義を許可するかどうかを指定する。<br />
再帰定義が可能なので、許可する場合はこのモジュール専用の<br />
Tiarra を動かすことをお勧めします。<br />
</p>
<div class="element"><span class="key">permit-sub</span>:<span class="value">0</span></div>
<p class="comment">
初期化する発言を指定します。<br />
このモジュールでは現状変数や関数定義などを行えます。<br />
このコマンドが発行されるとそれらをクリアします。<br />
</p>
<div class="element"><span class="key">init</span>:<span class="value">計算初期化</span></div>
<p class="comment">
初期化を許可する人&チャンネルのマスク。<br />
例はTiarraモード時。 [default: なし]<br />
</p>
<div class="element"><span class="key">init-mask</span>:<span class="value">* +*!*@*</span></div>
<p class="comment">
[plum-mode] mask: +*!*@*<br />
</p>
<p class="comment">
再初期化したときの発言を指定します。<br />
</p>
<div class="element"><span class="key">init-format</span>:<span class="value">初期化しました。</span></div>
<p class="comment">
別の shared-mode な System::WebClient からの発言に対応(yes/no).<br />
自分自身の発言は未対応.<br />
[default: no]<br />
</p>
<div class="element"><span class="key">support-shared-webclient</span>:<span class="value">no</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::ChannelWithoutOper" class="module">
<div class="module-header"><h2 title="チャンネルオペレータ権限がなくなってしまったときに発言する。">Auto::ChannelWithoutOper</h2>
<span class="description">チャンネルオペレータ権限がなくなってしまったときに発言する。</span></div>
<div class="content">
<p class="comment">
+で始まらない特定のチャンネルで、+aモードでも+rモードでもないのに<br />
誰もチャンネルオペレータ権限を持っていない状態になっている時、<br />
そこに誰かがJOINする度に特定のメッセージを発言するモジュールです。<br />
</p>
<p class="comment">
書式: <チャンネル名> <メッセージ><br />
</p>
<div class="element"><span class="key">channel</span>:<span class="value">#IRC談話室@ircnet なると消失しました。</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::FetchTitle" class="module">
<div class="module-header"><h2 title="発言に含まれるURLからタイトルを取得.">Auto::FetchTitle</h2>
<span class="description">発言に含まれるURLからタイトルを取得.</span></div>
<div class="content">
<p class="comment">
リクエストタイムアウトまでの時間(秒).<br />
</p>
<div class="element"><span class="key">timeout</span>:<span class="value">3</span></div>
<p class="comment">
有効にするチャンネルとオプションとURLの設定.<br />
書式: mask: <channel> [<&conf>...] <url><br />
<br />
mask: #test@ircnet &test http://*<br />
mask: * http://*<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* http://*</span></div>
<p class="comment">
&test と設定すると conf-test ブロックの中身が使われる.<br />
conf-test {<br />
auth-test1 {<br />
url: http://example.com/*<br />
url: http://example.org/*<br />
user: test<br />
#pass: test<br />
pass: {BASE64}dGVzdAo=<br />
}<br />
filter-xx {<br />
url: http://example.com/*/xx/*<br />
type: xx<br />
}<br />
}<br />
</p>
<p class="comment">
お返事の前や後ろにつける字句.<br />
</p>
<div class="element"><span class="key">reply-prefix</span>:<span class="value">"(FetchTitle) "</span></div>
<div class="element"><span class="key">reply-suffix</span>:<span class="value">" [AR]"</span></div>
<p class="comment">
デバッグフラグ.<br />
debug: 0<br />
debug-mask: #debug-chan your_nick!~you@example.com<br />
debug-dumpfile: fetchtitle.log<br />
</p>
<p class="comment">
NOTE:<br />
利用するにはCodeReposから<br />
module/Tools/HTTPClient.pm rev.8220<br />
main/Tiarra/Socket/Buffered.pm rev.8219<br />
以降が必要です.<br />
</p>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::FetchTitle::Plugin::ExtractHeading" class="module">
<div class="module-header"><h2 title="本文から見出しを抽出するFetchTitleプラグイン.">Auto::FetchTitle::Plugin::ExtractHeading</h2>
<span class="description">本文から見出しを抽出するFetchTitleプラグイン.</span></div>
<div class="content">
<p class="comment">
Auto::FetchTitle { ... } での設定.<br />
+ Auto::FetchTitle {<br />
plugins {<br />
ExtractHeading {<br />
extra: name1 name2 ...<br />
extra-name1 {<br />
url: http://www.example.com/*<br />
recv_limit: 10*1024<br />
extract: re:<div id="title">(.*?)</div><br />
}<br />
}<br />
}<br />
}<br />
</p>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::FetchTitle::Plugin::Mixi" class="module">
<div class="module-header"><h2 title="Mixiにログインして見出し抽出出来るようにするFetchTitleプラグイン.">Auto::FetchTitle::Plugin::Mixi</h2>
<span class="description">Mixiにログインして見出し抽出出来るようにするFetchTitleプラグイン.</span></div>
<div class="content">
<p class="comment">
Auto::FetchTitle { ... } での設定.<br />
<br />
+ Auto::FetchTitle {<br />
mask: #* &mixi http://*<br />
plugins {<br />
Mixi {<br />
mixi-user: xxx<br />
mixi-pass: yyy<br />
}<br />
}<br />
conf-mixi {<br />
filter-mixi {<br />
url: http://mixi.jp/*<br />
url: http://news.mixi.jp/*<br />
type: mixi<br />
timeout: 10<br />
#閲覧可能なコミュニティの指定.<br />
#mixi-community: 0<br />
#閲覧可能なユーザの指定.<br />
#指定したユーザには足跡踏んで見に行きます.<br />
#mixi-friend: 0<br />
#閲覧可能にしていないページを表示したときのメッセージ.<br />
#要求されたページを #(url) で展開できます.<br />
#mixi-noperm-msg: not permitted #(url).<br />
}<br />
}<br />
}<br />
<br />
アカウント情報は plugins Mixi に記述.<br />
mixi-pass には {B}bbbb でBASE64エンコード値も可能.<br />
<br />
newsだけしか使わない場合でも, ログイン処理が必要なので<br />
mixi.jp 内のいくつかのURLはこのプラグインで処理する必要があります.<br />
url: http://news.mixi.jp/*<br />
url: http://mixi.jp/issue_ticket.pl?*<br />
url: http://mixi.jp/login.pl<br />
url: http://mixi.jp/check.pl?*<br />
(それぞれ, ニュースページ, ログイン処理, エラー検出, 途中経路になります.)<br />
</p>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Im" class="module">
<div class="module-header"><h2 title="名前が呼ばれると、その発言をim.kayac.comに送信する">Auto::Im</h2>
<span class="description">名前が呼ばれると、その発言をim.kayac.comに送信する</span></div>
<div class="content">
<p class="comment">
反応する人のマスクを指定します。<br />
省略すると全員に反応します。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
反応するキーワードを正規表現で指定します。<br />
複数指定したい時は複数行指定してください。<br />
</p>
<div class="element"><span class="key">regex-keyword</span>:<span class="value">(?i:fugahoge)</span></div>
<p class="comment">
反応するキーワードを指定します。<br />
複数指定したい時は,(コンマ)で区切るか、複数行指定してください。<br />
</p>
<div class="element"><span class="key">keyword</span>:<span class="value">hoge</span></div>
<p class="comment">
im.kayac.com に送るメッセージのフォーマットを指定します。<br />
デフォルト値: [tiarra][#(channel):#(nick.now)] #(text)<br />
#(channel) のかわりに #(raw_channel) を利用するとネットワーク名がつきません。<br />
</p>
<div class="element"><span class="key">format</span>:<span class="value">[tiarra][#(channel):#(nick.now)] #(text)</span></div>
<p class="comment">
im.kayac.comで登録したユーザ名を入力します。<br />
im.kayac.comについては http://im.kayac.com/#docs を参考にしてください。<br />
</p>
<div class="element"><span class="key">user</span>:<span class="value">username</span></div>
<p class="comment">
im.kayac.comで秘密鍵認証を選択した場合は設定してください。<br />
省略すると認証なしになります。<br />
</p>
<div class="element"><span class="key">secret</span>:<span class="value">some secret</span></div>
<p class="comment">
im.kayac.comでパスワード認証を選択した場合は設定してください。<br />
省略すると認証なしになります。<br />
secret と両方指定した場合は secret が優先されています。<br />
</p>
<div class="element"><span class="key">password</span>:<span class="value">some password</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Joined" class="module">
<div class="module-header"><h2 title="特定のチャンネルに誰かがJOINする度に特定のメッセージを発言する。">Auto::Joined</h2>
<span class="description">特定のチャンネルに誰かがJOINする度に特定のメッセージを発言する。</span></div>
<div class="content">
<p class="comment">
Auto::Aliasを有効にしていれば、エイリアス置換を行ないます。<br />
</p>
<p class="comment">
発言を行なうチャンネルと、その内容を定義します。<br />
#(nick.now)と$(channel)は、それぞれ相手の現在のnickとチャンネル名に置換されます。<br />
<br />
書式: <チャンネル名> <発言内容><br />
</p>
<div class="element"><span class="key">channel</span>:<span class="value">#チャンネル@ircnet 「#ちゃんねる」に移転しました。</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::MesMail" class="module">
<div class="module-header"><h2 title="伝言をメールとして送信する。">Auto::MesMail</h2>
<span class="description">伝言をメールとして送信する。</span></div>
<div class="content">
<p class="comment">
メールアドレスはエイリアスの mail を参照します。<br />
</p>
<p class="comment">
Fromアドレス。[default: OSのユーザ名]<br />
</p>
<div class="element"><span class="key">from</span>:<span class="value">example1@example.jp</span></div>
<p class="comment">
送信用のキーワード [default: mesmail_send]<br />
</p>
<div class="element"><span class="key">send</span>:<span class="value">速達伝言</span></div>
<p class="comment">
使用を許可する人&チャンネルのマスク。<br />
例はTiarraモード時。 [default: なし]<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* +*!*@*</span></div>
<p class="comment">
[plum-mode] mask: +*!*@*<br />
</p>
<p class="comment">
maskで拒否されたときのメッセージ [default: なし]<br />
</p>
<div class="element"><span class="key">deny</span>:<span class="value">伝言したくない。</span></div>
<p class="comment">
一度に送れる宛先の量 [default: 無制限]<br />
</p>
<div class="element"><span class="key">max-send-address</span>:<span class="value">5</span></div>
<p class="comment">
宛先を探すエイリアスエントリ [default: なし]<br />
</p>
<div class="element"><span class="key">alias-key</span>:<span class="value">name</span></div>
<div class="element"><span class="key">alias-key</span>:<span class="value">nick</span></div>
<p class="comment">
宛先の人を判別出来なかったときのメッセージ [default: なし]<br />
</p>
<div class="element"><span class="key">unknown</span>:<span class="value">#(who)さんと言うのは誰ですか?</span></div>
<p class="comment">
メールの日付形式<br />
</p>
<div class="element"><span class="key">date</span>:<span class="value">%H:%M:%S</span></div>
<p class="comment">
エイリアスは見付かったけれどメールアドレスが登録されていなかったときのメッセージ。 [default: なし]<br />
</p>
<div class="element"><span class="key">none-address</span>:<span class="value">#(who)さんはアドレスを登録していません。</span></div>
<p class="comment">
SMTPのホスト [default: localhost]<br />
</p>
<div class="element"><span class="key">smtphost</span>:<span class="value">localhost</span></div>
<p class="comment">
SMTPのポート [default: smtp(25)]<br />
</p>
<div class="element"><span class="key">smtpport</span>:<span class="value">25</span></div>
<p class="comment">
SMTPで自ホストのFQDN [default: localhost]<br />
</p>
<div class="element"><span class="key">smtpfqdn</span>:<span class="value">localhost</span></div>
<p class="comment">
SMTPのユーザ。指定されれば SMTP Auth を行う [default: なし]<br />
</p>
<div class="element"><span class="key">smtpuser</span>:<span class="value">example1</span></div>
<p class="comment">
SMTPのパスワード [default: 空パスワード('')]<br />
</p>
<div class="element"><span class="key">smtppass</span>:<span class="value">test-password</span></div>
<p class="comment">
送信するメールの既定件名(エイリアス使用不可) [default: Message from IRC]<br />
</p>
<div class="element"><span class="key">subject</span>:<span class="value">Message from IRC</span></div>
<p class="comment">
送信するメールの本文 [default: #(date) << #(from.name|from.nick|from.nick.now) >> #(message)]<br />
</p>
<div class="element"><span class="key">format</span>:<span class="value">#(date)に#(from.name|from.nick|from.nick.now)さんから#(message)という伝言です。</span></div>
<p class="comment">
送信したときのメッセージ。 [default: なし]<br />
</p>
<div class="element"><span class="key">accept</span>:<span class="value">#(who)さんに#(message)と伝言しておきました。</span></div>
<p class="comment">
---- POP before SMTP の指定 ----<br />
POP before SMTPを使う。 [default: no]<br />
</p>
<div class="element"><span class="key">use-pop3</span>:<span class="value">yes</span></div>
<p class="comment">
POP before SMTPのタイムアウト時間(分)。分からない場合は指定しなくて良い。 [default: 0]<br />
</p>
<div class="element"><span class="key">pop3-expire</span>:<span class="value">4</span></div>
<p class="comment">
POPのホスト。 [default: localhost]<br />
</p>
<div class="element"><span class="key">pop3host</span>:<span class="value">localhost</span></div>
<p class="comment">
POPのポート。 [default: pop(110)]<br />
</p>
<div class="element"><span class="key">pop3port</span>:<span class="value">110</span></div>
<p class="comment">
POPのユーザ [default: OSのユーザ名]<br />
</p>
<div class="element"><span class="key">pop3user</span>:<span class="value">example1</span></div>
<p class="comment">
POPのパスワード [default: 空パスワード('')]<br />
</p>
<div class="element"><span class="key">pop3pass</span>:<span class="value">test-password</span></div>
<p class="comment">
---- エラーメッセージの設定 ----<br />
</p>
<p class="comment">
一般エラー。<br />
error-[state] と言う形式で詳細エラーメッセージを指定できる。<br />
[state]は、<br />
* mailfrom(メールの送信者を指定しようとしてエラー)<br />
* rcptto(メールの送信先を指定しようとしてエラー)<br />
* norcptto(メールの送信先が全部無くなった)<br />
* data(メールの中身を送信しようとしてエラー)<br />
* finish(メールの中身を送信したらエラー)<br />
がある。特に欲しくなければerror-[state]は指定しなくても構わない。<br />
メッセージを出したくないなら中身の無いエントリを指定すれば良い。<br />
error-[state]が指定されてない場合は代わりに error を使う。 [default: 未定義]<br />
</p>
<div class="element"><span class="key">error-rcptto</span>:<span class="value"></span></div>
<div class="element"><span class="key">error-norcptto</span>:<span class="value">#(who)さんには送れませんでした。送信できるメールアドレスがありません。</span></div>
<div class="element"><span class="key">error-data</span>:<span class="value">メールが送信できません。DATAコマンドに失敗しました。#(line;サーバ応答:%s|;)</span></div>
<div class="element"><span class="key">error</span>:<span class="value">メール送信エラーです。#(line;サーバ応答:%s|;)#(state; on %s|;)</span></div>
<p class="comment">
致命的なエラー。メールに個別なエラーではないので送信者(のprefix)毎に1メッセージ送られる。<br />
fatalerror-[state]<br />
[state]:<br />
* first(接続エラー)<br />
* helo(SMTPセッションを開始出来ない)<br />
がある。特に欲しくなければfatalerror-[state]は指定しなくても構わない。<br />
メッセージを出したくないなら中身の無いエントリを指定すれば良い。<br />
fatalerror-[state]が指定されてない場合は代わりに fatalerror を使う。 [default: 未定義]<br />
</p>
<div class="element"><span class="key">fatalerror-first</span>:<span class="value">SMTPサーバに接続できません。</span></div>
<div class="element"><span class="key">fatalerror</span>:<span class="value">SMTPセッションで致命的なエラーがありました。#(line; サーバ応答:%s|;)#(state; on %s|;)</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Notify" class="module">
<div class="module-header"><h2 title="名前が呼ばれると、その発言をim.kayac.comに送信する">Auto::Notify</h2>
<span class="description">名前が呼ばれると、その発言をim.kayac.comに送信する</span></div>
<div class="content">
<p class="comment">
反応する人のマスクを指定します。<br />
省略すると全員に反応します。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
反応するキーワードを正規表現で指定します。<br />
複数指定したい時は複数行指定してください。<br />
</p>
<div class="element"><span class="key">regex-keyword</span>:<span class="value">(?i:fugahoge)</span></div>
<p class="comment">
反応するキーワードを指定します。<br />
複数指定したい時は,(コンマ)で区切るか、複数行指定してください。<br />
</p>
<div class="element"><span class="key">keyword</span>:<span class="value">hoge</span></div>
<p class="comment">
メッセージのフォーマットを指定します。<br />
デフォルト値: [tiarra][#(channel):#(nick.now)] #(text)<br />
#(channel) のかわりに #(raw_channel) を利用するとネットワーク名がつきません。<br />
</p>
<div class="element"><span class="key">format</span>:<span class="value">[tiarra][#(channel):#(nick.now)] #(text)</span></div>
<p class="comment">
使用するブロックを指定します<br />
</p>
<div class="element"><span class="key">blocks</span>:<span class="value">im prowl</span></div>
<div class="block element"><span class="block key">im</span>
<div class="block content">
<p class="comment">
通知先のタイプを指定します。<br />
</p>
<div class="element"><span class="key">type</span>:<span class="value">im_kayac</span></div>
<p class="comment">
im.kayac.comで登録したユーザ名を入力します。<br />
im.kayac.comについては http://im.kayac.com/#docs を参考にしてください。<br />
</p>
<div class="element"><span class="key">user</span>:<span class="value">username</span></div>
<p class="comment">
im.kayac.comで秘密鍵認証を選択した場合は設定してください。<br />
省略すると認証なしになります。<br />
</p>
<div class="element"><span class="key">secret</span>:<span class="value">some secret</span></div>
<p class="comment">
im.kayac.comでパスワード認証を選択した場合は設定してください。<br />
省略すると認証なしになります。<br />
secret と両方指定した場合は secret が優先されています。<br />
</p>
<div class="element"><span class="key">password</span>:<span class="value">some password</span></div>
</div></div>
<div class="block element"><span class="block key">prowl</span>
<div class="block content">
<p class="comment">
通知先のタイプを指定します。<br />
</p>
<div class="element"><span class="key">type</span>:<span class="value">prowl</span></div>
<p class="comment">
通知先ごとにフォーマットを指定できます。<br />
この例では先頭に時刻を追加しています。<br />
</p>
<div class="element"><span class="key">format</span>:<span class="value">#(date:%H:%M:%S) [#(channel):#(nick.now)] #(text)</span></div>
<p class="comment">
Prowl で表示された apikey を入力します。<br />
Prowl については http://prowl.weks.net/ を参考にしてください。<br />
</p>
<div class="element"><span class="key">apikey</span>:<span class="value">XXXXXX</span></div>
<p class="comment">
http://forums.cocoaforge.com/viewtopic.php?f=45&t=20339<br />
</p>
<div class="element"><span class="key">priority</span>:<span class="value">0</span></div>
<div class="element"><span class="key">application</span>:<span class="value">tiarra</span></div>
<div class="element"><span class="key">event</span>:<span class="value">keyword</span></div>
</div></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Oper" class="module">
<div class="module-header"><h2 title="特定の文字列を発言した人を+oする。">Auto::Oper</h2>
<span class="description">特定の文字列を発言した人を+oする。</span></div>
<div class="content">
<p class="comment">
Auto::Aliasを有効にしていれば、エイリアス置換を行ないます。<br />
</p>
<p class="comment">
+oを要求する文字列(マスク)を指定します。<br />
</p>
<div class="element"><span class="key">request</span>:<span class="value">なると寄越せ</span></div>
<p class="comment">
チャンネルオペレータ権限を要求した人と要求されたチャンネルが<br />
ここで指定したマスクに一致しなかった場合は<br />
denyで指定した文字列を発言し、+oをやめます。<br />
省略された場合は誰にも+oしません。<br />
書式は「チャンネル 発言者」です。<br />
マッチングのアルゴリズムは次の通りです。<br />
1. チャンネル名にマッチするmask定義を全て集める<br />
2. 集まった定義の発言者マスクを、定義された順にカンマで結合する<br />
3. そのようにして生成されたマスクで発言者のマッチングを行ない、結果を+o可能性とする。<br />
例1:<br />
mask: *@2ch* *!*@*<br />
mask: #*@ircnet* *!*@*.hoge.jp<br />
この例ではネットワーク 2ch の全てのチャンネルで誰にでも +o し、<br />
ネットワーク ircnet の # で始まる全てのチャンネルでホスト名 *.hoge.jp の人に+oします。<br />
#*@ircnetだと「#hoge@ircnet:*.jp」などにマッチしなくなります。<br />
例2:<br />
mask: #hoge@ircnet -*!*@*,+*!*@*.hoge.jp<br />
mask: * +*!*@*<br />
基本的に全てのチャンネルで誰にでも +o するが、例外的に#hoge@ircnetでは<br />
ホスト名 *.hoge.jp の人にしか +o しない。<br />
この順序を上下逆にすると、全てのチャンネルで全ての人を +o する事になります。<br />
何故なら最初の* +*!*@*が全ての人にマッチするからです。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
+oを要求した人を実際に+oする時、ここで指定した発言をしてから+oします。<br />
#(name|nick)のようなエイリアス置換を行います。<br />
エイリアス以外でも、#(nick.now)を相手のnickに、#(channel)を<br />
そのチャンネル名にそれぞれ置換します。<br />
</p>
<div class="element"><span class="key">message</span>:<span class="value">了解</span></div>
<p class="comment">
+oを要求されたが+oすべき相手ではなかった場合の発言。<br />
省略されたら何も喋りません。<br />
</p>
<div class="element"><span class="key">deny</span>:<span class="value">断わる</span></div>
<p class="comment">
+oを要求されたが相手は既にチャンネルオペレータ権限を持っていた場合の発言。<br />
省略されたらdenyに設定されたものを使います。<br />
</p>
<div class="element"><span class="key">oper</span>:<span class="value">既に@を持っている</span></div>
<p class="comment">
+oを要求されたが自分はチャンネルオペレータ権限を持っていなかった場合の発言。<br />
省略されたらdenyに設定されたものを使います。<br />
</p>
<div class="element"><span class="key">not-oper</span>:<span class="value">@が無い</span></div>
<p class="comment">
チャンネルに対してでなく自分に対して+oの要求を行なった場合の発言。<br />
省略されたらdenyに設定されたものを使います。<br />
</p>
<div class="element"><span class="key">private</span>:<span class="value">チャンネルで要求せよ</span></div>
<p class="comment">
チャンネルの外から+oを要求された場合の発言。+nチャンネルでは起こりません。<br />
省略されたらdenyに設定されたものを使います。<br />
</p>
<div class="element"><span class="key">out</span>:<span class="value">チャンネルに入っていない</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Outputz" class="module">
<div class="module-header"><h2 title="チャンネルの発言文字数を outputz に送信する">Auto::Outputz</h2>
<span class="description">チャンネルの発言文字数を outputz に送信する</span></div>
<div class="content">
<p class="comment">
復活の呪文。<br />
</p>
<div class="element"><span class="key">key</span>:<span class="value">some secret</span></div>
<p class="comment">
送信対象にするコマンドの設定。<br />
省略された場合は PRIVMSG 。<br />
パラメータ1が送信先、パラメータ2が本文でなければ動作しないので、<br />
動作するコマンドは PRIVMSG/NOTICE/TOPIC/PART 程度。<br />
</p>
<div class="element"><span class="key">command</span>:<span class="value">PRIVMSG</span></div>
<p class="comment">
各チャンネルのURIの設定。<br />
記述された順序で検索されるので、全てのチャンネルにマッチする"*"などは最後に書かなければならない。<br />
フォーマットは次の通り。<br />
channel: <URI> (<チャンネル名> / 'priv')@<ネットワーク名><br />
#(channel) はチャンネル名に、 #(channel_short) はネットワークなしの<br />
チャンネル名に、 #(network) はネットワーク名にそれぞれ置き換えられる。<br />
また、危険な文字は自動的にエスケープされる。<br />
</p>
<div class="element"><span class="key">channel</span>:<span class="value">http://#(network).irc.example.com/#(channel_short) *</span></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Random" class="module">
<div class="module-header"><h2 title="特定の発言に反応してランダムな発言をします。">Auto::Random</h2>
<span class="description">特定の発言に反応してランダムな発言をします。</span></div>
<div class="content">
<p class="comment">
Auto::Aliasを有効にしていれば、エイリアス置換を行ないます。<br />
</p>
<p class="comment">
使用するブロックの定義。<br />
</p>
<div class="element"><span class="key">blocks</span>:<span class="value">wimikuji</span></div>
<div class="block element"><span class="block key">wimikuji</span>
<div class="block content">
<p class="comment">
ランダムに発言するメッセージの書かれたファイルと、その文字コードを指定します。<br />
ファイルの中では一行に一つのメッセージを書いて下さい。<br />
</p>
<div class="element"><span class="key">file</span>:<span class="value">random.txt</span></div>
<div class="element"><span class="key">file-encoding</span>:<span class="value">euc</span></div>
<p class="comment">
反応する発言を表すマスクを指定します。<br />
</p>
<div class="element"><span class="key">request</span>:<span class="value">ゐみくじ</span></div>
<p class="comment">
メッセージの登録数を返答するキーワードを指定します。<br />
</p>
<div class="element"><span class="key">count-query</span>:<span class="value">ゐみくじ登録数</span></div>
<p class="comment">
メッセージの登録数を返答するときの反応を指定します。<br />
formatで指定できるものと同じです。#(count)は登録数になります。<br />
</p>
<div class="element"><span class="key">count-format</span>:<span class="value">ゐみくじは#(count)件登録されています。</span></div>
<p class="comment">
ランダムなメッセージを発言する際のフォーマットを指定します。<br />
エイリアス置換が有効です。#(message)、#(nick.now)、#(channel)は<br />
それぞれメッセージ内容、相手のnick、チャンネル名に置換されます。<br />
何も登録されていないときのために、#(message|;無登録)のように指定すると良いでしょう。<br />
</p>
<div class="element"><span class="key">format</span>:<span class="value">#(name|nick.now)の運命は#(message)</span></div>
<p class="comment">
反応する人のマスク。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
plum: mask: *!*@*<br />
</p>
<p class="comment">
メッセージが追加されたときの反応を指定します。<br />
formatで指定できるものと同じです。#(message)は追加されたメッセージになります。<br />
</p>
<div class="element"><span class="key">added-format</span>:<span class="value">#(name|nick.now): ゐみくじ #(message) を追加しました。</span></div>
<p class="comment">
メッセージが削除されたときの反応を指定します。<br />
formatで指定できるものと同じです。#(message)は削除されたメッセージになります。<br />
</p>
<div class="element"><span class="key">removed-format</span>:<span class="value">#(name|nick.now): ゐみくじ #(message) を削除しました。</span></div>
<p class="comment">
発言に反応する確率を指定します。百分率です。省略された場合は100と見做されます。<br />
</p>
<div class="element"><span class="key">rate</span>:<span class="value">100</span></div>
<p class="comment">
メッセージを追加するキーワードを指定します。<br />
ここで指定したキーワードを発言すると、新しいメッセージを追加します。<br />
実際の追加方法は「<addで指定したキーワード> <追加するメッセージ>」です。<br />
</p>
<div class="element"><span class="key">add</span>:<span class="value">ゐみくじ追加</span></div>
<p class="comment">
メッセージを削除するキーワードを指定します。<br />
実際の削除方法は「<removeで指定したキーワード> <削除するキーワード>」です。<br />
</p>
<div class="element"><span class="key">remove</span>:<span class="value">ゐみくじ削除</span></div>
<p class="comment">
addとremoveを許可する人。省略された場合は誰も変更できません。<br />
</p>
<div class="element"><span class="key">modifier</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
plum: modifier: *!*@*<br />
</p>
</div></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Reply" class="module">
<div class="module-header"><h2 title="特定の発言に反応して発言をします。">Auto::Reply</h2>
<span class="description">特定の発言に反応して発言をします。</span></div>
<div class="content">
<p class="comment">
Auto::Aliasを有効にしていれば、エイリアス置換を行ないます。<br />
</p>
<p class="comment">
使用するブロックの定義。<br />
省略すると std を使用.<br />
複数個の blocks の指定も可能.<br />
</p>
<div class="element"><span class="key">blocks</span>:<span class="value">std</span></div>
<div class="block element"><span class="block key">std</span>
<div class="block content">
<p class="comment">
1つの応答ブロックの定義.<br />
一応全ての項目が省略可能ではあるけれど,<br />
通常は最低限 file と file-encoding を使用する.<br />
IRCで応答の追加削除等を行いたいときにはそれに更に設定を追加する形.<br />
(IRC上で応答の追加削除は行うが保存はしない時に限ってfileを省略可能.)<br />
</p>
<p class="comment">
機能:<br />
- 通常応答(mask)<br />
- 登録数確認(count-query/mask)<br />
- 反応確認(request/modifier)<br />
- 反応追加(add/modifier)<br />
- 反応削除(remove/modifier)<br />
通常応答以外は設定を省略することで機能を無効にできます。<br />
</p>
<p class="comment">
データファイルと文字コードを指定します。<br />
ファイルの中では一行に一つの"反応マスク:メッセージ"を書いて下さい。<br />
</p>
<div class="element"><span class="key">file</span>:<span class="value">reply.txt</span></div>
<div class="element"><span class="key">file-encoding</span>:<span class="value">euc</span></div>
<p class="comment">
1つの発言で複数の反応マスクにマッチする場合,<br />
どれにマッチするかは未定義です.<br />
ただ, どちらか1つにのみマッチします.<br />
</p>
<p class="comment">
同じ反応マスクに複数個のメッセージが記述してあった場合の処理.<br />
multivalue: random #==> ランダムに1つ選択.<br />
multivalue: all #==> 全て返す.<br />
multivalue: seq #==> 順番に1つずつ返す.<br />
省略時及び認識できなかったときは random.<br />
</p>
<div class="element"><span class="key">multivalue</span>:<span class="value">random</span></div>
<p class="comment">
返す最大行数.<br />
multivalue: all の時のみ有効.<br />
(それ以外の時は1行しか返さない)<br />
デフォルトは 5 行まで.<br />
</p>
<div class="element"><span class="key">multivalue-limit</span>:<span class="value">5</span></div>
<p class="comment">
反応する人のマスク。<br />
通常応答と登録数の返答時にチェックされる。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
plum: mask: *!*@*<br />
</p>
<p class="comment">
マッチした1つの反応マスクが実際に発言に反応する確率を指定します。<br />
百分率です。省略された場合は100と見做されます。<br />
</p>
<div class="element"><span class="key">rate</span>:<span class="value">100</span></div>
<p class="comment">
メッセージの登録数を返答するキーワードを指定します。<br />
省略するとこの機能は無効になります。<br />
指定したときだけこの機能が有効になります。<br />
mask で許可された人(通常応答を返す人)が使えます。<br />
</p>
<div class="element"><span class="key">count-query</span>:<span class="value">反応登録数</span></div>
<p class="comment">
メッセージの登録数を返答するときの反応を指定します。<br />
formatで指定できるものと同じです。#(count)は登録数になります。<br />
count-query を指定したときのみ必要。<br />
</p>
<div class="element"><span class="key">count-format</span>:<span class="value">反応は#(count)件登録されています。</span></div>
<p class="comment">
メッセージを追加するキーワードを指定します。<br />
ここで指定したキーワードを発言すると、新しいメッセージを追加します。<br />
実際の追加方法は「<addで指定したキーワード> <追加するメッセージ>」です。<br />
省略するとこの機能は無効になります。<br />
指定したときだけこの機能が有効になります。<br />
modifier で許可された人だけ使えます。<br />
</p>
<div class="element"><span class="key">add</span>:<span class="value">反応追加</span></div>
<p class="comment">
反応が追加されたときの反応を指定します。<br />
formatで指定できるものと同じです。#(message)は追加されたメッセージになります。<br />
</p>
<div class="element"><span class="key">added-format</span>:<span class="value">#(name|nick.now): #(key) に対する反応 #(message) を追加しました。</span></div>
<p class="comment">
メッセージを削除するキーワードを指定します。<br />
実際の削除方法は「<removeで指定したキーワード> <削除するキーワード>」です。<br />
省略するとこの機能は無効になります。<br />
指定したときだけこの機能が有効になります。<br />
modifier で許可された人だけ使えます。<br />
</p>
<div class="element"><span class="key">remove</span>:<span class="value">反応削除</span></div>
<p class="comment">
メッセージが削除されたときの反応を指定します。<br />
formatで指定できるものと同じです。#(message)は削除されたメッセージになります。<br />
</p>
<div class="element"><span class="key">removed-format</span>:<span class="value">#(name|nick.now): #(key) #(message;に対する反応 %s|;) を #(count) 件削除しました。</span></div>
<p class="comment">
反応の確認を行うためのキーワードを指定します。<br />
通常応答と違って, multivalue-limit の制限を受けずに全てのマッチした応答を返します。<br />
実際の指定方法は、「<requestで指定したキーワード> <チェックしたい発言>」です。<br />
省略するとこの機能は無効になります。<br />
指定したときだけこの機能が有効になります。<br />
modifier で許可された人だけ使えます。<br />
</p>
<div class="element"><span class="key">request</span>:<span class="value">反応チェック</span></div>
<p class="comment">
request に反応するときのフォーマットを指定します。<br />
#(key) がキーワード、 #(message) が発言に置換されます。<br />
request を指定したときのみ必要。<br />
</p>
<div class="element"><span class="key">reply-format</span>:<span class="value">「#(key)」という発言に「#(message)」と反応します。</span></div>
<p class="comment">
request に反応する最大個数(反応マスクの数)を指定します。<br />
(1つの反応マスクに対応するメッセージの数は制限されません。)<br />
あまり大きな値を指定すると、アタックが可能になったり、ログが流れて邪魔なので注意してください。<br />
通常の反応には関与しません。また、応答の行数ではありません。<br />
</p>
<div class="element"><span class="key">max-reply</span>:<span class="value">5</span></div>
<p class="comment">
編集系コマンド, add とremove と request を許可する人。<br />
省略された場合は「* *!*@*」(全員許可)と見做します。<br />
</p>
<div class="element"><span class="key">modifier</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
正規表現拡張を許可するか。省略された場合は禁止します。<br />
</p>
<div class="element"><span class="key">use-re</span>:<span class="value">1</span></div>
</div></div>
</div>
</div>
<hr class="sep" />
<div id="module-Auto::Response" class="module">
<div class="module-header"><h2 title="データファイルの指定にしたがって反応する。">Auto::Response</h2>
<span class="description">データファイルの指定にしたがって反応する。</span></div>
<div class="content">
<p class="comment">
大量の反応データを定義するのに向いています。<br />
</p>
<p class="comment">
データファイルのフォーマット<br />
| pattern: re:^(こん(に)?ちは)<br />
| rate: 90<br />
| mask: * *!*@*<br />
| #plum: mask: *!*@*<br />
| response: こんにちは。<br />
| response: いらっしゃいませ。<br />
|<br />
| pattern: おやすみ<br />
| rate: 20<br />
| response: おやすみなさい。<br />
patternは一行しか書けません。(手抜き<br />
maskもrateも省略できます。省略した場合はmaskは全員、rateは100となります。<br />
responseは複数書いておけばランダムに選択されます。<br />
</p>
<p class="comment">
データファイル<br />
</p>
<div class="element"><span class="key">file</span>:<span class="value">response.txt</span></div>
<p class="comment">
文字コード<br />
</p>
<div class="element"><span class="key">charset</span>:<span class="value">euc</span></div>
<p class="comment">
使用を許可する人&チャンネルのマスク。<br />
</p>
<div class="element"><span class="key">mask</span>:<span class="value">* *!*@*</span></div>
<p class="comment">
plum: mask: +*!*@*<br />
</p>
</div>
</div>
</div>
<div class="pane-sidebar">
<ul class="menu">
<li><a href="#module-Auto::Alias" title="ユーザエイリアス情報の管理を行ないます。">Auto::Alias</a></li>
<li><a href="#module-Auto::Answer" title="特定の発言に反応して対応する発言をする。">Auto::Answer</a></li>
<li><a href="#module-Auto::Calc" title="Perlの式を計算させるモジュール。">Auto::Calc</a></li>
<li><a href="#module-Auto::ChannelWithoutOper" title="チャンネルオペレータ権限がなくなってしまったときに発言する。">Auto::ChannelWithoutOper</a></li>
<li><a href="#module-Auto::FetchTitle" title="発言に含まれるURLからタイトルを取得.">Auto::FetchTitle</a></li>
<li><a href="#module-Auto::FetchTitle::Plugin::ExtractHeading" title="本文から見出しを抽出するFetchTitleプラグイン.">Auto::FetchTitle::Plugin::ExtractHeading</a></li>
<li><a href="#module-Auto::FetchTitle::Plugin::Mixi" title="Mixiにログインして見出し抽出出来るようにするFetchTitleプラグイン.">Auto::FetchTitle::Plugin::Mixi</a></li>
<li><a href="#module-Auto::Im" title="名前が呼ばれると、その発言をim.kayac.comに送信する">Auto::Im</a></li>
<li><a href="#module-Auto::Joined" title="特定のチャンネルに誰かがJOINする度に特定のメッセージを発言する。">Auto::Joined</a></li>
<li><a href="#module-Auto::MesMail" title="伝言をメールとして送信する。">Auto::MesMail</a></li>
<li><a href="#module-Auto::Notify" title="名前が呼ばれると、その発言をim.kayac.comに送信する">Auto::Notify</a></li>
<li><a href="#module-Auto::Oper" title="特定の文字列を発言した人を+oする。">Auto::Oper</a></li>
<li><a href="#module-Auto::Outputz" title="チャンネルの発言文字数を outputz に送信する">Auto::Outputz</a></li>
<li><a href="#module-Auto::Random" title="特定の発言に反応してランダムな発言をします。">Auto::Random</a></li>
<li><a href="#module-Auto::Reply" title="特定の発言に反応して発言をします。">Auto::Reply</a></li>
<li><a href="#module-Auto::Response" title="データファイルの指定にしたがって反応する。">Auto::Response</a></li>
<li><a href="../module-toc.html">モジュール一覧に戻る</a></li>
</ul>
</div>
</body>
</html>
|