#1 2015-11-09 18:28:36

渕上
ゲストユーザー

サーバで実行する際、うまくいかない点があります。

お世話になります、株式会社イーナのシステムを担当している渕上と申します。

この度FM14サーバ&FM14pro複数台の環境で、MailMakerPop+のサーバプラグインを
導入させていただきました。

MailMakerPopPlus_Ver322_dll2020_64bit.zip

また、以下のライブラリを使用しています。

MMPSLib[fmp12].zip v. 2
Mail_template8.2.1[MMPLib2.0.1][fmp12].zip

いずれもサーバ上に設置しています。
この環境で今うまくいかないところとして、

①サーバ上のスケジュール実行を利用して30分おきに受信をしていますが、
  時間が経つとなぜか受信がエラーとなってしまい、
  FMサーバを再起動するまで受信ができない状況となります。

   -ER|Server 14.0.1|スクリプト:login...|10/29/2015 11:40:36 AM から他のスクリプトで「MMP+」が、利用されています

  エラーログには上記のように入っています。


②サーバに設置するとiillから始まる関数群が<関数が見つかりません>のようになってしまいます。
  おそらくどこか設定に正しくない部分があるかと思いますが、どういったところが考えられるでしょうか。


③SMTP AUTHを使用する場合、MMPSLibのスクリプトからでは実行できませんでしょうか?
  iill_SMTPAuthentication関数を用いる必要がありますか。
  もしこの関数を使うとしたら、設定・送信・切断なども全て上記スクリプトではなく
  関数のみで行うのがよろしいでしょうか?(混在させられないでしょうか)

があります。
いずれもローカルで動かしたところでは問題なかったのですが、サーバへ設置するとうまくいきませんでした。
よく理解できておらず初歩的なご質問かもしれません。
恐縮ですが、何卒ご教示のほどお願い致します。

#2 2015-11-09 23:47:27

admin
管理者

Re: サーバで実行する際、うまくいかない点があります。

>(1)サーバ上のスケジュール実行を利用して30分おきに受信をしていますが、
>時間が経つとなぜか受信がエラーとなってしまい、
>FMサーバを再起動するまで受信ができない状況となります。
>  -ER|Server 14.0.1|スクリプト:login...|10/29/2015 11:40:36 AM から他のスクリプトで「MMP+」が、利用されています
>  エラーログには上記のように入っています。

>  -ER|Server 14.0.1|スクリプト:login...|10/29/2015 11:40:36 AM から他のスクリプトで「MMP+」が、利用されています

このエラーの前に ファイル:MMPLib_Error_Log.fmp12のログで

LOGOFF|ProAdvanced *|iill_SendLine( "QUIT" ):0|iill_ReadLine:+OK Bye-bye.|iill_Close:0.....

は、無いでしょうか?無いとなると、「LOGOFF」の処理が出来ていません。

>  -ER|Server 14.0.1|スクリプト:login...|10/29/2015 11:40:36 AM から他のスクリプトで「MMP+」が、利用されています

は、排他処理の制限にかかっています。ただ、何かしらのエラーの場合でも20分経てば、強制的にロック解除するようにしてあるので、
大丈夫なはずなのですが.....。


通常、エラーがない場合のLogは、以下のように「LOGIN」のあと「LOGOFF」となるはずなのですが、
このあたりのLogを教えて下さい。
LOGIN|Server *|iill_login:+OK 1 12611|try:1|.....
LOGOFF|Server *|iill_SendLine( "QUIT" ):0|iill_ReadLine:+OK Bye-bye.|iill_Close:0|.....


>(2)サーバに設置するとiillから始まる関数群が<関数が見つかりません>のようになってしまいます。
>  おそらくどこか設定に正しくない部分があるかと思いますが、どういったところが考えられるでしょうか。

FileMaker Serverにプラグインを設置した場合、サーバのスケジュール でスクリプトを走らせ結果を確認するか、
「サーバー上のスクリプト実行」を走らせ結果を確認するしかありません。

<関数が見つかりません>というのは、クライアント(FileMaker Pro)で見ていると思うのですが、
クライアント(FileMaker Pro)で関数を確認するには、クライアント(FileMaker Pro)にプラグインを設定する必要があります。


>(3)SMTP AUTHを使用する場合、MMPSLibのスクリプトからでは実行できませんでしょうか?
>  iill_SMTPAuthentication関数を用いる必要がありますか。
>  もしこの関数を使うとしたら、設定・送信・切断なども全て上記スクリプトではなく
>  関数のみで行うのがよろしいでしょうか?(混在させられないでしょうか)

ファイル: 「MMPSLib」の
スクリプト
「Set_SmtpSetting(account,password,server,port,ssl)」
で、 account,password があれば、自動でSMTP認証になります。

オフライン

#3 2015-11-10 15:17:32

渕上
ゲストユーザー

Re: サーバで実行する際、うまくいかない点があります。

ご回答ありがとうございます。3点とも大変参考になりました。

> このエラーの前に ファイル:MMPLib_Error_Log.fmp12のログで
> LOGOFF|ProAdvanced *|iill_SendLine( "QUIT" ):0|iill_ReadLine:+OK Bye-bye.|iill_Close:0.....
> は、無いでしょうか?無いとなると、「LOGOFF」の処理が出来ていません。

このようなログはありませんでした。
ログオフがうまくできていないとのこと、見直します。

> 排他処理の制限にかかっています。ただ、何かしらのエラーの場合でも20分経てば、強制的にロック解除するようにしてあるので、
> 大丈夫なはずなのですが.....。

数日経過しても続いていました。
いずれにしても自分で排他をかけるようにすれば大丈夫そうなので、
その辺やってみます。

> FileMaker Serverにプラグインを設置した場合、サーバのスケジュール でスクリプトを走らせ結果を確認するか、
> 「サーバー上のスクリプト実行」を走らせ結果を確認するしかありません。
> <関数が見つかりません>というのは、クライアント(FileMaker Pro)で見ていると思うのですが、
> クライアント(FileMaker Pro)で関数を確認するには、クライアント(FileMaker Pro)にプラグインを設定する必要があります。

FMの仕様でそうなっているのですね。
プラグインを設定した端末からスクリプトを組むようにします。

> ファイル: 「MMPSLib」の
> スクリプト
> 「Set_SmtpSetting(account,password,server,port,ssl)」
> で、 account,password があれば、自動でSMTP認証になります。

このスクリプトには気づきませんでした。
これで直接関数を呼び出さずにライブラリファイルだけでいけそうです。

ご丁寧にありがとうございました。
週末に再度この取り組みを行う予定にしていますので、
その際早速試してみます。

#4 2015-11-11 13:22:39

admin
管理者

Re: サーバで実行する際、うまくいかない点があります。

「ファイル:MMPLib2.fmp12」での排他制御は、

ファイル:MMPLib2.fmp12
スクリプト:login(hostname,port,SSL,username,password,SaveDirectory,remove)
25行目:#排他処理 ロック フラグ|戻り値が「0」の場合は、現在の時刻が設定される


スクリプト:logoff
15行目:#排他処理 開放 フラグ

で行っています。

オフライン

#5 2015-11-12 16:09:13

渕上
ゲストユーザー

Re: サーバで実行する際、うまくいかない点があります。

情報ありがとうございます、大変助かります。
明日以降で順次試してみて、結果については改めてご報告します。

よろしくお願い致します。

#6 2015-11-13 15:23:51

渕上
ゲストユーザー

Re: サーバで実行する際、うまくいかない点があります。

お世話になります。

確認してみましたところ、

  LOGOFF|ProAdvanced *|iill_SendLine( "QUIT" ):0|iill_ReadLine:+OK Bye-bye.

この行は通常は出ているようなのですが、エラーが出始めると出なくなります。
(受信にはMail_template8.2.1[MMPLib2.0.1][fmp12].zipをカスタマイズしたものを使用しているので、
Logoffのステップは入っているようです)
もう少し詳細なログをお送りした方がよろしいでしょうか?

また、送信の方ですが「サーバー上のスクリプト実行」でMMPSLibの各スクリプトを
呼出実行していますがどうも反応していないようでした。
これは上述の受信にエラーが出ている状態で試したせいでしょうか?
(業務時間中だったのでエラー状態を抜けることができませんでした。
ひとたびエラーになるとFMサーバAdminコンソールでサービスを再起動しないと直りません。
関係ファイルを閉じる→開くをしても直らない)

#7 2015-11-13 19:52:33

渕上
ゲストユーザー

Re: サーバで実行する際、うまくいかない点があります。

ちなみに、送信のMMPSLibスクリプトを呼び出した際、以下のエラーが発生します。

-ERROR 未送信|lib_Set_From|The parameter 'address' cannot be an empty string.Parameter name: address

呼出側の「サーバ上のスクリプト実行」でSet_Message()スクリプトへの引数には、
$From、$Toとも値が入っているので、このエラーが出るのはやはりどこかおかしいでしょうか。

また、受信がストップしてしまうタイミングのサーバログをみますと、
どうも「Schedule "Mail" aborted; time limit exceeded or server stopped」が
共通して入っているようです。(まだはっきりとは確認できていません)
"Mail"は私がスケジュール設定した名称で、
Mail_template8の「受信」スクリプトを指定しています。

#8 2015-11-16 09:45:26

admin
管理者

Re: サーバで実行する際、うまくいかない点があります。

-ERROR 未送信|lib_Set_From|The parameter 'address' cannot be an empty string.Parameter name: address

値が、「空(empty)」と言うエラーですね。

ファイル:SendMail.fmp12(MMPSLib.fmp12使用)の
スクリプト:送信 を、
「サーバ上のスクリプト実行」で使用するには、改造が必要です。
未送信フラグ フィールド を追加し、「スクリプト:送信」の前に、「未送信」を検索し、そのレコードに対して ファイル:SendMail.fmp12|スクリプト:送信 を実行する必要が有ります。
現在、このあたりの処理は、どういったスクリプトで実行しているのでしょうか?


また、受信がストップしてしまうタイミングのサーバログをみますと、
どうも「Schedule "Mail" aborted; time limit exceeded or server stopped」が
共通して入っているようです。(まだはっきりとは確認できていません)
"Mail"は私がスケジュール設定した名称で、
Mail_template8の「受信」スクリプトを指定しています

FileMaker Serverのスクリプトの「制限時間を過ぎたので停止した。」となっていますね。
もしかすると、メールの受信時、メールサーバーにログインしてからログオフするまでの間に 何か処理をしているのでは無いでしょうか?
その処理に時間がかかったりすると、メールサーバーとの通信が遮断され、次のメールの受信や、メールサーバーからのログオフでエラーになる可能性が高くなります。
何かの処理を追加する場合、全てのメールの受信後(メールサーバーからのログオフ後)に処理をするように変更してみてください。

送信・受信とも思い当たるエラーの可能性を書いてみました。この辺りは、どうでしょう?

オフライン

#9 2015-11-17 10:52:44

admin
管理者

Re: サーバで実行する際、うまくいかない点があります。

ファイル:SendMail.fmp12(MMPSLib.fmp12使用)の
スクリプト:送信 を、
「サーバ上のスクリプト実行」で使用するには、改造が必要です。
未送信フラグ フィールド を追加し、「スクリプト:送信」の前に、「未送信」を検索し、そのレコードに対して ファイル:SendMail.fmp12|スクリプト:送信 を実行する必要が有ります。

ファイル:SendMail.fmp12(MMPSLib.fmp12)は、MailMakerPop+ のサーバー版を出す前のままなので、MailMakerPop+ For Server には、対応していません。
明示的に書いていないので、分かりにくかったですね。すみません。

オフライン

#10 2015-11-19 17:44:09

渕上
ゲストユーザー

Re: サーバで実行する際、うまくいかない点があります。

いつもご対応ありがとうございます。

ちょっと横道にそれるご質問なのですが、現在もファイルメーカーのSMTP送信機能で
携帯電話へメールする場合に文字化けをすることはよくありますか?
携帯各社の方でUTF-8の対応はだいたい済んでいると聞きましたが。

#11 2015-11-20 10:07:47

admin
管理者

Re: サーバで実行する際、うまくいかない点があります。

すみません。このあたりの情報は、持っていません。

オフライン

クィック投稿

メッセージを書いて送信してください。
登録の確認

実在の人物による登録であることを確認します。

Board footer