同じURLを50枚のNFCステッカーに印刷し、50個の製品、50枚のポスター、あるいは50枚の名刺に貼ります。一週間後、誰かが当然の疑問を口にします。実際にタップされたのはどれなのか。そして何回なのか。
よくある答えはサーバーです。50個の固有リンクを生成し、すべてをバックエンドに向け、解析ソフトがヒット数を数えます。これは機能しますが、いまやあなたはインフラを運用し、その費用を払い、そのステッカーが存在し続けるかぎりオンラインであり続けることを当てにすることになります。
もっと簡単な方法があります - そしてその答えはずっとNFCチップの中にありました。多くのタグは自分自身のスキャン回数を数えられます。適切に設定すれば、タグは何回読み取られたか、そしてどの物理タグなのかを、バックエンドなしで教えてくれます。その仕組みと設定方法を紹介します。
NFCタップカウンターとは何か
購入できるNFCステッカーのほとんどは、NTAG21xファミリーのチップ - NTAG213、NTAG215、NTAG216 - を使っています。これらのチップには、あまり使われない小さな機能があります。内蔵カウンターです。タグが読み取られるたびに、カウンターは1つ増えます。それはアプリの中でもサーバーの上でもなく、チップのハードウェアの中にあります。
タグの走行距離計のようなものだと考えてください。車の走行距離計は、誰かが見ているかどうかに関係なく距離を数えます。NFCのカウンターも同じように読み取り回数を数えます。その数字は常にそこにあります。問題は、それをあなたに見せる仕組みが設定されているかどうかだけです。
それを行うのが、NFC.cool ToolsのNFCタップカウンター機能です。タグを一度だけ設定し、それ以降タグが自分のカウントを報告するようにします。数字を確認するために自分でタグをスキャンする必要はなく、他の人がタップするときにアプリがそばにある必要もありません。タグは自分だけでカウントし、報告します。
同じチップは固有のタグIDも持っています - 工場で焼き込まれたシリアル番号で、ネットワークカードのMACアドレスに少し似ています。タップカウンター機能はそれも表に出せます。それこそが、見た目が同じ50枚のステッカーを見分けられる理由です。
仕組みを、専門用語なしで
タップカウンターを有効にしてタグにコンテンツを書き込むと、アプリは巧妙なことをします。書き込む内容の中に、一連のプレースホルダ文字を埋め込むのです - カウントとIDの代役です。
そこから先はチップが残りを引き受けます。アプリ内のヘルプ画面はこう説明しています。アプリはコンテンツにプレースホルダバイトを埋め込みます。スキャンごとに、iPhoneが読み取る前にチップがそれらを現在のタップ数(およびタグID、またはその両方)で置き換えます。サーバーやインターネットは不要です。
つまり、タップのたびの流れはこうなります。誰かが自分の電話をタグに近づけます。チップが起動し、カウンターを1つ増やし、プレースホルダを本物の数字に置き換え、それからようやく完成したコンテンツを電話に渡します。タグをスキャンした電話は、プレースホルダを一度も見ません - ライブのカウントがすでに組み込まれた、完全なURLを見るのです。
設定をするのは一度だけです。最初の書き込みのあとは、タグは独り立ちします。すべてのタップで、すべての人に対して、すべての電話の上で、ステッカーの一生のあいだカウントし置き換え続けます。この流れの中でインターネットに触れるものは何もありません。カウントはチップの中で起こります。置き換えもチップの中で起こります。完成したURLを自分が管理するウェブサイトに向ければ、自分のサーバーがそのカウントの到着を見られます - ただしそれはあなたの選択であり、機能の必須条件ではありません。
これで何ができるか
自分で数えるタグは、実際の課題と結びつけるまでは気の利いた小技に聞こえるかもしれません。よくある4つを挙げます。
どの物理ステッカーがスキャンされたかを特定する。 これはこの記事の冒頭の50枚ステッカー問題です。すべてのタグに同じURLを貼り、タグIDをオンにすれば、それぞれのタップは、それが発生したまさにそのタグのシリアル番号を添えて届きます。管理するURLは1つ、それでも見分けられるタグは50枚です。
無料アクセスを制限する。 カウントはタップごとに一緒に運ばれるので、それに応じて動けます。最初の100回のスキャンはデモ版を受け取り、それ以降のスキャンは別の場所へリダイレクトされるキャンペーンを実施できます。限定生産では、カウンターがあなたの決めたしきい値を超えるまで、完全な特典を配れます。タグは、背後に登録システムを持たずに「早い者勝ち」を実現します。
エンゲージメントを計測する。 名刺、ポスター、製品の箱、ショーウィンドウにタグを貼れば、カウンターは静かなエンゲージメント指標になります。そのために解析パイプラインを構築しなくても、カードが2回タップされたのか200回タップされたのかがわかります。
真正性を証明する。 カウンターは常に増える一方で - 巻き戻すことはできません。増えるだけの数字は説得力のある偽造が難しく、そのため限定版や偽造防止チェックに役立ちます。本物のタグにはもっともらしく増えていく履歴があり、複製されたタグにはありません。
これらをいくつか組み合わせると、たとえばこうなります。ある作り手が、番号付きの製品ロットごとにタグを1つ入れ、すべて同じランディングページを指すようにします。タグIDは購入者がどの品を手にしているかを教え、カウントはその購入者が何回戻ってきたかを教えます。そしてカウントは増える一方なので、転売者が複製をこっそり本物として通すことはできません。アカウントもデータベースも月額請求もなし - ただチップが仕事をするだけです。
設定の手順
この機能はNFC.cool Toolsの中にあり、iPhoneとAndroidの両方で使えます。Pro(Platinum)サブスクリプションの一部なので、カウンター付きのタグを書き込むにはそれが必要です。
NFC.cool Toolsを開き、NFC Toolsセクションに移動して、NFCタップカウンターをタップします。
タグが配信する内容を選びます。URL、メール、SMS、またはショートカットです。(ショートカットはiOS限定です。「ショートカット」はAppleのアプリだからです。URL、メール、SMSは両方のプラットフォームで使えます。)
いつもどおりにその内容を作成します - リンクを入力し、メッセージを書き、ショートカットを選びます。
必要なスイッチをオンにします。NFCタップカウンターはライブのカウントを追加し、NFCタグIDはタグのシリアル番号を追加します。どちらか一方でも、両方でも使えます。
同じ内容を複数のタグにまとめてプログラムする場合は、一括書き込みをオンにすると、スキャナーが開いたままになり、タグを次々と書き込めます。
プレビューを確認します。代役の値を使ったサンプル出力を表示するので、書き込みを確定する前に、カウントとIDがどこに入るかを正確に確認できます。
NFCタグに書き込むをタップし、タグを電話の上部に近づけます。
これで設定は完了です。そこからタグは自立しています - タップする人すべてに対して、アプリのあるなしにかかわらず、自分でカウントし報告します。
いつかそれを止めたくなったら、アプリは既存のタグのカウンターをオフにできます。チップはライブの値を入れ込むのをやめますが、コンテンツは最後に書き込まれたとおりにタグ上に残ります。知っておくとよいこと。置き換えをオフにしたあとも、チップは内部でカウントを続けます - カウントが失われることはなく、ただ表示されなくなるだけです。
カウントとタグIDはどこに表示されるか
値がどこに入るかは、選んだコンテンツ種類によって決まります。両方のスイッチをオンにすると、タグIDとカウントが一緒に挿入されます - 先にID、次にカウントで、小さなxでつながれます。タグIDを049F50824F1390、カウントを000007とすると、種類ごとのビフォーアフターはこうなります。
URL:
https://example.com/pageはhttps://example.com/page?nfc=049F50824F1390x000007になりますメール本文:
こんにちは、私のカードです。はこんにちは、私のカードです。 049F50824F1390x000007になりますSMS本文:
ご注文を承りました!はご注文を承りました! 049F50824F1390x000007になりますショートカット入力:
log-entryはlog-entry 049F50824F1390x000007になります
値はきれいに付加されるので、コンテンツの残りの部分はふだんどおりに機能し続けます。片方のスイッチをオフにすれば、もう片方だけが得られます。カウントだけ(000007)、またはタグIDだけ(049F50824F1390)です。
ところで、なぜ7ではなく000007なのでしょうか。カウントは16進数 - 0から9まで、そしてAからFまで進む、16を基数とする数体系 - で書かれ、6桁にパディングされます。つまり000007は単純にそのタグの7回目のスキャンです。スキャン9を超えると文字が見え始めます。00000Aは10です。上限はFFFFFFで、およそ1600万回のスキャン - 実世界のほぼどんなタグが必要とするよりも余裕があります。タグIDはより長い16進数の文字列 - チップの7バイトの工場出荷時シリアル番号 - で、カウントと違って決して変わりません。
完成したURLを自分のウェブサイトに向ければ、サーバーはこれらの値をアドレスから直接読み取れます。カウントを記録する、しきい値と比較する、あるいはIDで一方のタグをもう一方から見分ける、といったことができます。
必要なタグ
この機能はチップに依存するので、タグが重要です。NFC.coolはタップカウンターについてNTAG213、NTAG215、NTAG216のチップをサポートします。これらは電話向けに売られている最も一般的なNFCステッカーなので簡単に見つかりますが、大量に買う前にチップの種類を確認するのがよいでしょう。機能が対応していないタグを使おうとすると、アプリは動かないものを書き込む代わりに警告します。
買いそろえたい場合は、おすすめのNFCタグのページに、私たちが実際に使い、テストしているNTAG216ステッカーを載せています。タグ選びが初めてなら、iPhone向けのさまざまなNFCタグの種類のガイドが、その違いをわかりやすく説明しています。
よくある質問
カウンターをリセットできますか。 いいえ。これはチップに組み込まれた一方向のカウンターで、増える一方です。これは意図的です - リセットできるカウンターは限定版や偽造防止チェックには役立ちません。新しいカウントが必要なら、新しいタグを使ってください。
カウントは誰でも読めますか、それとも自分だけですか。 誰でも読めます。タグをタップするすべての電話が、アプリのインストールの有無にかかわらず、カウントがすでに入った完成済みのコンテンツを受け取ります。それこそが狙いです - タグは自分自身について報告するのです。
あとでオフにできますか。 はい。アプリはチップがプレースホルダを置き換えるのを止められます。URLやメッセージはタグ上に残り、ライブ更新だけが止まります。チップは内部でカウントを続けます。
カウンターはプライベートですか。 カウントはサーバーではなくタグ上にあります。タグをタップした人はコンテンツの中のカウントを見ますが、そのコンテンツがあなたの管理するサーバーに送られる場合、それを見るのはそのサーバーだけです。タグIDは工場出荷時のシリアル番号であり、個人を特定する情報ではありません。
インターネットは必要ですか。 いいえ。カウントも置き換えも、どちらもチップの中で起こります。インターネットが関わるのは、書き込んだURLがウェブサイトを指している場合だけです。
使ってみる
NFCのタップを数えることは、かつては固有リンクと、それを集計するバックエンドを意味しました。NTAG21xのカウンターは、その必要条件を静かに取り除きます。タグが自分の集計を保持し、NFC.cool ToolsのNFCタップカウンター機能がそれをオンにします。
タグを書き込む前に、実際に動くところを見てみたいですか。タップカウンターのライブデモは、この記事が説明することをそのまま行うページです。そこを指すタグを書き込み、タップすると、チップが渡したスキャン回数とタグIDがページに表示されます。サーバーは介在せず、URLだけです。
iPhoneとAndroidで、NFC.cool Toolsとして今すぐ利用できます。NFCツールキット全体を見るには、NFCリーダー&ライター機能をご覧ください。