iksm_session取得ツール

Hack

iksm_sessionとは

イカリング2で使われる認証用の文字列のこと。

専門的な言い方をすればセッションクッキーのことで、これが漏れると第三者にイカリング2でできることを全て乗っ取られてしまいます。

まあイカリング2でできることといえばゲソタウンで注文したりとか、プレイヤーを通報したりとかその程度なんですが洩れないに越したことはありません。

取得方法

Windowsでiksm_sessionを取得できるツールを作成したので是非試してみてください。

外部APIの規約上、iksm_sessionだけを習得するツールの開発は良くないので、サーモンランのリザルトアップローダの機能の一つとしてiksm_session再生成機能をつけています。

なので、iksm_sessionを取得しようとするとサーモンランのリザルトがサーバにアップロードされる点はご留意ください。

実行するとこんな画面がでてブラウザがひらくと思うので、ikaWidgetのようにログインします。

ログインしたら「この人にする」で右クリックしてリンクをコピーします。

コピーしたリンクを貼り付けてエンターキーを押すとiksm_sessionの生成が始まります。

ちょっと時間(10秒くらい)かかるのでおとなしく待ちます。

config.jsonというファイルが書き込まれていたらiksm_sessionの生成成功です。

ファイルをひらくとiksm_sessionとsession_tokenが保存されているはずなのでご自由にご利用ください。

ブラウザでイカリングを見る

iksm_sessionの利用方法の一つにブラウザでイカリングをみるということがあります。

クッキーを設定するためにEditThisCookieというプラグインが必要なのでインストールしよう。

EditThisCookie
EditThisCookie is a cookie manager. You can add, delete, edit, search, protect and block cookies!

イカリング2のサイトにアクセスすると…

Forbidden

アクセスが禁止されているForbiddenが表示されます。

EditThisCookie

EdhitThisCookieを見るとよくわからない値が設定されていると思うので、ここの値を後述する方法で取得したiksm_sessionに書き換えます。

書き換えたらチェックボタンを押します。

イカリング2が見れた!

無事、イカリング2がパソコンから見ることができました!

ikasでつかう

ikasではWindowsからikaWidget2のようにリザルトを見ることができます。

自動でiksm_sessionを取得することもできますが、手動で設定したほうが簡単だと思います。

SalmonRecでつかう

サーモンランのリザルト集計ツールであるSalmonRecはiksm_sessionを入力することでデータを保存することができます。

ただ、一日SalmonRecを使わないでいるとiksm_sessionの有効期限が切れてしまうのがちょっとめんどくさいですね。

一度有効期限が切れてしまうと再びPCでiksm_sessionを取得して、設定しなければいけないので。

あと、記録がアプリからしかみれず他の人と共有するためにはスクリーンショットをいちいち取らなければいけないです。

Salmoniaでつかう

SalmoniaはSalmonRecと違ってリザルトをブラウザから誰でも見ることができます。

ちなみにぼくのリザルトは以下のURLから見ることができます。

Salmon Stats

また、iksm_sessionの自動取得にも対応しているので有効期限が切れたから再取得という手間もありません。

ぜひぜひ使ってみてください。

コメント

  1. 匿名 より:

    こんにちは
    iksm_session.exeのリンクをクリックすると404 Not foundになってしまいますが、
    対処法はありますでしょうか?

    • えむいー より:

      ライセンス上の問題からiksm_sessionだけを習得するためだけに外部APIを使用するのが良くなかったので非公開にしていました。
      サーモンランリザルト取得ツールであるSalmoniaの機能の一つとしてiksm_sessionを生成するものがあるのでもし良ければこちらをご利用ください。

      twitterアカウントとの連携が必要ですが、ユーザ識別のためだけに使うので自動投稿などは一切ありませんし、なんなら捨てアカウントを使っていただいても結構です。
      ※ただし、ツールを起動時にサーモンランのリザルトがアップロードされる点だけはご留意ください

  2. anz より:

    config.jsonというファイルを開くのに必要なソフトを教えていただくことはできるでしょうか?
    こちらPC初心者のため、いろいろ試したのですが開けませんでした。

    • えむいー より:

      config.jsonの中身はただのテキストファイルですのでメモ帳などでも開けます。

      ※右クリックからプログラムから開くでメモ帳選択などでいけます

  3. anz より:

    メモ帳で開いてみましたが、以下のような文字列がでてきます。
    恐らく違うと思うのですが・・・
    iksm_sessionとはどのような文字列なのでしょうか?

    {
    “iksm_session”: “”,
    “session_token”: “”,
    “api-token”: “”,
    “job_id”: {
    “splatnet2”: 0,
    “salmonstats”: 0,
    “local”: 0
    },
    “api_errors”: 0
    }

    • えむいー より:

      ファイル自体はあっていますよ。iksm_sessionは1~9までの数字と、abcdefのアルファベットで構成される文字列です。

  4. anz より:

    お忙しいなか、お返事をいただきありがとうございました。
    何度か試してもおっしゃるような文字列が現れないので断念します;;

    いつも有用で面白い記事をありがとうございます!

    • えむいー より:

      Salmoniaを単に起動するだけではiksm_sessionは発行されませんよ?

      解説動画があるのでもし良ければ見てみてください。

  5. anz より:

    解説動画の通りに進めたところ、無事取得することができました。ありがとうございます!

    取得したiksm_sessionはSquidTracksに用いたのですが、バトルの記録は登録されるのですがサーモンランの記録はありません。
    SquidTracksにはサーモンランのデータを記録することはできないのでしょうか?
    statinkにサーモンランの記録を登録するためには別のアプリを使用する必要があるのでしょうか

    • えむいー より:

      statinkにサーモンランの記録を登録するアプリとしてはsplatnet2statinkがあります(こちらはサーモンランもガチマッチのどちらも登録できるはずです)。

      また、SalmonStatsというサーモンランに特化した専用の統計サイトもあるのでいろいろ検討してみてください。

  6. 匿名 より:

    Salmon Statsにはログインできたものの、configにiksm_sessionが生成されません・・・
    生成されないせいか、APIキーをSalmoniaに入力すると落ちてしまいます。

    • えむいー より:

      動作確認したところ正しくiksm_sessionが取得できたので、ツール側の不具合ではないと思います。

  7. 神瀬 来未 より:

    こんにちは、このsalmoniaのソースコードは公開されていますか?
    自分の戦績を自動管理したいなと思っていて自分でAPIを叩くプログラムを作成したいと思っているのですが…
    どうやら、iksm-sessionの生成が大変らしくソースコードを公開されているようでしたら教えていただけると助かります…
    いきなりで失礼しました…

  8. えむいー より:

    はじめまして。はい、SalmoniaはOSSですので全てのソースコードをGitHub上で公開しています。

    Pythonは初学者なので稚拙なコードですが、iksm.pyをimportしてからiksm.get_cookie(session_token, LANG, VERSION)をcallすれば取得できます。


    何かわからないことがあればここのコメント欄なり、ツイッターなりで連絡していただけると幸いです。

    • 神瀬 来未 より:

      ご丁寧な返信ありがとうございます。
      Githubにて拝見させていただきました!
      ありがとうございます!ものすごく助かりました。

      ちなみに、iksm_sessionを取得後12時間使用せずに破棄された場合session_tokenから再度生成すると思うのですがiksm_sessionを失効しないように定期的に情報を取得するのと失効確認後にsession_tokenを使用し再度iksm_sessionを再生成するのではどっちのほうがいいとかありますでしょうか?
      軽く見た感じなのですがnintendo公式のAPIだけではなくいろいろ使用しているようなのであまりiksm_sessionを生成しないほうがいいとかありますでしょうか?

  9. えむいー より:

    御自分でプライベートなツールとしてiksm_sessionを保持し続けたいのであれば、例えばcronを使って定期実行するなどしてiksm_sessionの有効期限が切れないようにし続ける方が楽だと思います。

    session_tokenからiksm_sessionを再生するのは複数のAPIを経由しますが、任天堂の公式アプリのアップデートにより使えなくなることがあるためです。いざというときに「iksm_sessionが切れていたけど再生成ができなくなっている」という状況は困ると思われるので。

    • 神瀬 来未 より:

      なるほど…たしかに公開されていないAPIですしなにか変更された時に困らないですね…
      ありがとうございます!!
      ちなみにお聞きしたいのですが、最新の試合結果だけを常に監視してTwitterやSlackに投稿といったふうに別APIと連携して情報を横流しにしたいのですが最新の試合が終わったら通知して試合結果を取得するなどのAPIってあったりしますかね?…
      今のとこ何十秒かごとに過去50試合を常に取得して前の情報との比較で出力しようと思っているのですがこれだとAPIを24時間常に叩くのであまりよろしくないかなと思いまして…

  10. えむいー より:

    公式APIがブラウザベースで、最新のリザルトの通知を受け取るような公式APIはないですね。

    どうやっても数十秒起きにAPIを叩く必要があります。

    非公式APIでステージ情報を返すようなものもありますが、それらは同じような仕組みを使っていると考えられるので数十秒間隔があれば問題ない気がします。

    • 神瀬 来未 より:

      なるほど…
      ありがとうございます!!
      では、当初の予定のままで作成しようと思います。
      無事にiksm.pyからiksm_sessionの生成にも成功しました!本当にありがとうございました!!

    • 神瀬 来未 より:

      何度も失礼します。
      これは本当に報告みたいになってしまうのですがアプリのバージョンが1.8.0から1.9.0になりflapg側の対応待ちっぽいですね…
      まさかこう話している真っ最中にその事態が起きてしまうとは思っていませんでした…
      splatnet2statinkのほうはすぐに新アプリのヘッダーに変更したようですがAPI側がやはり対応しておらずまだ動かない感じでした…
      こういった際にはやはりもうアプリから出力されるアプリデータを引き抜くか通信内容を抜くしか取得方法はないですかね…
      まだまだ調べ途中なのですがAPIの仕様変更ではなくアプリの更新なので時間がかかるみたいなのを見かけまして簡単に解決できるものなのかなと思いまして。
      本当に報告みたいな感じになってしまい申し訳ありません!

タイトルとURLをコピーしました