【SOY Mail】さくらインターネットの設定例を公開してください。

SOY Appに関する質問、要望はこちら。

【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by msat on 2011年4月18日(月) 17:47

いつもいつもお世話様です!

SOY Mailをカスタマイズさせていただき、配信メールの既読状況が一覧できるシステムを制作中です。

SOY Mailをはじめて本格的に試してみたのですが、設定と挙動で不明な点が出てきたのでお訊ねします。

ヘルプを読むと、受信設定をしておくと、エラーメールが集計されると説明されていますが、あらゆる設定を試してみましたが、どうもうまく働きません。わざと誤ったメールアドレスを設定し、サーバーにもエラーレポートのメールがきちんと返ってきています。正常なメールの送信自体はうまくいっています。

使用環境は、さくらインターネットのスタンダード・プラン、SOY CMS 1.3.2、SOY Mail 0.8.1です。試した送信方法は即時送信です。

この環境で、エラーメールがきちんと集計されるような、標準的なSOY Mail「サーバ設定」の一覧を例示していただけないでしょうか。

参考までに、試した設定の一例を挙げておきます。

========================================================================
【送信設定】
送信方法:SMTP
SMTP認証を使用する:
SMTP認証を使用する:Checked
サーバ:example.sakura.ne.jp
ユーザ名:myaccount@example.sakura.ne.jp (myaccountのみでも試しました)
パスワード:XXXXXXXXX
ポート:25
SSL(暗号化)を使用する:no check

【受信設定】
受信方法: POP3
POP3/IMAP設定:
サーバ:example.sakura.ne.jp
ユーザ名:myaccount@example.sakura.ne.jp (myaccountのみでも試しました)
パスワード:XXXXXXXXX
ポート:110
「POP/IMAP before SMTP」を使用する:no check
SSL(暗号化)を使用する:no check

【管理者設定】
管理者メールアドレス:myaccount@example.sakura.ne.jp
管理者名称:MyName
差出人メールアドレス:myaccount@example.sakura.ne.jp
返信先メールアドレス:myaccount@example.sakura.ne.jp
返信先名称:MyName

【即時配信設定】
配信方法: PHPで実行
========================================================================

それから、POPの受信設定ですと、メールが削除されてしまうということですが、これはエラーレポートのメールに限ってのことでしょうか? それ以外のメールも削除されてしまうのであれば、IMAPを使った設定を教えていただけるとありがたいです。

以上、よく使われている環境だと思いますので、ほかの方の参考にもなると思います。どうぞよろしくお願いいたします。

追伸:メール本文の差し込み機能(#NAME#, #MAILADDRESS#等)も、上記の環境でうまく働かないようです。ご確認ください。
msat
 
記事: 307
登録日時: 2009年4月20日(月) 17:07

Re: 【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by okinaka on 2011年4月18日(月) 19:17

ソースを読んだ限りでは、エラーメール関連は作りかけっぽい状態でした。
現状、手動で対処するしかないです。

SOY Mail は、ほとんど実績がなく、運用には耐えられないのではと思っています。
(この1年間で、フォーラムにほとんど問い合わせがなかった点で明らかです。)
まずい点をどんどん指摘していただいて良いものになっていくといいですね。

私の経験では、さくらのスタンダードプランのサーバで、
7,000通ほど送ったところ、インフラ(CPU、ネットワーク)に負荷が必要以上にかかり、
一時的にサイトが見られない状態が続きました。
送信中にエラーで停止してしまい、どこまで送ったのか分からず困ってしまいましたw
共有レンタルサーバでは、サーバにあまり負荷をかけれれませんので、十分注意が必要ですね。
okinaka
 
記事: 94
登録日時: 2009年11月08日(日) 09:20

Re: 【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by msat on 2011年4月18日(月) 21:33

okinakaさん、いつも貴重な情報をどうもありがとうございます。

なるほど、ヘビーなユースには気をつけなければならないわけですね。
わたしの抱えている案件では、せいぜい数十件単位の送信なので、問題はなさそうです。
新規にプラットホームを起こすたいへんさを考え、SOY Mailを使う方向は崩さずに行こうと思います。
エラーメール処理が未完なのは、痛いですが(自分で書くとなると、かなり面倒な処理ですよね~)。

触っていてわかった点があれば、このスレッドにフィードバックしたいと思います。よろしくお願いします。

開発の方からも、SOY Mailの現状と展望など、情報をお寄せいただけるとありがたいです。
msat
 
記事: 307
登録日時: 2009年4月20日(月) 17:07

Re: 【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by msat on 2011年4月18日(月) 22:19

自己レスです。

最初の記事の追伸に書きました、以下の件、解決方法が見つかりました。

追伸:メール本文の差し込み機能(#NAME#, #MAILADDRESS#等)も、上記の環境でうまく働かないようです。ご確認ください。


/cms/app/webapp/mail/src/logic/mail/MailLogic.class.php の47行目をコメントアウト(以下のコード参照)すると、差し込みキーワードが有効に働きますね。

とりあえず、副作用もなさそうな気がします。困っている方、試してみてください。

コード: 全て選択
      $send->setSubject($title);
//      $send->setText($mail->getMailContent());      // ここをコメントアウト

      while(true){
         $user = $selector->getNextSendAddress();
         if(!$user)break;
         $send->setRecipients(array());
         $send->setText( MailLogic::convertMailContent( $mail->getMailContent(), $user ) );
         $send->addRecipient($user->getMailAddress(),$user->getName());
         $send->send();
      }      
msat
 
記事: 307
登録日時: 2009年4月20日(月) 17:07

Re: 【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by msat on 2011年4月20日(水) 15:28

ふたたび自己レスです。

前回の記事のやり方では、すべてのメールで最初に置き換えられた文書が配信されてしまいますね。すみません。

以下のパッチが有効です(SOY Mail 0.8.1)。前回と同じ箇所です。

コード: 全て選択
//      $send->setText($mail->getMailContent());      // このコメントアウトはなくても動く
      while(true){
         $user = $selector->getNextSendAddress();
         if(!$user)break;
         $send->setRecipients(array());
         $send->setEncodedText( '' );               // このメソッド呼び出しを追加する
         $send->setText(MailLogic::convertMailContent($mail->getMailContent(),$user));
         $send->addRecipient($user->getMailAddress(),$user->getName());
         $send->send();
      }      



挙動をお知りになりたい方は、以下を参照してください。private encodedText に値がセットされていると、setTextメソッドの結果がセットされないことが原因です。なので、新規に呼び出す場合には、事前にencodedTextをクリアしておく必要があります。それが上記のパッチになります。

/cms/common/lib/soy2_build.php の645行目(SOY CMS 1.3.2)

コード: 全て選択
    function setText($text, $encoding = null) {
       $this->text = $text;
       if ( !$this->encodedText ) {
          if ( !$encoding ) $encoding = $this->getEncoding();   
          $this->encodedText = mb_convert_encoding( $text, $encoding );
       }
    }


この件については、以上です。
msat
 
記事: 307
登録日時: 2009年4月20日(月) 17:07

Re: 【SOY Mail】さくらインターネットの設定例を公開してください。

投稿記事by msat on 2011年5月11日(水) 17:27

開発の皆さま,おかげさまでなかなかいいものができてきました。

お礼になるかわかりませんが、以下、SOY Mail 0.8.1で気づいた点、フィードバックです。お役に立てば幸いです。


● メール本文の差し込み機能(#NAME#, #MAILADDRESS#等)が働かない。

前の記事を参照してください。


● application.ini の記述が不正。これはすでに書きましたが、該当スレッドを削除してここにまとめます。

/cms/app/webapp/mail/application.ini

1行目「ーapplication]n」 → [application]


●「ユーザ」→「インポート」項目のコメント

/cms/app/webapp/mail/pages/User/ImportPage.html

25行目
<th style="text-align:center;">CSVファイル指定(UTF-8)</th> // 「(UTF-8)」の表記は不要(削除する)


● ExcelのCSV形式で、ダブルクォーテーションが含まれる書式(項目にカンマが含まれる場合等)が処理できない

Excelでは、CSV形式でエクスポートしたデータ項目はダブルクォーテーションで括られませんが、項目中にカンマが含まれる場合など、その項目だけダブルクォーテーションで括られます。SOY Mail 0.8.1ではこの例外に対応していません。

以下のようにソースを修正し、ExcelのCSV形式は「データをダブルクォーテーションで括る」のオプション設定でインポートするようにすればこの問題を回避できます。

/cms/app/webapp/mail/src/logic/user/MailUserExImportLogic.class.php
169行目

コード: 全て選択
//      $value = substr($value, 1, strlen($value)-2);      // 削除する
      $value = trim( $value, '",' );            // 追加する


この修正では、ダブルクォーテーションの有無を自動判別しますので、インポート画面のオプションを「データをダブルクォーテーションで括る」のみに一本化したほうが混乱が少ないかもしれません。その場合は、管理画面のテンプレートを以下のように変更すればよいと思います。

/cms/app/webapp/mail/pages/user/ImportPage.html
38行目付近

コード: 全て選択
<td>
フォーマット指定<br />
<input name="format[label]" value="checked" checked="checked" type="checkbox" id="format[label]_id" /><label for="format[label]_id">先頭のレコードはデータに含めない</label><br/>
<div style="display: none;">
<input name="format[quote]" value="checked" checked="checked" type="checkbox" id="format[quote]_id" /><label for="format[quote]_id">データをダブルクォーテーションで括る</label><br/>
</div>
<input name="format[separator]" value="comma" type="radio" id="format[separator]_comma_id" checked="checked" /><label for="format[separator]_comma_id">カンマ区切り</label>
<input name="format[separator]" value="tab"   type="radio" id="format[separator]_tab_id" /><label for="format[separator]_tab_id">タブ区切り</label><br/>
<input name="format[charset]" value="Shift_JIS" type="radio" id="format[charset]_shift_jis_id" checked="checked" /><label for="format[charset]_shift_jis_id">SHIFT_JIS</label>
<input name="format[charset]" value="UTF-8"     type="radio" id="format[charset]_utf-8_id" /><label for="format[charset]_utf-8_id">UTF-8</label>
<p style="margin: 0.5em;">※ ダブルクォーテーションによる括りの有無は自動判別します。</p>
</td>



● ユーザ詳細情報「編集」の表示レイアウトを「新規」にあわせる(インデント量が大幅に異なるのを修正)

/cms/app/webapp/mail/pages/user/DetailPage.html
24行付近

コード: 全て選択
   <table class="form_table"> 直下に
   <col style="width:150px;" /> を追加



● 実害はないですが、スペルミスがあります

/cms/app/webapp/mail/pages/Mail/IndexPage.class.php
195行付近以降

$attribues → $attributes


● スタイルシートのエラー一覧

/cms/app/css/styles.css
82行 vetical-align → スペルミス
270行 background-color: auto; → auto不可

/cms/app/css/layer/layer.css
5行 backgroundColor → background-color
109行 margig → margin

/cms/app/webapp/mail/css/styoe.css
17行 cursor:normal; → default
22行 cursor:normal; → default
49行 font-sisze → font-size

/cms/app/webapp/mail/pages/Mail/IndexPage.html
285/288/291行 backgruond-color → background-color

/cms/app/webapp/mail/pages/User/IndexPage.html
187/190/324/327行 backgruond-color → background-color

/cms/app/webapp/mail/pages/User/RegisterPage.html
269/272行 backgruond-color → background-color

/cms/app/webapp/mail/pages/Config/IndexPage.html
265/269行 backgruond-color → background-color


とりあえず気づいた点は以上です。
msat
 
記事: 307
登録日時: 2009年4月20日(月) 17:07


Return to SOY App全般

オンラインデータ

このフォーラムを閲覧中のユーザー: Google [Bot] & ゲスト[2人]

cron