ブログ

またTwitterAPIで遊んでしまった

2018年11月03日
TwitterAPIのどツボにハマって遊んでしまいましたでブログ更新時に、更新お知らせ写真付きツイートができるようにしました。
あのときは静止画だけでとりあえずは終了したのですが、やっぱりビデオも投稿できた方が便利だなと思うようになってしまいました。
ブログ更新後、ツイッターから動画をアップしてツイートしてみたのですが、やっぱり面倒なんです。しかもちょっとではなくて、かなり面倒に感じるんです。

前回と同じで、以前からお世話になっている、
GitHub - abraham/twitteroauth: The most popular PHP library for use with the Twitter OAuth REST API.
を利用させていただきました。

いざアップロード!できません。

Overview — Twitter Developers
どうやらチャンクに分けてアップロードをするようです。もしかすると、分けなくてもできるのかもしれませんがTwitterが推奨しているようですしチャンク分けしてみました。

修正して再度アップロード。
どうやらアップロードはできているようですが、エラーになります。

【Duration too long, maximum:30000, actual:xxxxxx】

調べたら、動画が30秒を超えているということらしいです。
Overview — Twitter Developersにビデオは15MBとありますが、秒でも引っかかるのでしょうか。
試しに短い動画でやってみたら無事ツイートできました。

更に調べると、【media_category】を【tweet_video】を引き渡してやると30秒以上の動画が扱えるようです。

引き渡してアップロードしてみます。

今度は【Not valid video】だって。アップロードしたのは確かにビデオなんですけどね。
返ってきたメッセージを見てみると、【pending】が出ている、でも動画のアップロードはできているのかな、と思います。

返ってきたメディアID(media_id)を直書きで指定してツイートすると、ツイートできました。
何度かやってみたのですが、どうやら動画が使えるようになるのに数分かかっているみたいです。この当たりはTwitterサーバーの混み具合にもよるのかもしれません。

仕方ないので動画アップロードとツイートは処理を分けました。
確かアップロードしたファイルは1時間有効だったはずなので、メディアIDを記録しておいて、後からメディアIDとツイート内容をセットにしてツイートを投げます。

作っておきながらなんですが、ツイッターのアカウントの関係で動画はアップロードしないかもしれません(なら作るなよ・・・)。まだ色々悩み中です。


覚書 ---- TwitterAPIからの動画の投稿
Overview — Twitter Developers
Media Best Practices — Twitter Developers
API Reference — Twitter Developers

チャンク分けする
30秒を超えている場合は、media_category:tweet_video を指定
アップロードした動画が使えるようになるまで待つ

サーバー

WebサイトのSSL化

2018年10月16日
このブログの文字コードをUTF-8に移行できたので、今日は【ネットビジネス便利ツール】をUTF-8に移行予定だったのですが、急遽予定を変更してSSL化を行いました。

使っているレンタルサーバーがLet's Encryptに対応しているので利用することにしました。
おそらくメジャーなレンタルサーバーは対応(設定や更新を自動化)していると思うので、興味のある方は調べてみてください。

ネットビジネス便利ツール】はすんなりできました。
ですがこのブログはサブドメインで利用しています。使っているレンタルサーバーではLet's Encryptのワイルドカードにはまだ対応していないので、サブドメインごとにSSLを設定することで解決できました。

作業自体は簡単でした。
これで【ネットビジネス便利ツール】とこのブログをSSL化できました。
このブログの他にもサブドメインで運用しているサイトがあるのですが、閉鎖も含めてもう少し考えます。

ページ内にhttpでリンクを貼っている箇所を修正、PayPal決済関係でhttpを利用している箇所をhttpsに変更しました。

後は、【.htaccess】に
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://engineer.ns-it.net/$1 [R=301,L]
を書いて、httpでのアクセスをhttpsへリダイレクトと共に、検索サイトのページ情報を引き継がせます。

何か忘れている気もするけど、気がついた時また作業します。
助かりました。Let's Encryptとレンタルサーバーに感謝。

ブログ

データベースの文字コード変換

2018年10月15日
TwitterAPIのどツボにハマって遊んでしまいましたでTwitter関係を触ったら、このブログが文字化けし始めました。
紺屋の白袴で、未だにEUC-JPでした。もうこうなったらついでにUTF-8にしてしまいます。
いつかはやらねばと思っていたし、いやもっと優先順位の高い物があるので、その後のつもりだったのですが。

で、移行終了・・かな。多分。後はエラーが出た時に対応します。

ブログを運用しながら移行しました。
文字コードUTF-8のデータベースを新しく作り、そこにEUC-JPのデータベース全体からダンプしたファイルを使ってデータベース全体をリストアしました。
ダンプ(バックアップ)はcronで毎日動かしていますが、リストアは初めてでした。

今回移行したデータベースはPostgreSQLです。
旧データベースはPostgreSQL7でしたが、新データベースはPostgreSQL9になっていました。

一部のSQLでエラーが出ていたのでそちらも修正しました。
テーブル結合を行っている場合、FROM句に全てのテーブル名がないと(結合はWHERE句に書いているので)エラーになるようになっったようです。そう言えば「どうして全てのテーブルを書いていないのに動くんだろう」と思った記憶があります(でもそのまま動かしていたなんて・・・)。

そしてついでのついでで、html5へ移行もしました。

いつも作っているソフトウェアはフィルシステムですし、滅多にデータベースなんて触らなくなってしまっているので、とても緊張しました。息するの忘れているんじゃあないかって自分で思いました。

まだ一番大切なサイトの移行が残っています。ブログは予行演習でした。

大変良い勉強になりました。

ブログ

TwitterAPIのどツボにハマって遊んでしまいました

2018年10月11日
ブログの投稿時に、Twitterへも文字だけは投稿できるようにしていたのですが、利用しようとしたら動かなくなっていました。
販売はしませんでしたが、何年も前に作ったTwitterのツールでは動いているので、それを見ながら修正すれば直ぐに動くでしょう。
やっぱりブログ投稿時に一緒に操作しないと、面倒で段々やらなくなってしまいます。

販売しているツールの改変が終わってからの予定だったのですが、やっぱり不便なので、文字の投稿だけはできるようにすることにしました。

予想通り文字だけはすぐにできました。ソースではなく、キーやトークンなどの問題でした。
これで終了、の予定だったのですが、欲が出てしまって、写真も投稿できるようについつい手を出してしまいました。

以前からお世話になっている、
GitHub - abraham/twitteroauth: The most popular PHP library for use with the Twitter OAuth REST API.
のソースの新しいバージョンをダウンロードしてやってみたのですが、どうやっても動きませんでした。

色々なサイトで使い方を紹介しておられるので、その通りにやってみてもだめ。
途中でPHPの古いバージョンでは動かないことに気が付き、PHPをバージョンアップしたのですが、それでもだめでした。

結局必要な関数をコピーさせてもらい、今使っているファイルへペースト、関数名も少し変更してやっと動くようになりました。
いやあ、直ぐできるだろうと思っていたのに、長かった!

これでブログにアップした写真から選んでツイッターへも写真付き投稿ができるようになりました。ビデオもできるようになればなおいいのですが、今日はおしまい!
ブログ投稿は予約することもあるので、ツイッターも予約できるようにしたいですね。

今日は張り切って写真を投稿したいのですが、んん、今日は写真はなしです。

ああ、一日遊んでしまった。反省。

色々検索していて、今更ながら気がつたのですが、TwitterAPIに厳しい制約がかかって、使っておられる方は大変なことになっていたんですね。ツイッターツールって使うのは本当に時々だし、私は呑気にも知りませんでした。
こういう影響って辛いですよね。真面目に使っている者も影響を受けちゃうんですよね。

2018-10-12 追記 その1 -------------------------------------------------
もしかしてこうではないかと思って、再度abraham/twitteroauthを使ってみようとしましたが動きませんでした。説明も再度読んだのですが、やはり使い方が違っているようです。
正直今のソースをちょっと変更して、ブログからちょこっと使いたいだけで、あれこれやっている場合でもないし、もうこれで終了します。ちょっと残念ですが。
-----------------------------------------------------------------
2018-10-12 追記 その2 -------------------------------------------------
Twitter関係を触ったせいでしょう、ブログが文字化けし始めました。そう言えばEUC-JPのままでした。UTF-8へ変更しなくてはと思いつつ優先順位は低いのでそのままでした。
今まではブラウザの自動判別がうまく働いていたようですが、崩れたみたいです。
私はエンコード指定ツールを入れているので(Google Chrome でエンコードを指定する)なんとかなりますが、多くの方はそうではないでしょう。
急遽UTF-8で出力するようにしました。でも応急処理です。
一旦終了と思っていましたが、文字コード変換までやらなければいけないみたいです。
-----------------------------------------------------------------

ブログ

関連記事を一覧表示できるようにしました

2018年03月18日
何年か前から、できるようにしたいと考えていた機能をこのブログに追加しました。リンクを開くと関連記事を一覧表示する機能です。

やっと追加しました。

各日の記事の右下に【タグ:xxxxx】と表示されている場合、リンクを開くと関連する記事が時系列で一覧表示されます。

ブログの左メニューにはカテゴリが表示されていますが、もう少し細かいカテゴリで、でもカテゴリの一覧に表示させるほどではないカテゴリ分類、という考えです。
一日では書ききれなかったDIYとか、数日に渡るシリーズ記事などに付けています。

初めは記事本文にリンクを貼る予定だったのですが、なかなか使いやすく分かりやすい仕様を思いつかなかったので、本文とは分けてタグのリンクを表示することにしました。

もしかすると一般のブログのタグとは機能が違うかもしれませんが、私が欲しかった機能なので満足です。
あ~スッキリした!!

ブログ

コメントがつけられるようにしました

2009年07月27日
自前で開発したブログにコメントをつけられるようにしました。

やっと完成です!!

名前、コメント、公開するかしないかを入力します。
画像による認証もするようにしました。

少々遊んでしまいました。
明日からまた仕事頑張ろう。

ブログ

自前ブログ完成

2008年11月27日
自前でコーディングしていたブログが一応完成です。一応というのも、まだ追加したい機能もあるし、もしかするとまだバグがあるかもしれないから。

旧ブログサイトから引っ越さなければいけません。


表の公開画面はほとんど変わりませんが、管理画面がかなり便利になりました。
例えば、リンクボタンをクリックするとアンカータグを挿入できる機能はMovable Typeにもありますが、必要な属性がないので、とても使いにくいものでした。自分でコーディングすれば必要な属性が入ったタグを挿入することもできます。

たったこれだけのことでとても便利になります。


サイトマップ、RSS、Ping送信もできるようにしました。
RSS、Ping送信はMovable Typeを含めたいていのブログで自動で作ってくれますが、サイトマップは作ってくれませんでした。
カテゴリをサイトマップに載せているので、そう頻繁に作るものではありませんが、自動で作ってくれればやっぱり便利です。

ブログ

開発ブログ開設

2007年03月28日
以前から開設していたブログEcological and Easygoing Lifeですが、なんでもありのごちゃごちゃした内容になってきたので、ソフトの開発に関係する記事を独立させ、ブログを新たに開設することになりました。

前から気になっていたMovable Typeを導入しました。

インストールは簡単だったのですが、記事を表示するのになぜか四苦八苦しました。気づけは原因は簡単で、日付を指定して公開するのに、日付だけしていて公開状態にしていなかった(なってなかった)だけでした。

テンプレートも今までのブログとは違い、調べながらなので、思ったより時間がかかります。でもなんとか公開にいたりました。

まだまだ直したいところはいっぱいありますがとりあえず公開開始です。