2017-04-04

LINE BOT APIを使っていたものをLINE Messaging APIに書き直す

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
すごく今更ですが、以前LINE BOT APIを使ってみたものを、LINE Messaging APIに直したものを紹介します。

ちなみにLINE Messaging APIを始めるには、以下が参考になりました。
http://milk0824.hatenadiary.jp/entry/2016/10/01/211555

まずは、
LINE BOT APIのcallbackにAWS Lambdaを使ってみる
を直したのは、以下のような感じです。

お次は、rubyで書いたものです。
ruby2.0以上ならば、line-bot-apiというgemがあり、こっちを使うと、もうちょっと楽にかけそうなのですが、以下はruby1.9でも動くことを前提としているのでline-bot-apiは使っていません。

rubyで書いたものの最初の、
LINE BOT APIを利用して電車遅延情報の送信を改良した
を直したのは、以下のような感じです。

そして、
LINE BOT APIを利用してGoogle Calendarの情報を通知する
を直したのは、以下のような感じです。
ちなみにキャンセルされた予定の処理を追加しています。

最後に、
LINE BOT APIを利用して雨が降りそうな時は通知するようにしてみる
を直したのは、以下のような感じです。

2017-03-24

railsの開発環境のjavascriptがなんだかよくわからないことになった時の対策

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
railsのdevelopment環境でいろいろいじっているうちに
なぜだかわからないのですが、jqueryの動きがあやしい感じになってしまいました。

xhrで投げた結果を受け取って、それを画面の置き換えるのが、うまく動かなかったり
imageの位置を変な感じで取得しようとして受け取れなかったり
みたいな感じになっていました。

原因は、もうわからなかったのですが、
rake assets:clean
で一回asset関連をクリーンしたら、うまく動くようになりました。

2016-11-26

yahooあんしんねっとが終わるようなので対応を考えてみた

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
家で使っているAndroidタブレットでは、Androidの機能を利用して子供用のアカウントを作って利用できるアプリを制限して使わせています。
なので変なアプリを入れる可能性は低いと思っているのですが、ブラウザでなんでも調べられるのはどうかなぁと考えてyahooあんしんねっとを入れて、これを使えるようにしていました。

しかしyahooあんしんねっとが2016/12/20に終了してしまう模様です。
webで検索の手段が使えないのもいまいちなので別の手段を探していました。

無料でよさそうなかなぁと思ったのは、
シマンテックのノートンファミリー
かなぁと思ったりもしたのですが、ちょっと大げさすぎるかなぁとも思ってみました。

いろいろ調べていたら
ノートン コネクトセーフ
というものがあることを知りました。
これはシマンテックが公開しているDNSのようです。

今回は、ブラウザ経由で変なサイトに飛ばないようにしたいので、このDNSを設定することにしてみました。
AndroidでDNS設定をするには、いかが参考になります。
http://did2memo.net/2015/04/08/android-wifi-dns-8-8-8-8/
上記では、8.8.8.8を設定していますが、この部分をノートン コネクトセーフのDNSを設定しました。

これで子供用アカウントでchromeを使えるようにしてみました。

その上でさらに以下で紹介されていたgoogleのセーフサーチの設定もしてみました。
http://rezv.net/android/557/

とりあえず、これで当面様子を見てみようかと思っています。

2016-08-05

capybaraとseleniumを使ってrubyでできてないwebサイトのテストをする

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
普段はrailsを使っているのでrspecを使ったテストを書いているのですが、このテストを既存のrubyを使ってないwebサイトの試験に使ってみることを試してみました。

前提は以下のような感じです。
・テストはWindows上でInternetExplorerを利用して行う
・データベースはMS SQL server
・webサイトはASP.Netで書かれている(htmlを出力しているなら言語は問わないはずです)
・テスト用のデータベース、webサイトを専用に用意する
 ※今回database_cleanerを利用しているので既存データがあったらごっそり消えます。

windows環境でrubyが使えるようにする手順は省略します。
bundlerとrspecをgem installして利用できるところまでは準備してください。


まずInternetExplorerをseleniumで利用できるように準備します。
IE用のドライバを以下から取得します。
http://docs.seleniumhq.org/download/
ダウンロードしたzipファイル内の
IEDriverServer.exe

c:\ruby\bin
などのパスが通っているフォルダに配置してください。
そしてIEの設定を確認します。
インターネットオプション
セキュリティで
各ゾーンの
保護モードを有効にする
のチェック状態をすべてのゾーンで同じにするように設定しておく必要があります。


ここからテストプログラム用の環境を作っていきます。
ちなみに、ここから作成するファイルの文字コードはすべてUTF-8です。

まず適当なフォルダを作成して、その作成したフォルダ内で以下を実行します。
rspec --init

フォルダ内にGemfileを準備します。
Gemfile

必要なgemをインストールするためフォルダ内で以下を実行します。
bundle install


rspec設定ファイル(.rspec)を作成します。
.rspec

フォルダ内にconfigフォルダを作成して、その中にデータベース接続設定ファイルを作成します。
config/database.yml

フォルダ内にspecフォルダを作成して、その中にspec_helperを作成します。
spec/spec_helper.rb

データベースのデータにアクセスするためのActiveRecordモデルを作成します。
specフォルダ内にmodelsフォルダを作成して、ここにrailsと同じようにモデルを作成します。
ここではItemクラスを例として作成しています。
spec/models/items.rb

データベースにテストデータを登録するためのFactoryGirlの設定を作成します。
specフォルダ内にfactoriesフォルダを作成して、この中に作成します。
上記のItemクラスに設定する値を例として作成しています。
spec/factories/items.rb

これらの準備ができたらspecフォルダ内にspecファイルを作成します。
spec/sample_spec.rb

テストの実行は作成したフォルダの一番上(Gemfileがあるところ)で以下を実行します。
rspec


こんな感じでとりあえず、データベースにテスト用データを突っ込んで、毎回データベースを初期化するための環境ができあがります。


今回のフォルダ構成をまとめると以下のような感じなります。
+-config
| +-database.yml
+-spec
| +-factories
| | +-items.rb
| +-models
| | +-items.rb
| +-spec_helper.rb
| +-sample_spec.rb
+-.rspec
+-Gemfile
+-Gemfile.lock


以下のサイトが参考になりました。
http://kakakakakku.hatenablog.com/entry/2016/01/09/142221


2016-05-13

お気に入りのマンガを紹介してみます

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
ただなんとなく私のお気に入りのマンガを紹介してみます。
タイトルだけをつらつらと書いていきます。

・未完
ONE PIECE、弱虫ペダル、海街diary、銀の匙 Silver Spoon、
僕のヒーローアカデミア、鬼灯の冷徹、神様のバレー、ばらかもん、
あさひなぐ、キングダム、ダンジョン飯、ボールルームへようこそ、
3月のライオン、リアル、宇宙兄弟







・完結
ジョジョの奇妙な冒険、SLAM DUNK(スラムダンク)、機動警察パトレイバー、鋼の錬金術師、
金色のガッシュ、MASTERキートン、PLUTO、動物のお医者さん、
とめはねっ! 鈴里高校書道部、僕だけがいない街、うしおととら、四月は君の嘘、
87CLOCKERS、俺物語!