avahiを導入してcliでIRKitを使用するまで
前のブログでも紹介しましたが、IRKitを購入しております。
とりあえず、おうちサーバから使えるか試してみようというログです。
実行環境
- ArchLinux 4.1.6-1-ARCH
- avahi 0.6.32rc-4 [installed: 0.6.32rc-1]
アドレスを調べる
IRKitはBonjourが動作しているので、ホスト名を調べてそのホスト名からアドレスを辿るという流れです。
sonoda moyashiki% avahi-browse "_irkit._tcp" + enp3s0 IPv4 irkitXXXX _irkit._tcp local
このコマンドから得られた[irkitXXXX]がホスト名となるわけですね。 ホスト名からアドレスを取得するためには以下のコマンドです。
sonoda moyashiki% avahi-resolve-address -n iRKitXXXX.local [~] irkitXXXX.local 192.168.2.255
これでIPアドレスが判明したので、APIを叩いてみます。 受信した赤外線信号を出力するAPIは、GET /messages です。 ちなみにAPIを叩くと受信した信号は消えてしまうのでもう一度送る必要があります。
sonoda moyashiki% curl "http://192.168.2.255/messages" -H "X-Requested-With: curl" [~] {"format":"raw","freq":38,"data":[17421,8755,1111,1111,1111,3341,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,3341,1111,3341,1111,1111,1111,1111,1111,1111,1111,1111,1111,3341,1111,1111,1111,1111,1111,3341,1111,3341,1111,3341,1111,3341,1111,3341,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,3341,1111,3341,1111,3341,1111,65535,0,23743,17421,4400,1111]}%
何故か自分の環境ではruby-irkitが動作しなかったのでcliで叩く方法を紹介しました… 一応DNS-SDのライブラリは動作しているので動くはずの想定なんですがね…
ライブラリが動作しているようなログが出てくるスクリプトを置いておきます。
IRKitを買ってスマホで一括管理をしたかった
表題の通り、IRKitを買いました。IRKitの詳しい説明は以下のリンクを見てもらえればわかりますが、一言で言うと「スマホ版学習リモコン」です。
IRKit - Open Source WiFi Connected Infrared Remote Controller
irkitが届いたぞい pic.twitter.com/9GOc5r5fgp
— moyashiki (@moyashiki) 2016, 2月 15
特徴としては、以下の通りです。
- 赤外線リモコンの信号を学習させることが出来る
- ネットワークと接続して、スマートフォンアプリから学習した信号を送ることが出来る(テレビのチャンネル変更など)
- APIが提供されていて、自分でリモコンアプリを作ることが出来る
セットアップ等も簡単で、MicroUSBを接続するだけで終了です。後は、スマホアプリからWifiの設定などを行う必要があります。自分は色も合っていたのでこちらのUSBケーブルを購入して使用しています。
iBUFFALO USB2.0ケーブル(A to microB) スリムタイプ ホワイト 1.2m BSMPC12U12WH
- 出版社/メーカー: バッファロー
- 発売日: 2012/04/28
- メディア: エレクトロニクス
- この商品を含むブログを見る
自分的には3番目の機能をメインで使いたいので買った次第です。自分で同じような機器は作ろうと思えば作れますが、3ヶ月ぐらいかかりそうです…
実際にアプリとして叩く場合はライブラリがあるのでそちらを使うと簡単そうです。
- GitHub - dameleon/node-irkit: Handling IRKit with node.js
- GitHub - shokai/ruby-irkit: IRKit Client for Ruby
このIRKitですが、受信した赤外線信号は機器では保持しません。なので、複数のスマホを使い分けている場合は都度信号の登録が必要ですね。そのあたりを上手く出来るアプリを作りたいなと考えています。
IRKit - iPhone,iPadを使って外出先からエアコン等の家電を操作できる学習リモコン
- 出版社/メーカー: maaash.jp
- メディア: エレクトロニクス
- この商品を含むブログ (1件) を見る
SinatraとActiveRecordとSQLiteを組み合わせて使うアプリを作る
業務でDBを使った軽いWebアプリを作りたいと感じましたので、作るまでの軌跡です。
なぜSinatra+ActiveRecordなのか
Railsだったら全部乗りで考えなくて作れるじゃないですか!!と思ったんですが、あまり動作に必要なモノを増やしたくなったからSinatraを選択しました。 DB周りもDataMapperとかSequelがシンプルで楽だと思われたんですが、自分がSQLをちゃんと理解していないのと、詰まったときにActiveRecordならknowledgeを見つけやすいかなと思いました。
やったこと
とりあえず作ったのでGistだけ書いておきます、詳細な解説は自分がもう一度見る機会があれば作りたいと思います。
内田彩 2nd LIVE 『Bloming!〜咲き誇れみんな〜』に参加してきて将来の希望が見えた
先週ぐらいに1.5公演に参加してきて、やっとこの日がやってきました。 一言で表すと、内田彩様の広い曲の幅が生で聞けて最高でした。
後から見返すと良かったしか書いてないので小学生の作文レベルですね…
開演前
Tシャツ等は1.5公演で購入してるので今回は見送る形で… 開演30分前に到着して、2ndうっちーブレードだけ購入しました。売り切れもニット帽な位だけだったので、一般的なのが欲しい方は入場前でも十分間に合う形みたいだったです。 会場限定くじも3等だったのでステッカーだけもらって入場しましたとさ。
今回は有料会員先行で当選したのですが、場所がアリーナB2だったのでうっちーが最高に近かったです!!(だいたい黄色のあたり)
これからも日々徳を積んで良い席が当たるように努力したいですね。
開演してから
セットリストはいろいろなニュースサイトに掲載されていますのでそちらから引用させていただきます。
内田彩 2ndLIVE「Blooming! ~咲き誇れみんな~」@有明コロシアム - セットリスト M-01 Blooming! M-02 スニーカーフューチャーガール M-03 Like a bird M-04 最後の花火 M-05 Go! My Cruising! M-06 Let it shine M-07 ハルカカナタ M-08 いざゆけ!ペガサス号 M-09 妄想ストーリーテラー M-10 Daydream M-11 泣きべそパンダはどこへ行った M-12 キックとパンチどっちがいい? M-13 Merry Go M-14 with you 【ENCORE】 En-01 ONE WAY En-02 Sweet Rain En-03 Growing Going En-04 アップルミント 【DOUBLE ENCORE】 En-05 Breezin’ En-06 Blooming!
改めて、2ndLIVE『Bloming!〜咲き誇れみんな〜』ありがとうございました**
来てくれたみんなの心に、少しでも、ふわっと花咲く瞬間があったらいいなと思いながら歌いました。
私の心は、満開に咲き誇りました*
心から感謝…!! pic.twitter.com/vmK3oVNcJ7
— 内田彩 (@aya_uchida) 2015, 12月 6
Blooming!
2ndアルバムといったらこの曲ですよね。内田彩様のMCを聞いてからこの曲を聴くといろいろとこみ上げてくる物があります。
最後の花火
前回はペンライトが青色だった気がするんですが今回は赤色ばっかりな気がします。 サビに後ろの電飾が花火のように動作していたのがすごいマッチしていて見とれてしまいました。
Go! My Crusing!
ここで花道に内田彩様が進出してきました。テンポも高く、コールもいっぱいある曲でテンションアゲアゲマックスでしたね。 この歌は聴いていると、よーしやるぞい!!みたいな感じになりますよね。
いざゆけ!ペガサス号
まさかの自転車で登場ですよ。嘘でしょって良いながら爆笑してました。 うっちーのビール飲みながら歌う伝説と方を並べる感じでしたね。
内田彩様の伝説が増えたな、、
ビール飲みながら歌うのと、自転車乗りながら歌うのやな
— moyashiki (@moyashiki) 2015, 12月 5
いざゆけ!ペガサス号!!
びゅーーーーーーーん!!どや!! pic.twitter.com/67pd2J032U
— 内田彩 (@aya_uchida) 2015, 12月 6
途中花道にも自転車で突撃してきたんですが、ステージから花道は傾斜があるのでスピードが出てそのまま落ちちゃうんじゃ無いかとひやひやしました…
しかも、帰るときに傾斜を乗り越えるのもふらふらしてヤバかったです。内田彩様最高ですね。
妄想ストリーテラー & Daydream
初披露の曲でした。妄想ストリーテラーはステージ上を動きながら、歌われていたのでカワイイし幻想的な曲調とも相まって良かったですね。
Daydreamで一番スゴいなーと思ったところが、後半で輪唱みたいになるところがあったんですが、そこを綺麗に歌えているところですね。
終演後
体力を使い果たして今日の内田綾様に感謝しながら電車で感動してました。 もともと文章力がない自分が酷くなるとこうなるのがよくわかる発言一覧です。
うっちー最高過ぎて死にそう
— moyashiki (@moyashiki) 2015, 12月 5
うっちぃいいいいい!!!!
— moyashiki (@moyashiki) 2015, 12月 5
ぜひ内田彩様の曲を聴いたことない人も聞いてみると自分に合う一曲がみるかるかもしれますよ
内田彩 1stソロライブ「アップルミント Baby, Are you ready to go?」 [Blu-ray]
- 出版社/メーカー: 日本コロムビア
- 発売日: 2015/09/30
- メディア: Blu-ray
- この商品を含むブログ (4件) を見る
- アーティスト: 内田彩
- 出版社/メーカー: 日本コロムビア
- 発売日: 2015/07/22
- メディア: CD
- この商品を含むブログ (2件) を見る
- アーティスト: 内田彩
- 出版社/メーカー: 日本コロムビア
- 発売日: 2014/11/12
- メディア: CD
- この商品を含むブログ (7件) を見る
内田彩 2nd LIVE Blooming! 追加公演 (1.5 Live) 参加して最高
2015年11月23日(月)に開催された【内田彩 2nd LIVE Blooming! 追加公演 】に参加してきました。通称、1.5ライブですね。感謝祭と違うのは当然ですが、やっぱり内田彩様ソロの曲はいろんなタイプがあって最高ですね!!!!
はじめに
自分が内田彩様のイベントに行くようになったのは、1st Liveのアップルミントからです。軽い気持ちで応募したメール会員先行に当たって新人研修中の金曜日にこっそりいった感じでしたね。 そこから、BDイベントやリリイベ、感謝祭に行くようになって、内田彩様の虜になりつつあるのです。
公演まで
物販
本当にお金が無くて*1物販は最低限度で押さえるつもりでした。それに、物販待機列がえげつない事がTwitter経由で流れてきたからです... とりあえず14時付近に現地到着して、Tシャツとタオルだけ買う形で望みました。1時間半ぐらいして無事に購入する事ができたのです。
三森すずこ様ほど押しているつもりはないので、缶バッチやパンフは見送りましたが正直パンフもうっちーブレードも欲しかったです。
会場
Tokyo Dome City HALLは初めて経験した会場ですが、なかなかにステージが近くて良かったです。 自分が見ていた席は、第一バルコニーの3列目付近でしたが普通に内田彩様の表情が見えたのでこれからもこの会場でやっていただきたいですね。
あと、水道橋の付近で自分的に行きやすさが抜群なので交通費がほぼかからない形で行けるのも最高でしたね。 ご飯や軽食系も沢山ありますし最高の立地だと思います。
公演について
セトリは以下の様な感じでした。
- Go! My Crusing!
- Breezin'
- スニーカーフューチャーガール
- Let it shine
- ハルカカナタ
- ONE WAY
- 最後の花火
- Like a Bird
- Growing Going
- ドーナツ
- ピンクマゼンタ
- オレンジ
- キックとパンチどっちがいい?
- いざゆけ!ペガサス号
- Merry Go
- with you
- アップルミント
- Blooming
特に最高だったのは、いきなりGo! My Crusing!から来たことですかね。コールも入って盛り上がる曲でとっても良かったです。
最初にどっかんどっかん盛り上げてきて、中盤は格好いい系からかわいい系で生バンドと内田彩様の声をしっかり聞かせていただいて最高でした。 特にLike a birdと最後の花火は自分も歌詞とメロディが好きなので大興奮ですよ!!
内田彩様の衣装も、はじめからライブTシャツを着ておられて非常に素晴らしかったですね。 そして、合間合間にあるトークが最高ですよ。のどに良い一人焼肉の話や、体育会系のお返事の話、Merry Goの所で新うっちーブレードの機能を知らなかった話などなど,,,
自分もお金が心配でBloomingブレードを買っておりませんでしたので、終演後に物販列に並びましたよ。 これを買ったら本当にお金回るか心配になって、そっと物販列から逃げてしまって内田彩様ごめんなさい。
最後に
BD先行やFC先行に全外れしましたが、チケットを譲ってくださった方本当にありがとうございました。 絶対に2nd LIVEも楽しくて素晴らしいライブな感じがしますので、体調を整えて行きたい所存であります。
感謝祭ほど近くありませんでしたが、内田彩様を感じられたのでこれからのお仕事頑張って行けそうな感じがします。
*1:出張やらBDなど
Philips Hueを使って降水確率から傘が必要か教えてくれるシステム作った
5月に初任給で買ったPhilips Hueがやっと有効活用されるようです。 今までは、ムーディーな雰囲気を出したり、疑似ラブホチックにするぐらいしか日の目を見ていなかったので多いな進歩です。
とりあえず動作するコードはこちらです。
本当は、RGBを入力して良い感じに変えたりしたかったんですが、Philips hueに渡すためにHSBに変換する必要があります。
そこで上手く色が出てくれなかったので、決め打ちでオレンジとパープルっぽい色を出しています。
晴れ(降水確率が50%以下の時)は下のような感じで光ります。
雨(降水確率が50%より大きい時)は下のような感じで光ります。
もっとアホらしくて面白いものを作りたいんですが、最近感性が死んでいる気がしますので山ごもりして鍛えていきたいですね。
RubyでJSONPを読み込む
降水確率を知りたくてこちらのWebAPIを触っています。
提供されるjsonの形式がcallback();が付与されている形式なので、JSONPとなっています。
自分の実行環境だと、JSONPの形式はJSON.loadではパースできないです。
irb(main):004:0> json_data = JSON.load res.body JSON::ParserError: 795: unexpected token at 'drk7jpweather.callback({"link":"http://www.drk7.jp/weather/xml/13.xml","pref":{"area":{"伊豆諸
なのでcallback部分を削除して、JSONの形式にします。
# JSONP parse res.body.gsub!(/^\w+\.callback\(/i,"") res.body.gsub!(/\);/,"")
もしかしたら自分の環境が悪いのかもしれませんが、参考までに