Twitterトレンド

/ Diary, Silverlight

昨日のTwitterマーキー表示、一巡した後の取得処理、改行コードのサプレス処理など諸々バグってたので修正。
で、ついでというわけではありませんが、最近対応したというTwitterトレンドの東京版が表示されるようにしてみました。
ちょっと字が小さい(つか、見えないだろ、これ…)ので、ツールチップ付き。
トレンドキーワードをクリックすると、ツイート群が流れます。

東京トレンドは http://api.twitter.com/1/trends/1118370.json でJSON形式のものが取得できるのですが、 api.twitter.com はクロスドメインアクセスに対応していないため、ブラウザ上のSilverlightからは呼び出せません。(OOBならオケ)
仕方ないので、PHPプロキシを設置してしのいでます。
ちなみに、検索用の search.twitter.com はプロキシなしで普通にアクセスできるのでお手軽に使えます。
アクセス制限はあると思いますが、最近の設定は不明。


そんなこんなで、ここ何日かトレンドに流れてくるキーワードを眺めてたりするのですが、診断某の結果が貼られているツイートや、フツーに時事ネタのRTなんかが多くて、正直あまり面白味を感じないのは自分がオッサンってことでせうか。
いずれにしても、大量にツイート吐いてる層は若年層がやたら多い印象。
巷で話題になっているキーワードのピックアップがトレンドの目的なのだろうけど、クラスタ規模があまりにも偏っている感が否めず。
トレンドキーワードを含むツイートの中身を見ても、Twitterの特性からして肯定的な無難なツイートが多かったりするので、まさに毒にも薬にもならない、みたいな…。
それでも、マーケティングとかやってる人から見れば、宝の山だったりするのかしらん?


Twitter検索結果をマーキー表示

/ Silverlight

何となくマーキー表示を試してみたくなって作ってみました。

下記の要領でHTMLに組み込むと、initparamsに指定したquery文字列で検索した結果をマーキー表示します。
10件単位で読み込んで、一巡すると最新を取得しにいきます。(なければループ)
ユーザ名クリックで該当メッセージがブラウザ表示されます。
アンカークリックにも対応してます。
ちょっとしたブログパーツっぽく使えるかと。
興味ある方は好きに使ってやってください。

つか、ブログパーツとして使えるようにすべく、外部ドメインからXAPファイルを認識させるのに、Apacheの.htaccessに「AddType application/x-silverlight-app xap」を追加しなきゃならないことを知るのに、半日ハマってたり…。
あと、少々CPU負荷が高めなので、PCスペックによっては微妙かもしれず。

でもって、隠し機能というわけではありませんが、ブラウザ外実行(OOB)にも対応してみました。
OOB実行時は、任意のキーワードで検索することができます。
右クリックでちゃちゃっとインストールして試してみてください。
ウィンドウ枠無しにするために権限昇格が必要になっちゃってますが、特に邪悪なコードは入っていませんので、ご安心をw


電力使用率ガジェット(v1.0.1)

/ Silverlight

電力使用率ガジェットをアップデートしました。


画像をクリックするとダウンロードできます

変更点は以下の通りです。
いずれも内部処理の細かな変更ですが、多少使い勝手が改善されると思います。

  • 日跨り時(0~1時台)におけるデータ取得時の期間指定を修正しました。
  • ネットワークがオフラインの場合、リトライした後にエラー画面が表示されるように変更しました。これにより、スリープ/休止状態からの復帰時にも正しくデータ表示されるようになります。
  • データに変更がない場合は再描画しないように変更しました。

電力使用率ガジェット

/ Silverlight

先日作った電力使用率表示アプリですが、少し整理してWindowsガジェットにしてみました。
Windows7でのみ動作確認していますが、たぶんVistaでも動くのではないかと。
ダウンロードはこちらからどうぞ。
zipを開いて、TepcoStatus.gadgetを実行するとインストールできます。


画像をクリックするとダウンロードできます

Windowsガジェットは初めてでしたが、Silverlight Sidebar Gadgetテンプレートを使って、見よう見まねで何とか仕上げた次第。

データ更新は10分間隔に行い、当日分の履歴をさかのぼって参照できるようになっています。(日跨り時は一時的にAPIが止まるようなので、最新時間帯のみの表示になります)
また、背景色をいくつかの中から選んで変えられるようにしてあります。

Silverlight製のガジェットは64bit版のサイドバーでは動かないので、64bit Windowsをご利用の場合は32bit版のサイドバーに切り替えてからお試しください。(タスクマネージャでsidebar.exeのプロセスを終了させて、Program Files(x86)Windows Sidebarsidebar.exeを起動すればオケ)


続・Silverlightでのレポーティング

/ Silverlight

というわけで、レポートのプレビュー画面サンプルを作ってみました。
メインの画面に貼り付けるパターンと、ChildWindowによるダイアログ表示の2パターン。
A4縦固定サイズですが、3種類のズーム表示に対応してみました。
ScrollViewerとViewBoxの組み合わせで実現しています。

コードは端折りますが、注意点としては、レポート定義として利用するUIElementは表示用と印刷用のインスタンスを別々に用意しておく必要があるようです。
プレビュー中のインスタンスを印刷用に使いまわそうとすると、画面に表示されている状態が反映されてプリンタ出力されてしまいました。

まぁ、ここまでやっておいて言うのもなんですが、複数ページのレポートといっても、一連のデータがダラーっと出力できるわけではなく、スクロールによるページ移動ができるわけでもないので、Silverlightでのレポートは単票形式のものだけにしておいたほうが無難そうな雰囲気。
ページングは複数の単票レポートを一括出力したいときにでも使うのかな、と。