Hatena::ブログ(Diary)

徒なる研究あるいはイアトロ化学者 RSSフィード

2016-04-17

2016年のbot開発

立て続けに発表されたbot開発プラットフォーム。作ってみた記事もちらほら見かけてちょっとしたブームっぽい。

401 - Unauthorized: Access is denied due to invalid credentials.

LINE Developers - BOT API Trial (Deprecated) - Overview

Messengerプラットフォーム - ドキュメンテーション - 開発者向けFacebook

LINE BOT APIで当初NGだったLet's Encryptの証明書が通るようになったという噂を聞いたので*1昨日から使おうとしているが一向にコールバックが飛んで来ない。

なので先にFacebookから作ってみた。

f:id:worris:20160418004334p:image

ごちゃごちゃ試行錯誤しているうちに動くようになった。

だけどこれって、単にメッセージを投げているだけで、Twitter APIで出来ることと何も変わらない。これは9年前に通った道だ。*2

自然言語処理AIを使って初めて2016年botと言えるだろう。

日本はbot後進国になる運命かもね。 | ふくゆきブログ

だから村上福之のこの記事こそが重視されるべきなのだが、それはそれで、趣味のプログラミングからは遠く離れたところへ行ってしまいそうなのである。


4/23追記

LINE BOT APIのコールバックも届くようになった。*3

f:id:worris:20160424030900p:image

2016-02-13

Let's Encryptのサーバ証明書でSSL対応

さくらVPSで、Let’s Encryptのサーバ証明書を使って、SSL対応のサイトを作る設定手順

を見てやってみようと思ったが、CentOS 5ではこの通りに行かないっぽい。

まずPythonが2.6以上必要と言われる。2.4しか入っていない。yumに2.6があるのでインストール("python26"になる)してスクリプトの中のpython27をpython26に変えても無理だった。

wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz

からインストールして"python2.7"が通るようにしてもやっぱり駄目だった。

KeyError: 'webroot'

となって止まる。


Letsencrypt-auto certonly fails with KeyError: 'webroot' - Help - Let's Encrypt Community Support

を見て、pythonに依存しない

GitHub - Neilpang/acme.sh: An ACME Shell script, an acme client alternative to certbot : acme.sh

を使うことにする。証明書の更新も自動でやってくれるらしい。むしろ便利じゃん。*1

git clone https://github.com/Neilpang/le.git
cd le
./le.sh install
sudo ./le issue /var/www/html/ www.example.com

して生成されたファイルを /etc/httpd/conf.d/ssl.conf に

SSLCertificateFile /home/hoge/.le/www.example.com/www.example.com.cer
SSLCertificateKeyFile /home/hoge/.le/www.example.com/www.example.com.key
SSLCertificateChainFile /home/hoge/.le/www.example.com/ca.cer

で指定。

sudo /etc/rc.d/init.d/httpd restart

で一応動いたっぽい。

ただしTLS1.0しか使えていないので「古い暗号スイート」と言われてしまう。CentOS 5ではOpenSSLが0.9.8のため。

$ cat /etc/redhat-release
CentOS release 5.11 (Final)

CentOS5のサポート期限である2017年3月31日までにはOSバージョンアップが必須。

2015年いっぱいでOpenSSL0.9.8のアップデートが無くなる? - Qiita

*1:有効期限が5月13日までになっているのがちゃんと更新されるか確認。

2015-05-31

RubyでGoogle Analytics APIのOAuth2認証対応

YouTube API v2が終了したのに加えて、Analytics APIもOAuth2が必要になった。

YouTubeの方は道なりで行けたけど、Analyticsの方はGarbのままでは駄目っぽい。

RubyのバッチでGoogleAnalyticsのデータを取得する(OAuth2利用) - zakihayaメモ

ここ参考。Google Developers ConsoleでAnalytics APIを有効にするのを忘れないように。

2014-08-11

zenbackがSSLページで動作しない

[blocked] The page at 'https://xxxx/' was loaded over HTTPS, but ran insecure content from 'http://w.zenback.jp/v1/?callback=jQueryxxxx': this content should also be loaded over HTTPS.

と言われる。


http://w.zenback.jp/v1/ の57行目が

          url: "http:\/\/w.zenback.jp\/v1\/"

なので

          url: "\/\/w.zenback.jp\/v1\/"

に直したものを自前でサーバに用意して読み込んでみると一応動く。(randも受け取って埋め込んだ。)

しかしさらにTwitterはてなブックマークのボタン用jsを読み込む部分でhttp:が指定されている。今度は解読する部分が長いのであきらめた。


というか途中までは「//w.zenback.jp/〜」で記述してSSLに対応していると見せかけて、最後まで徹底していないのは不具合だよね。

2014-06-28

ChordWikiの拡張情報をDB保持&タグのAND検索

chordpro記法を勝手に拡張して記述していたASINYouTubeniconicoリンクを、外に出してMySQLに保持。ついでにJASRAC作品コードも持てるように。

タグ検索はAND検索を可能に。同じテーブル同士をJOINしてさらにもう一個LEFT JOINするというSQLがあっさり書けた。