IT仕事

空メールを送る仕組みをはじめて作るのに苦労した記録

投稿日:

4日間、苦労。モウイヤ。

■1日目:
携帯から空メールを送ったら、サーバがクリックしてほしいURLと送り主のメルアドを本文に書いて返す仕組み、それを作りたい。しかし何を準備してどうすればよい? まずは、そこからわからん。
ググって見ると、mailfilterという仕組みがあればよいとわかった。が、調べてみたら、会社で借りているplus-serverやロリポップ、WebArenaではそれは使えなかった。対応しているレンサバは少ないみたい。
しかし個人で借りている2つのレンサバのうちのひとつ、hostingrails.comはそれができた、ラッキー。

レンサバのcPanelには、メールの項目があり、ユーザレベルのフィルタリングとある。あと、フォワーダというのもある。あれやこれやといじっては見る。

メール転送の設定についてはなんとなくわかってきたが、メール受信で起動するPHPプログラムをまだ作っていなかったので、ググってサンプルを探して、自分のやりたいように修正する。フィルタ設定とPHPプログラムと、わからない二つを同時に手をつけることは危険だが、仕方ない。

いろんなブログやサイトを参考にしながら、数行のごく基本的なsendmailのPHPを何とか完成、メール受信をトリガにしてこのプログラムを動かす事に成功。
ここでギブアップ。

■2日目:
前日のPHPに記述を加えて自分のやりたいように直す。
しかし問題発生。

1.PCメールは返信されるが、ケータイメールは返信されない(ケータイといってもWillcomだが)。
2.返信されたメールともう一通、エラーメールが届く。エラーのほうには、PHPソースの書き換えによってはfailとかwarningとかioncubeとか書いてある場合もあるし、何も書いてない場合もある。あと不思議なことにエラーメールが届かないこともある。まあこれはごくシンプルなPHPソースの場合だけど。

1については、どうやらdocomoはメールの送信者名を記号で囲っていないことが原因らしいことがわかった。Willcomはだいたいがimode互換なので、きっとそう(?)。
docomoに対応していそうなPHPソースをググって見つけ、一応クリア。

2.については、何がなにやら、本当にわからずに2日消費。
Hostingrailsのフォーラムに質問してみたり、PHPのPEARパッケージのインストールやパスを疑ってみたり、php.iniをどこかで変えなくてはいけないのかと設定できる方法を探したり、代わりにできないかと.htaccessを置いてみたり、パーミションをあれこれ変えたり。
しかし決して成功することなく、ドツボにはまる。
この日は失意のうちに終了。

■3日目:
cPanelの設定が悪いのかPHPプログラムが悪いのか、両方が悪いのか、さっぱりわからない。
cPanel上のフォワーダを使ってみたがメッセージが変わるだけで、やっぱりエラーメールが返ってくる。
ううむ。

■4日目:
PHPプログラムが悪いような確信がだんだんしてきたので、いろいろと変えてみた。
その中で、一行目の、
#!/usr/local/bin/php -q
を行削除してみたら、これがビンゴ!
エラーが出なくなった。うれしい!

■参考にした情報ソースいろいろ
空メールの方法で一番参考になったのは、これ。
kawama.jp: 携帯の空メール機能を実装

あとは、これ。
ひでぶろぐ PHP全般さくらサーバーメールトリガー
さくらで空メールシステム作った時のメモ – 暗黒面Javascript開発ブログ
phpで空メールサービス:PHP講座

後で気づいたのだが、まったく関係ないはずのcPanelのファンタジスコをクリックするとエラーが出た(サポートに翌日メールして直してもらったが)ので、ひょっとするとサーバホスティング側も何か設定ミスをしていたのかも。今となってはわからんが。

-IT仕事

執筆者:

関連記事

no image

・・・

山を登り終えたら、海に潜って、空を飛べ・・・みたいな仕事(もちろん比喩)が連日続いていて、クタクタ。 この他に、メール読んだり書いたり、スケジュール確認やら優先順位の組み直しやら、社内の指示やら伝達や …

no image

Improved Include Page は便利

最近WordPressを使っていて、「お、これは掘り出し物だ!」と喜ぶことになるプラグインが少ない。 以前は新たなプラグインを発見しては、WordPressのすばらしさ(というよりその周りに集まってき …

no image

AppActivate Me.Caption

AppActivate Me.Caption これがわかるまで何時間かかった事やら。 おかげで知恵熱がでちゃったよ。 (ユーザーフォームから呼び出したダイアログを閉じたあとフォームにフォーカスが戻らな …

PhotoshopElementsで写真の角を丸くする

方法を見つけるのに2時間ほどかかってしまったので備忘録・・・。 1.写真をCtrl+Aで全選択。 2.選択範囲-選択範囲を変更-境界線-10px。境界線が選択される 3.選択範囲-選択範囲を変更-滑ら …

no image

CMOSボタン電池切れ

DellのOptiplexを使っている隣人(会社)、席替えの際にコンセントから電源ケーブルを抜いて以来、PCが立ち上がらなくなった。 XPなのだが、ようこそ画面の直前の「マウスポインタと黒背景」から先 …