ユーザー:Crazycomputers/WatchlistBot

新しい Web 管理インターフェイス。多くのウォッチリスト操作が簡素化されます。

WatchlistBot は、ユーザーがWikipedia のウォッチリストに似た (しかし別個の) ウォッチリストを管理できるようにするXMPP ボットです主な違いは、ユーザーの WatchlistBot ウォッチリストのページが変更されると、IM クライアントを通じて編集内容が直ちに通知されることです。

WatchlistBot を使用したい場合は、ユーザーページに {{ User:Crazycomputers/Userbox/WatchlistBot }} を配置して、このプロジェクトについて他の人に知らせることができます。

ウォッチリストのエントリのタイプ

記事
記事が編集されるたびに警告が表示されます。
ユーザー
ユーザーが編集を実行するたびに警告が表示されます。
通信網
ネットワーク内の IP アドレスが編集を実行するたびに警告が表示されます。
ホワイトリスト
ホワイトリストに登録されたユーザーによって実行された編集は決して報告されず、他のタイプのウォッチリスト エントリはすべて上書きされます。

ウォッチリストエントリー仕様

すべてのウォッチリスト エントリは共通の構文で指定できますが、エントリの種類ごとに若干の違いがあります。

  • 記事、ユーザー、およびネットワークの場合:裸の名前 (例: 「Wikipedia:Sandbox」)。これにより、変数に従って、デフォルトの Wiki 上の指定された項目が監視されます。
  • 記事、ユーザー、およびネットワークの場合: Wiki 修飾名 (例: "{en.wikipedia}Wikipedia:Sandbox")。これにより、指定された Wiki 上の指定されたアイテムが監視されます。
  • 記事の場合:視聴する記事の URL。Wiki 名は URL から抽出されます。(ユーザーの名前空間は削除されないため、この構文はユーザーの監視に使用できますが、使用しないでください。したがって、ユーザー "http://en.wikipedia.org/wiki/User:Crazycomputers" を監視しようとすると、最終的には、意図したターゲット「Crazycomputers」ではなく、ユーザー「User:Crazycomputers」(存在しません)を監視することになります。)

ネットワークはCIDR ブロック(表記xxx.xxx.xxx.xxx/nn )として指定する必要があります。上で示したように、「{ language.project}」接頭辞を使用して、このネットワークによる編集を監視する Wiki を指定できます。安全策として、ボットは長さが 16 ビット未満のネットワーク識別子を持つネットワークの監視を許可しません。

記事とユーザー名は、MediaWiki 独自の正規化アルゴリズムのサブセットを使用して正規化されますが、いくつかの例外があります。

  • 名前空間は理解されないため、「user:crazycomputers」を監視しようとすると、「User:crazycomputers」が監視されることになります。明らかに、これでは実際に結果は得られません。常に正確な項目名を指定してください。(これは、名前空間がプロジェクトごと、および言語ごとに異なるという事実によるものであり、私はちょっとした便宜のためにこのデータを常に微調整することに興味がありません。)
  • シャープ記号 (#) と末尾の文字はすべて削除されます。これは、セクションのリンクをたどったかどうかを気にせずに、URL をコピーして貼り付けることを簡単にすることを目的としています。
  • 記事名の無効な文字は削除されず、エラーは生成されません。必要に応じて、記事「<>{}:」をウォッチリストに自由に追加できます。
  • タイトルの最初の文字を大文字にすることが強制されていない Wiktionary のようなプロジェクトでは、ボットは自動大文字化も実行しません。

存在しない Wiki 上の項目を見ようとするとエラーが発生します。

使用法

WatchlistBot の使用を開始するには、 XMPP クライアントで[email protected]にサブスクリプション リクエストを送信します。ボットはこのリクエストを直ちに承認する必要があります。(これは電子メール アドレスではないことに注意してください。)

次に、「ヘルプ」というメッセージをボットに送信して、コマンドの概要を確認します。使用可能なコマンドもここに記載されています。

コマンドの解析

このボットは、 Bourne シェルで使用される解析アルゴリズムの非常に基本的なバージョンを使用します特に、一重引用符と二重引用符 ('") は特別なものとして扱われ、(必要に応じて) コマンド引数にスペースを簡単に埋め込むことができることに注意してください。\'タイトルにこれらの文字のいずれかが含まれている記事を見ようとしている場合は、先頭にバックスラッシュ (または)を付けてエスケープする必要があります\"そうしないと、タイトル内で一致する引用符が見つからない限り、ボットは引用符が適切に一致しなかったことを通知します。(もしそうなら、あなたが見たかった記事は見られなくなります。)

例えば:

article add Don't Let Me Down
次のエラーで失敗します: Unable to parse arguments: unterminated '
article add Don\'t Let Me Down
時計は私を失望させないでくださいバックスラッシュは、アポストロフィを文字どおりに解釈することを強制します。
article add "Don't Let Me Down"
『ドント・レット・ミー・ダウン』も見ていますアポストロフィは二重引用符の間にあるため、文字通りに解釈されます。
article add "Weird Al" Yankovic
「奇妙なアル」ヤンコビッチへのリダイレクトである「奇妙なアル・ヤンコビッチ」を監視します(二重引用符はパーサーによって使用されます。)
article add \"Weird Al\" Yankovic
引用符をエスケープして「奇妙なアル」ヤンコビッチを監視します。
article add '"Weird Al" Yankovic'
一重引用符で囲まれた文字列に引用符を埋め込んで、「奇妙なアル」ヤンコビッチを監視します。

これらのルールは馴染みがないかもしれません。存在する場合は、代わりに URL をコピーして貼り付けることを検討してください。すべてのブラウザは一重引用符をパーセント エンコードし、コマンド パーサーが一重引用符を特別に扱うことを防ぎます。ほとんどのブラウザでは二重引用符もエンコードされていますが、これは技術的に必須ではないため、URL でページを監視する最も安全な方法は、URL を一重引用符で囲むことです。例えば:

article add 'http://en.wikipedia.org/wiki/"Weird_Al"_Yankovic'
「奇妙なアル」ヤンコビッチを鑑賞

Web インターフェイスの「クイック追加」フォームを使用することもできますが、これにはこれらの解析ルールが適用されません。(ボット「web」に Web インターフェイスにログインするように指示します。)

コマンド

について

ボットのバージョンとクレジットを表示します。

記事

閲覧した記事のリストを管理します。「追加」フォームはエントリを追加し、「変更」は既存のエントリのオプション (コメントなど) を変更し、「削除」はエントリを削除し、「リスト」は現在のエントリをすべて表示します。

(action パラメータは完了を条件とするため、たとえば「remove」の場合は「r」で十分です。)

構文:

記事 <追加|変更> [--comment="コメント"] <項目>
記事の削除<アイテム>
記事一覧

編集者

監視している編集者のリストを管理します。詳細については、記事のコマンドを参照してください。

構文:

エディター <追加|変更> [--comment="コメント"] <項目>
エディター <項目> を削除します
エディターリスト

ヘルプ

これらのコマンドの概要を表示します。

通信網

監視されているネットワークのリストを管理します。詳細については、記事のコマンドを参照してください。

ネットワークは CIDR 表記で指定する必要があります。同等のネットワークは 1 つのエントリとして扱われるため、127.0.0.0/16 を監視している間にネットワーク 127.0.255.255/16 を監視しようとすると、これらは同じネットワークを表すため、エラーが発生します。同様に、127.0.0.0/16 がウォッチリストにあるときに 127.0.255.255/16 を削除しようとすると、127.0.0.0/16 が削除されます。

構文:

ネットワーク <追加|変更> [--comment="コメント"] <項目>
ネットワーク削除 <アイテム>
ネットワークリスト

セット

変数を設定または表示します。次の表に、使用可能な変数のリストとその機能を説明します。

変数 タイプ デフォルト 説明
言語 jp デフォルトのプロジェクト言語。
プロジェクト ウィキペディア デフォルトのプロジェクト名。

構文: set [<変数><設定>]

統計

いくつかの動作統計を表示します。

  • ボットが最後に再起動されたとき。
  • ボットが再起動されてから送信された通知の数。
  • IRC 接続が現在稼働しているかどうか、稼働している期間、現在の接続中およびボットの再起動以降に処理された変更の数。
  • 各通知者が起動している時間。(このコンテキストでの「稼働中」は、通常、「サーバーに接続されている」ことを意味します。したがって、XMPP 通知機能がダウンしている場合は、ボットが XMPP サーバーに接続されていないことを意味します。このコマンドを実行している場合を除き、これは表示されません。もちろん、別のチャット ネットワークです)。

構文:統計

ウェブ

Web ベースのウォッチリスト管理インターフェイスへの認証リンクを要求します。リンクは 5 分後に期限切れになり、リンクをリクエストすると以前のリンクはすべて無効になります。(セッションは 5 分後に期限切れになるのではなく、認証リンクのみが期限切れになることに注意してください。)

Web インターフェイスでは、ウォッチリスト項目の一括削除、項目コメントの一括変更、項目の単一追加、および項目の一括追加が可能です。項目指定子は、ボットが使用するものと同じウォッチリスト エントリ仕様構文に従って解析されます。

ホワイトリスト

ホワイトリストに登録された編集者のリストを管理します。詳細については、記事のコマンドを参照してください。

構文:

ホワイトリスト <追加|変更> [--comment="コメント"] <項目>
ホワイトリスト削除 <項目>
ホワイトリストリスト

問題の報告

利用不可

ボットがオンラインではない場合、私のトーク ページに問題を報告しても、私はあなたの報告について警告するメッセージを受け取らないため、迅速な応答は得られません。私に連絡するための最良の方法は、私が公開しているリアルタイム通信方法のいずれかを使用することです。

アップデートを適用するためにボットを頻繁に再起動するため、ダウンタイムが 1 ~ 2 分を超えない限り、私に報告する必要はありません。通常、これには数秒しかかかりません。より長いダウンタイムが必要な場合は、このページの上部にあるステータス メッセージを変更します。

バグ

バグを報告するには、このページのトーク ページを使用してください。可能であれば、コミット識別子を含めてください。コミット識別子は、「about」コマンドを実行するか、Web インターフェイスにアクセスすることで取得できます。(ボットがダウンしている場合でも、Web インターフェイスは通常は応答します。) これは、当時使用していた特定のバージョンに対するテスト環境で問題を再現するのに役立ちます。

ハウリングについての注意

ユーザーとネットワークを監視する機能は、追跡を支持するものとして解釈されるべきではありません。これらの機能は、問題のあるユーザーやネットワークを監視する際に、破壊行為対策部隊を支援するために提供されています。これらの機能を悪用すると、ボットへのアクセスが取り消される可能性があります。

プラットホーム

プライバシー

ボットの開発者およびオペレーターとして、私は必然的に全員のウォッチリストに完全にアクセスできます。私はこの情報をできる限り機密に保ちます。プライバシーが心配な場合は、次の 2 つの点に注意してください。

  1. あなたが Web インターフェースを使用しない限り、私はあなたの IP アドレスを知りません。
  2. あなたの Wikipedia アカウント名は、それがあなたの IM ハンドルの一部であるか、あなたが自分のユーザーページ (他のユーザーページではなく) を見ている場合を除き、わかりません。

免責事項

WatchlistBot によって配信される情報の正確性または適時性については、まったく保証しません。情報が配信されなかったり、誤って配信されたりした場合でも、お客様は私に責任を負うことはできません。本サービスの利用、利用不能、または不具合によって生じた損害については、当社は一切の責任を負わないものとします。ウォッチリストの内容や IM ハンドルの漏洩など、発生する可能性のあるデータ セキュリティ侵害について、お客様は私に責任を負うことはできません。