KAKIMASSE

ネットで見つけた面白い記事や、役立つのではと感じたネタなどを書いています。

Qdmailを使ってiphoneにデコメール(デコメ、HTMLメール)を送るとテキストメールで届いてしまう不具合への対応方法

   

全キャリアへデコメールの作成が行えることで有名なQdmail。
http://hal456.net/qdmail/

ほんとに便利で助かってます。
ですが、一点だけどうしても不具合が。。。

iphone(example@i.softbank.jp)にデコメールやHTMLメールを送ると必ずテキストメールになってしまう。
というもの。

Qdmailのデコメール送信サンプルコードをそのまま実行しても届くのはテキストメール。。。
SMTP送信やqd_send_mail()で送信しても変わらない。。
なぜ?

いつものごとくぐぐってみてもHITせず。。
肝心のサポートページ(http://hal456.net/qdmail/support)も作者さんの返信はないみたいで困ってました。

いろいろ他のライブラリでの代替案とかも考えたんですが、
やっぱりQdmailを使うのがリスクも少なくて便利で早いんじゃない?ってことで
ソースを見ていきました。

そこで見つけたのがqdmail.phpの429行目。(Qdmail ver 1.2.6b)

var $deco_judge = array(
'docomo.ne.jp' => 'DC',
'softbank.ne.jp' => 'SB',
'i.softbank.ne.jp' => 'SB', ←コレ
'disney.ne.jp' => 'SB',
'vodafone.ne.jp' => 'SB',
'ezweb.ne.jp' => 'AU',
'emnet.ne.jp' => 'EM',
'pdx.ne.jp' => 'WL',
'gmail.com' => 'DC',
);

各メールアドレスのドメイン部分を見て、
どのデコメールオプションで送るかを決めているみたいなんですが、
一見すると「i.softbank.ne.jp」で合ってるように思えます。

i.softbank.ne.jp 。。。

i.softbank.ne.jp ?

iphoneのメアドって「i.softbank.jp」じゃね?
ってことで以下のように修正

var $deco_judge = array(
'docomo.ne.jp' => 'DC',
'softbank.ne.jp' => 'SB',
# 'i.softbank.ne.jp' => 'SB',
'i.softbank.jp' => 'SB',
'disney.ne.jp' => 'SB',
'vodafone.ne.jp' => 'SB',
'ezweb.ne.jp' => 'AU',
'emnet.ne.jp' => 'EM',
'pdx.ne.jp' => 'WL',
'gmail.com' => 'DC',
);

これでiphoneにもちゃんとQdmailでデコメールやHTMLメールが送れるようになりました。

まぁ原因が分かればとても初歩的な間違いなんですが、
プログラムは書いた通りにしか動かないって言うことを久しぶりに痛感しました。

このエントリが同じような現象で困っている皆さんのお役に立てば幸いです。

 - PHP

SPONSORD LINKS

スポンサーリンク

スポンサーリンク

Comment

  1. k.kubota より:

    qdmailの同じ現象で悩んでいました。
    的確な解決法をありがとうございました。
    感謝いたします。

Message

メールアドレスが公開されることはありません。

  関連記事

no image
PHP:phpでgzip (.gz) ファイルを作成するには?

PHPマニュアルにありました。 http://php.net/manual/ja ...

no image
PHP:文字列の比較で == は絶対に使っちゃだめ。

マジですか? しかもかなり前のエントリー(汗)。 PHPでご飯食べてる先輩もフツ ...

no image
PHP:年(Y)と週番号(W)からタイムスタンプを取得する方法

例えば今日が何年の第何週目かを知るには下の関数で取得出来ますが、 <?ph ...

no image
PHP:今週月曜00:00:00のタイムスタンプを取得したい

※2011/4/23 追記 コメントにて一行で解決する方法を教えて頂きました。 ...

no image
PHP:MYSQLデータベースに携帯の絵文字をINSERTすると???と文字化けする対応

更新しなさ過ぎでこのままじゃ確実に KAKIMASSEN になっちゃうよねーww ...

.htmlファイルでPHPを動かす方法(UTF-8の文字化け対策方法もあり)

photo credit: DaveBleasdale via photopin ...

no image
PHP:配列の文字コードをmb_convert_encodingを使わずに変換するには?

PHPで配列に格納されている値に対して mb_convert_encodingで ...

no image
PHP:PHPで文字コードUFT-8を出力するページでブラウザのエンコードがシフトJISになってしまう時の対応方法

ファイルはUTF-8で書かれてて、 htmlソースののmetaタグも <m ...

no image
PHP:セッションを使っていて「Web ページの有効期限が切れています」となる時の対策方法

HTTPセッション管理を行うページを作って、フォームで送信した後に ブラウザ(I ...

no image
PHP:au携帯のデバイスIDと機種名称(モデル名)のリストを配列で作ってみました

ケータイサイトネタです。 PHPでPEARのライブラリNet_UserAgent ...