Category Archives: ウェブサービス

Boxcar経由でMacからiPhoneへ通知する

1
Filed under iPhone, Ruby, ウェブサービス
Tagged as , , ,

Growlの真骨頂

Growlには画面表示の通知だけではなくメール送信などによる通知もできると、先日のブログエントリ「ターミナルから(Growl)通知するコマンド」で書きました。
このGrowlについて調べていくうちにさらに面白い機能について知ることになったので、検証してみます。その機能とは、GrowlでiPhoneに通知する、というものです。

iPhoneアプリ:Boxcar

iPhoneに通知するために、Boxcarというサービス+アプリを使います。
Instant Notifications for Facebook, Twitter, Email and More! — Boxcar



iPhoneにはPush Notificationというプッシュシステムがありますが、Boxcarはそれを使ったサービスで、twitterや各種通知を一手に引き受けてくれるものです。

設定は簡単で、アプリをインストールし、その中でtwitterやfacebookなど各種サービスの設定をしておくだけで、通知をしてくれるようになります。Boxcarアプリ自体は起動していなくても、通知してくれます。

growlnotify to Boxcar(iPhone)

このBoxcarには、Growlとの連携サービスが組み込まれていて、growlnotifyというコマンドと、BoxcarというiPhoneアプリの組み合わせると、MacのターミナルからiPhoneに通知できるようになります。
iPhoneアプリをダウンロードし、サービスにサインアップします。これがBoxcarのサービスを使うためのアカウントとなります。
次に、アプリ内で”Add a Service” → “Growl”を選び、右上の[Save]を押します。
これでiPhone側の設定は完了!

次に、Macに戻り、システム環境設定のGrowlを開き、growlnotifyの表示スタイルにBoxcarを選び、Boxcar E-mail、passwordを入力します。

Verify Loginでアカウントを確かめて、Great!とでたら、「プレビュー」を押してみます。問題なければ、これで通知されます!

いろいろなシステムと連携した活用方法が考えられますね。

Boxcar API

Boxcarには、各種APIが用意されており、Ruby Gemsにも公式ライブラリがあったります。

これを使えば、Growlを使わずに直接Boxcarを叩けます!
自分で作ったウェブサービスを簡単にiPhoneのPUSH通知に対応させるときにはBoxcarの使用を検討することもアリかもしれません。


[AD]

↓マルチタッチには非対応だが、カメラ有りでAndroid 2.1が載っているので、ちょっとした開発に面白そう!

【Android 2.2】 Creative ZiiO 7 インチ Android タブレット 8GB ZO-7S8G-WT

【Android 2.2】 Creative ZiiO 7 インチ Android タブレット 8GB ZO-7S8G-WT

定価:¥ 19,800

Amazon価格:¥ 19,800

カテゴリ:Personal Computers

発売日:2010-12-18


↓iOS SDKのPush Notificationについての記事もあります!

iOS SDK Hacks ―プロが教えるiPhoneアプリ開発テクニック

著者/訳者:吉田 悠一 高山 征大 UICoderz

出版社:オライリージャパン( 2010-10-23 )

定価:¥ 2,520

Amazon価格:¥ 2,520

単行本(ソフトカバー) ( 196 ページ )

ISBN-10 : 4873114721

ISBN-13 : 9784873114729


↓Rubyのテクニックが詰まっている!!!

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

著者/訳者:Gregory Brown

出版社:オライリージャパン( 2010-03-26 )

定価:¥ 3,360

Amazon価格:¥ 3,360

大型本 ( 364 ページ )

ISBN-10 : 4873114454

ISBN-13 : 9784873114453


Lockerz, Plixi

0
Filed under ウェブサービス
Tagged as , ,

Lockerz

Lockerzというウェブサービスがある。

PTZ(”pointz”の略らしく、ポインツ、プッツと発音するらしい)という仮想通貨の流通を要にビジネスをしている会社。
10代〜30代をターゲットとしたコミュニティーサイトを中心としており、ユーザーは、ムービーを見たり、サイトを見たり、といった行動することでPTZを得られる。
集めたPTZは、それでモノを安く買うために使ったりもできる。(使うことでさらにPTZをゲット出来る)
3分ちょっとの動画を見て、最後にCAPTHAを入力すればPTZが入る。
100PTZだったり、30PTZだったり、見た回数とコンテンツの内容で変わるのかな。
そして、その中には、「The Homes」というLockerz限定配信のドラマもあったりして、ハマり要素は十分準備されている。

まぁ、ちょっと暇がある人なら、ソーシャルゲームで課金してしまうより、こっちで貯めようとするかもしれない。
「The Homes」、そんなに難しくない英語と、短いドラマということで、英語の勉強がてらポイントゲット、と考えると割と続けられそうだ。

ソーシャルプラットフォームの可能性

で、なぜLockerzを調べたかというのは、Twitter/Facebook向け写真投稿サイトPlixiがLockerzに買収された、というニュースが入ってきたからだ。

写真をアップして数PTZ入ってくるとしたら、それはLockerzユーザは使うだろうなぁ。
こういうポイント制、いろいろ日本でもあるとは思うけど、ソーシャルメディアの登場で毎日のウェブ滞在時間が増えてきた今、やっぱりそこと連携していくポイント制の魅力は大きいかも!と思った次第です。
例えば、facebookが同様のサービスを始めたら、、さらに滞在時間が増えそうで怖い。


[AD]

↓「isologue」の磯崎哲也氏が書いた起業読本。興味あり!

起業のファイナンス ベンチャーにとって一番大切なこと

著者/訳者:磯崎 哲也

出版社:日本実業出版社( 2010-09-30 )

定価:¥ 2,310

Amazon価格:¥ 2,310

単行本(ソフトカバー) ( 334 ページ )

ISBN-10 : 4534047576

ISBN-13 : 9784534047571


↓やっぱり、楽天ってすごいですよね。

楽天市場公式 ネットショップの教科書

出版社:インプレスR&D( 2007-09-10 )

定価:¥ 1,680

単行本(ソフトカバー) ( 208 ページ )

ISBN-10 : 4844324608

ISBN-13 : 9784844324607


twitterのタイムラインを取るrubyスクリプト

1
Filed under Ruby, ウェブサービス
Tagged as ,

twitterのタイムラインをガッツリ取得して、ローカルでそのデータをゴニョゴニョしたいな、と思いついて、ちょっと調べたら、簡単そうなライブラリがrubyにあることを知ったので、試してみました!

ruby用twitterライブラリ

ruby用twitterライブラリの存在を知ることが出来たのは、このページ「Greenbear Laboratory – Ruby Twitter Gem簡易リファレンス」のおかげです。このページを参考に作業を進めていきます。
その前に、次のコマンドでRubyGemsでtwitterに関係したライブラリを検索してみます。

$ gem search -r twitter
 
*** REMOTE GEMS ***
 
atok-twitter (0.1.0 x86-mswin32)
bcms_twitter_module (1.1.3)
devise-twitter (0.1.1)
(…略)
sml-twitter (0.7.3)
teejayvanslyke-twitter (0.6.11)
twitter (1.1.1)
twitter-auth (0.1.22)
twitter-auth-with-mongo-mapper (0.1.1)
(…以下略)

たくさん見つかりました!
atok-twitterなど気になるものもありますが、今回使うのは、最初に表示されたtwitterライブラリ(http://twitter.rubyforge.org/)。現在のバージョンは1.1.1の様子ですが、これをインストールします。
最新版をインストールするので、次のようにコマンドを叩きます。(Mac OS Xなので、sudoで実行)

$ sudo gem install twitter

寄り道:RubyGemsのアップデート

簡単にインストール出来た!と思ったら、自分の環境の場合、RubyGemsのバージョンが古いと言われましたので、次のコマンドでアップデートしておきます。

$ sudo gem update --system
Updating RubyGems
Updating rubygems-update
Successfully installed rubygems-update-1.4.2
Updating RubyGems to 1.4.2
Installing RubyGems 1.4.2
RubyGems 1.4.2 installed
File not found: README

OKだったみたいなので、再度上記コマンドを実行し、twitterライブラリをインストールします。

twitterライブラリを試してみる

問題なくインストール出来たら、下記のようなテキストファイルを testTwitter.rb として作成します。

1
2
3
4
require "rubygems"
require "twitter"
 
puts Twitter.user_timeline("octi").first.text

これで、上記テキストファイル保存し、次のコマンドを入力して実行してみます。

$ ruby testTwitter.rb
tweet for my test. (テスト中)<←ここに"octi"の最新のツイート>

出来ました!タイムラインを取るのは超簡単ですね!

その他の使い方や、詳しいライブラリリファレンスはこちら(http://rdoc.info/gems/twitter)

上記タイムラインの内容

上記メソッド Twitter.user_timeline で取れるのはつぶやきの配列(Array)なのですが、その1要素の中身を出力してみます。
このような使い方に便利なのはppメソッド。下記のコマンドの出力結果を、最後に記載しておきます。

1
2
3
4
5
require "rubygems"
require "twitter"
require "pp"
 
pp Twitter.user_timeline("octi").first

[AD]

↓Rubyでtwitter botを作る本。OAuth対応らしい。この本を参考にして、時間が空いたときに一つぐらいbotをつくっておきたいと思っています。

誰でもできるTwitter Botの作り方―人気キャラにつぶやかせる

出版社:イーグルパブリシング( 2010-07-23 )

定価:¥ 1,995

単行本(ソフトカバー) ( 192 ページ )

ISBN-10 : 486146188X

ISBN-13 : 9784861461880



↓ppメソッドで出力した結果。
Read More »

TomblooのYouTube対応を改良してみた

4
Filed under Firefoxアドオン, JavaScript, Mac, ウェブサービス
Tagged as , , , , , ,

Tombloo

Tomblooというとても便利なFirefoxアドオンがあります。
コンテキストメニューから選ぶだけで、見ているページをいい感じにウェブサービスに投稿出来るアドオンです。

私はこれでTumblrへの投稿を行っています。
文字列を選べばそれを引用として投稿でき、動画サイトならそれに適した形でプレビューなどを埋め込んでくれます。
インストール方法は、以下のリンク “tombloo.xpi” を右クリックし、 名前をつけてリンク先を保存でダウンロードしてください。ダウンロードされたファイルをFirefoxのウィンドウへドロップするとインストールがはじまります。

tombloo.xpi

追記:2010/08/18

tomblooの作者toさんがコメントされたように下記に書いたYouTubeでの問題への対応は、公開されているスクリプトに取り込まれました (github)

コミットされたコードも洗練されているので勉強になりますね。


情熱プログラマー ソフトウェア開発者の幸せな生き方

著者/訳者:Chad Fowler

出版社:オーム社( 2010-02-26 )

定価:¥ 2,520

Amazon価格:¥ 2,520

単行本(ソフトカバー) ( 200 ページ )

ISBN-10 : 4274067939

ISBN-13 : 9784274067938



YouTubeでの問題

注意:前述したように、2010/08/18現在、最新tombloo.xpiでは下記の問題は修正されていますが、技術メモとして残しておきます。
最近YouTubeのHTML形式が変わったりしてちょっと問題があったりしましたが、それについてはこちらのブログエントリ「TomblooからYouTube動画をpostできなくなった件 – FLYING」で紹介されているようにアドオンのJavaScriptソースをいじることで対応出来ました。
ただ、それでもいくつかのYouTube動画で、これでも対応しきれないところがあり、ちょっと気になっていましたので、原因を調べてみました。

調査、解決コード

問題が発生する動画ページは、例えば、この動画です。
他のページと何が違うのか、考えてみると、左上の動画投稿者の名前が入るべきところにバナーが入っています。そこのHTMLタグ取得に失敗してるのが原因と分かりました。

前述したブログでの修正内容を見て、修正すべきは次のファイルであると分かりました。
Windowsの場合は、
C:\Documents and Settings\(ユーザー名)\Application Data\Mozilla\Firefox\Profiles\(プロファイル名)\extensions\tombloo@brasil.to\chrome\content\library
Mac OS Xの場合は、
/Users/(ユーザー名)/Library/Application Support/Firefox/Profiles/(プロファイル名)/extensions/tombloo@brasil.to/chrome/content/library
にある、
31_Tombloo.Service.extractors.js
です。
このファイルの1230行目辺りを以下のように書き換えます。これで動作するようになりました。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  name : 'Video - YouTube',
  ICON : 'http://youtube.com/favicon.ico',
  check : function(ctx){
    return ctx.host.match('youtube.com');
  },
  extract : function(ctx){
    var author = $x('id("watch-username")');
    ctx.title = ctx.title.replace(/[\n\r\t]+/gm, ' ').trim();
    if( !author ){
      author = $x('id("watch-userbanner")');
      var t0 = author.href;
      var t1 = t0.match( /[^/]+$/ );
      var t2 = author.textContent.replace( /<img.*\/>/, t1 );
      return {
        type      : 'video',
        item      : ctx.title.extract(/ - (.*)/),
        itemUrl   : ctx.href,
        author    : t2,
        authorUrl : author.href,
      };
    }
    else{
      return {
        type      : 'video',
        item      : ctx.title.extract(/ - (.*)/),
        itemUrl   : ctx.href,
        author    : author.textContent,
        authorUrl : author.href,
      };
    }
  },
},

ちょっと強引に直していますが、まぁ、いいかな。


[AD]

↓YouTubeからUstreamへと、今、何かが変わりつつある。

USTREAM 世界を変えるネット生中継 (ソフトバンク新書)

著者/訳者:川井 拓也

出版社:ソフトバンククリエイティブ( 2010-05-19 )

定価:¥ 767

Amazon価格:¥ 767

新書 ( 200 ページ )

ISBN-10 : 479736016X

ISBN-13 : 9784797360165


↓ Make:ブランドのArduino本、面白そう!

Arduinoをはじめよう (Make:PROJECTS)

著者/訳者:Massimo Banzi

出版社:オライリージャパン( 2009-03-27 )

定価:¥ 2,100

単行本(ソフトカバー) ( 216 ページ )

ISBN-10 : 4873113989

ISBN-13 : 9784873113982