SORACOMの提供するCSVのご紹介

みなさまこんにちは。毎日SIMを焼いています。ソラコム片山です。

好きなSIMは標準サイズです(ちょっとカードが厚いので、焼き心地がいい)

はじめに

ソラコムリリース記念ブログも終盤戦に差し掛かり、素晴らしいエントリーが揃ってきました。ありがたい限りです。

私も自分な好きな機能について書こうと思い、先日のSORACOMデベロッパーカンファレンスでもLTでご紹介した「SORACOMイベントハンドラー」のエントリーを考えていましたが、実はイベントハンドラーの話はジャストインケースの松井さんにがっつり書かれてしまい、ネタがかぶってしまいました(ちなみに松井さんも、SORACOM Beamのネタをクラスメソッドの大瀧さんに書かれてイベントハンドラーネタにしたそうで、完全に玉突き事故状態です)

 

そんなわけで今朝、家で「何かいいネタないかな?」と相談したところ、「私の銀行口座の残高が減ったら通知されて、自動的にお金が振り込まれる仕組みとかいいんじゃない?」というとても嫌なイベントハンドラーのアイデアをもらいましたが、そもそもSORACOM関係ないということで、丁重にお断りしました。

 

ということで、SORACOMの機能でまだ紹介されていない部分のご紹介をしたいと思います。

やっぱりCSV

先日のLTでも、@manacatさんが「みんな大好きCSV」とおっしゃられていましたが、ご多分に洩れずSORACOMでもCSVを提供しています。

CSVは大きく分けて2つで、「データ使用量」と「利用料」の2つになります。

データ使用量

このCSVは、IMSI単位で使用したSORACOM AirおよびSORACOM Beamの使用量を取得するものです。コンソールでは、課金情報タブの下側に取得メニューがあります。

f:id:c9katayama:20151021183433p:plain画面からは、過去6ヶ月間(月ごと)もしくは過去90日間(日ごと)のいずれかを選べますが、APIを使用していただければ、unixtimeのfrom-toと月ごと/日ごと/詳細(分単位)の指定でデータを取得することができます。

以下はSORACOM AirCSV(日ごと)のサンプルです。項目は見ていただければ想像がつくと思いますが、各IMSIごと(SIMごと)に項目が分かれており、さらに日ごと、速度クラスごとに上り下りの通信バイト数とパケット数が取得できます。

f:id:c9katayama:20151021184627p:plain

 

SORACOM Beam(日ごと)の場合は、以下のようになります。

f:id:c9katayama:20151021185542p:plain

こちらもわかりやすいと思いますが、IMSIごと、日ごと、Beamのプロトコルのin/outごとに、通信カウントを取得することができます。

 

またいずれのCSVにも、CSV右側の方にいろいろな文字がひっついてきます。

これはタグとグループになっていて、すべてのタグおよびグループが項目名として列挙されており、タグ/グループがついたIMSIの行には、そのタグ/グループの値が入ります。

f:id:c9katayama:20151021192107p:plain

これを使っていただくと、所有者や部署単位での集計や、通信量の多いIMSIを見つけたりすることが簡単に行えます。

APIはこちらのリンクから確認できます( Air, Beam )

 

利用料

データ通信の利用料の明細を、月ごとにCSVを取得することができます。画面では同じく課金情報タブの「最新の請求予定額」および「過去の請求履歴」から取得できます。

f:id:c9katayama:20151021193327p:plain

f:id:c9katayama:20151021193417p:plain

 最新の請求予定額の部分は、当月の予定額が逐次計算されたものをCSVで取得することができます。また支払済の月については、確定したデータをCSVで取得することができます。

f:id:c9katayama:20151021193921p:plain

利用料についても、IMSIごと、日ごと、品目ごとに単価(unitPrice)、数量(quantity)、金額(amount)のデータが取得できます。

billItemNameというのが課金項目で、現在は以下のような項目があります。

basicCharge-{状態}

基本利用料。-ready(SIMを登録した状態)-active(通信可能状態) -inactive(休止状態)がそれぞれ 別で計算されます。

downloadDataCharge/uploadDataCharge-{速度クラス}-{時間}

上り下りのデータ通信料。速度クラス(s1.fastなど)ごとに分かれており、さらにdaytime(日中)とnighttime(夜間)ごとに分かれています。

quantityは通信バイト数、unitPriceは1byteごとの単価になっています。

docomoSMSCharge

SMS付きのSIMでSMSを利用した場合の料金。quantityがSMS送信数となっています。

soracomBeamRequestCharge-{in/out}{プロトコル}

SORACOM Beamの利用料。-inHttpなど、各プロトコルのin/outごとに明細になっています。quantityがBeamのリクエスト回数になります。

dataTrafficFreeTier

データ通信料の無料利用枠(30円まで)。金額がマイナスで表示されます。

soracomBeamRequestFreeTier

SORACOM Beamの無料利用枠(10万リクエストまで)。こちらも金額がマイナスで表示されます。

すべての項目には消費税がかかっていないため、請求額としては合算後に消費税を適用した金額となります。

 

なお、利用料のCSVについても、データ使用量と同じくIMSIごとにタグおよびグループが付与されていますので、部署や地域ごとに費用を算出したり、たとえば夜間だけやたらと利用の多いIMSIを見つけたりすることができます。

 

まとめ

結局「CSVのご紹介」という地味な内容となってしまいましたが、ぜひ上手くCSVをご活用頂ければと思います。

 

CSS Niteみたいな感じで「CSV Nite」とかやったら人来ますかね?私は行かないですが。