Unity アフィリエイトのレポーティングページで購入されたアセットを見る Chrome 拡張

Web ServiceUnity

Unity アフィリエイト プログラム のレポーティングページで、何のアセットが購入されたか見たいので、購入されたアセットが見れる Chrome 拡張を作ってみました。まだレポートの総数が少ないので、きちんと対応しているかわかりませんが。

レポーティングページで見れる「コンバージョンアイテム」の「SKU」の値、「assetstore_package_83912」などの末尾の数値が、アフィリエイトのリンクに含まれる数値と一致しています。この値を抽出して、アフィリエイトのウィジェットを表示します。

こんな感じです。

実現する Chrome 拡張のファイルは次のような感じです。

Timer で定期的に HTML を確認し、assetstore_package_ 形式の値を見つけたら、ウィジェットをページ下部に表示します。


const timer = setInterval(timer_tick, 500);
var prevId;
var div = document.createElement("div");
var body = document.getElementsByTagName("body")[0];
body.appendChild(div);
function timer_tick() {
var result = document.documentElement.innerHTML.match(/assetstore_package_(\d+)/);
if (!result) return;
var id = result[1];
if (prevId === id) return;
div.innerHTML = '<iframe src="https://api.assetstore.unity3d.com/affiliate/embed/package/' + id + '/widget-wide-light?aid=1011l478Q" style="width:600px; height:130px; border:0px;"></iframe>';
prevId = id;
}

view raw

script.js

hosted with ❤ by GitHub


{
"name": "Show Asset Widget",
"version": "1.0",
"manifest_version": 2,
"description": "Show Unity asset widget on Unity Affiliate reporting page.",
"content_scripts": [
{
"matches": [
"https://console.partnerize.com/v2/reporting/perform",
"https://console.partnerize.com/v2/reporting/performance"
],
"js": [
"script.js"
]
}
]
}

view raw

manifest.json

hosted with ❤ by GitHub

GitHub

Chrome で使うには、2個のファイルをフォルダーに保存し、Chrome で「chrome://extensions/」を表示して「パッケージ化されていない拡張機能を読み込む」ボタンでフォルダーを参照して拡張機能を有効にします。

また、Unity アフィリエイト プログラムのアフィリエイト プロバイダーの Performance Horizon Group(Partnerize) の利用規約を見ると、個人的・非商用目的以外の目的でコンテンツの改変しないこととあるので、このような拡張機能も個人的に勝手にする分には問題ないように思います。

You may not copy, reproduce, republish, disassemble, decompile, reverse engineer, download, post, broadcast, transmit, make available to the public, or otherwise use partnerize.com content in any way except for your own personal, non-commercial use. You also agree not to adapt, alter or create a derivative work from any partnerize.com content except for your own personal, non-commercial use.
About the terms

Web ServiceUnity

Posted by jz5