Skip to content

付属文書(README)

masami edited this page Sep 5, 2018 · 8 revisions

2ch API extension for chaika - 付属文書(README)

使用上の留意事項

  • これは非公式(非公認)な 2ch API サポートです

    この 2ch API サポートソフトウェアは、2ch運営関係者の承認を受けたものではありません。そのため、2ch API へのアクセスに必要となる「鍵(キー)」が含まれておりません。

    このソフトの動作に必要な「鍵(キー)」は、使用者個人個人で入手した上で、以下に説明する設定画面にて入力(初期設定)する必要があります。

    このソフトの付属文書にはこの鍵の入手法に関わることは一切書かれていませんし、鍵の入手方法についての問い合わせには回答を致しかねます。

  • 2ch API は chaika の正式仕様ではありません

    この 2ch API サポートソフトウェアは chaika に元々から含まれていたものではありません。後から付け加えられたものです。

    少なくとも現時点においては、chaika では 2ch API はサポートしないという開発方針をとっています。このような状況を受け、これまで bbs2chreader/chaika に関わった開発者とは全く関係のない人物が開発したものです。

    chaika の現在の開発者であるnodaguti氏を含め、bbs2chreader/chaika の作成者・開発者・寄付者/貢献者とされる方々は、この 2ch API サポートソフトウェアの開発には一切関与しておりません。

初期設定のしかた

上の「使用上の留意事項」で説明したように、このソフトの動作に必要な鍵(キー)は、使用者個人で入手する必要があります。

動作に必要な鍵は AppKeyHMKey の2種類あり、この2つとも必要です。このほか、User-Agent の推奨設定値も鍵と一緒に(鍵ごとに)提示されているはずですので、これも確認しておいてください。

  1. 2ch API の設定画面を開きます。手順は以下のとおり:

    (chaikaのメニューから"オプション"を選択するなどして)chaikaの設定を開く → chaika設定ウィンドウ上部の「全般」をクリック → ウィンドウ内の「2ch API」グループにある「設定...」ボタンをクリック

  2. 「2ch API の設定」ウィンドウの上部にある「2ch API を使用する」にチェックを入れたあと、「認証」タブを選択します。
    その中にある「AppKey」と「HMKey」の欄に AppKeyHMKey を間違いの無いように入力します。

  3. 「認証」タブの隣にある「User-Agent」タブを選択し、「各状況で送信される User-Agent」の4つの欄に User-Agent の推奨設定値を入力します。
    これらは「Monazilla/1.00 (chaika/1.7.3)」のような短いテキスト(文字列値)で、ソフトウェア名を表すものです。設定の手引きとしては:

    • 「X-2ch-UA」 ‥‥ X-2ch-UA: と示されているものを入力。
    • 「通常(datUA)」 ‥‥ (dat)User-Agent: あるいは、ただ単に User-Agent: と示されているものを入力。
    • 「認証(authUA)」 ‥‥ (auth)User-Agent: とか (認証)User-Agent: と示されているものがあればそれを入力。もし無ければ「通常(datUA)」と同じものを入力。場合によってはこの値が (空) とか (無し) とか (no UserAgent) と示されていることもあり、この場合は空欄のままにしておく。
    • 「投稿(postUA)」 ‥‥ (post)User-Agent: とか (投稿)User-Agent: とか (書込)User-Agent: と示されているものがあればそれを入力。もし無ければ「通常(datUA)」と同じものを入力。この欄が空欄の状態では 2ch への書き込みができません。
  4. 以上の設定をすべて済ませたらテストをします。「状態・テスト」タブを選択し、「セッションID取得」ボタンをクリックしてください。

    • 「2ch API の認証に失敗しました」というメッセージが出たら、「セッションID取得」ボタンを数回クリックしてテストに成功するか試してみてください。
    • 「2ch API の認証は成功しました」というメッセージが出たら、実際に 2ch のスレッドをchaikaで読み込んでみて、スレッドの内容が正常に表示されるか確かめてください。スレッドが正常に表示されれば初期設定は終了です。

    「2ch API の設定」のその他の設定項目は、特に必要のない限り変更する必要はありません。これらの詳しい説明については、別文書である 設定項目の解説 を参照してください。

  5. 「セッションID取得」ボタンを何度クリックしてもテストが成功しない場合は:

    1. ネットワークの接続状態が正常か(2ch以外のサイトや2chスレッドのブラウザ表示がFirefoxで正常に見られるかどうか)を確かめること。
    2. AppKeyHMKey の入力内容に間違いがないか、特に文字数が正しいか、半角英数字以外の文字が混じっていないか確認すること。AppKeyHMKey は両方とも半角の英数字30文字です(2015/05/23現在)。
    3. 「2ch API の設定」ウィンドウの上部にある「ツール/ヘルプ」ボタンをクリック →「すべての設定を既定値に戻す」で、すべての設定を戻した上で、初期設定を最初からやり直してみる。
  6. 「2ch API の認証は成功しました」と出るが、2ch のスレッドをchaikaで読み込んで見ると「AppKey/HMKey 無効」と出る場合は:

    1. AppKeyHMKey の入力内容に間違いがないか、特に文字数が正しいか、半角英数字以外の文字が混じっていないか確認すること。AppKeyHMKey は両方とも半角の英数字30文字です(2015/05/23現在)。
    2. その AppKeyHMKey 自体が使えない鍵(無効化された鍵)である可能性があるので、AppKey HMKey User-Agent を別のものに変更して試してみる。

公式サイト(一次配布元)

chaika-api Wiki
https://github.com/masami-dev/chaika-api/wiki

利用条件・免責など

この 2ch API extension for chaika の使用・再利用の条件などについては chaika 本体に準じるものとします。MPL 1.1/GPL 2.0/LGPL 2.1 のいずれかのライセンスが定める条件に従ってください。

このソフトウェアは使用者各自の自己責任の上でご使用ください。このソフトウェアを使用した結果に対しては如何なる責任も負いません。

解析資料などを元にした非公式な実装なので、今後の2chの仕様変更などで動作しなくなる可能性も十分にあります。あしからずご承知置きください。

更新履歴

  • 2018/09/02 v0.14

    • 2ch.net の 5ch.net への移行に伴い、関係する設定項目のデフォルト値を変更しました。
      API 動作対象ドメインを 2ch.net 5ch.net bbspink.com に、API サーバーのホスト名を api.5ch.net へ変更しました。

    • User-Agent の設定値に Mozilla/3.0 以下を表す文字列が含まれる場合は警告を出すようにしました(5ch.net では Mozilla/3.0 以下が拒否されるため)。

  • 2017/04/23 v0.13

    • 設定画面に「詳細」タブを新設し、API・認証タブにあった API URL と 認証URL を詳細タブへ移動しました。API・認証タブは「認証」タブに名前変更しました。

    • 設定画面の詳細タブに「API対象ドメイン」の設定項目を追加しました。
      今までは固定されていた API 動作対象ドメイン 2ch.net bbspink.com を変更できるようにしました。2ch.net の掲示板ドメインが追加・変更された場合に対処するためのものです。

  • 2016/02/26 v0.12

    • 設定画面の非公開機能「設定をクリップボードから読み込み」を削除しました。
      設定画面の「ツール/ヘルプ」ボタンを Shift キーを押しながら開くと現れるこの項目は、「設定をファイルから読み込み」で読み込める形式のテキストをクリップボードから読み込んで復元するもので、鍵の有効性をチェックしたい場合などに設定値をまとめて簡単に入力するためのものでしたが、必要とされる状況はほとんどありませんでした。

    • chaika トラブルシューティング情報の設定値一覧で、表の横幅が広がらないように session_id を折り返して表示するように変更しました。

    • 将来的に廃止予定とされていて、今後新たな不具合の原因となりうる Javascript の要素(メソッドなど)について、前もって対策を行いました。そのほか、小規模な修正を行いました。

  • 2015/12/09 v0.11a

    • chaika-api wiki のオンラインヘルプを静的なHTMLファイルに変換して組み込みオフラインヘルプとし、設定ダイアログのメニューからはこのオフラインヘルプを開くように変更しました。

    • (chaika 1.8.x系のみ) FirefoxのJavascript言語仕様変更に伴う小規模な修正を行いました。

  • 2015/06/29 v0.11

    • 2015/06/18の2chの仕様変更でdat落ちが認識できなくなっていたのを修正しました。

    • 設定ダイアログのメニューにオンラインヘルプを開く項目を追加しました。

    • その他、小規模な修正を行いました。

  • 2015/05/23 v0.10

    • 専用の設定ダイアログを実装しました。

    • Ronin(旧2ちゃんねるビューア●)のアカウントを使っての過去ログ取得について、APIの認証時(セッションID取得時)にRoninのIDと秘密鍵も一緒に送信する方式に変更しました。
      こうすることで、過去ログも現行ログも1回のアクセスで取得できるようになり、過去ログ取得時のレスポンスが改善されます。

    • chaikaの「不具合報告テンプレート」と「トラブルシューティング情報」(chaika://support/) に、この 2ch API extension の各種状態が入るようにしました。

  • 2015/04/14 v0.06

    • Firefox を再起動させなくても、設定状態がすぐに動作に反映されるようにしました。

    • User-Agent の設定項目で、Firefox既定のUser-Agentを指定できるようになりました(上級者向け)。
      User-Agent の各設定項目に @Mozilla と設定すると、使用しているFirefoxが通常のWebアクセスで送信しているUser-Agentに自動的に置き換えられます。この @Mozilla のキーワードは大文字小文字の区別はありませんが、User-Agent 設定値の先頭にある必要があります。

  • 2015/04/03 v0.05

    • セッションIDの自動更新機能を組み込みました。また、datAPIサーバーから「セッションID 無効」を意味するエラーが返ってきた場合は、自動でセッションIDを再取得するようにしました。

    • 2ch API 特有のいくつかのエラーについて、わかりやすいメッセージをステータスメッセージとしてとして表示するようにしました。
      例えば、(旧)「エラー : 401」→(新)「API エラー : セッションID 無効」

    • chaika に Ronin(旧2ちゃんねるビューア●)のアカウントが設定されている時、Ronin のセッションIDを用いての過去ログの取得に対応しました。ただし、過去ログ倉庫側の不備により、一部の板では過去ログの取得ができない場合があります。この場合は「エラー : 404」と表示されます。

  • 2015/03/17 v0.02aテスト版

    • 書き込み時以外はcookieを送受信しないようにしました。
  • 2015/03/16 v0.02α

    • 書き込み投稿時のUser-Agentと認証時のUser-Agentを設定可能にしました。
  • 2015/03/13 v0.01α統合版

    • bbs2chreader/chaika 専用 Uploader に 845.zip/846.zip/847.zip の3つに別れてアップロードされていた内容を一つにまとめました。

    • 847.zipの小規模アップデートでの変更点
      認証やdat取得に毎回必要となる HMAC SHA-256 の計算を、外部モジュールの sha256.js に頼らず Firefox の内部コンポーネントを利用して計算するようにしました。

  • 2015/03/12 v0.01α

    • 設定画面が未実装だが、とりあえず実用レベルで動くようになったので公開。