お世話になっております。BB Watchを商品ID87496で下書き登録しています。カスタマーサクセスから、認証に関する3点をLABOへまとめて問い合わせるよう案内をいただきました。
本商品は、MT5の監視EA(EX5)がローカルJSONを通じてWindows表示アプリ(EXE)へデータを渡す構成です。売買注文の機能はありません。
認証コードは、商品編集画面のSTEP3「認証コード確認」から、MT5・半裁量EA向けのものを取得しました。wininet.dllを使う方式です。次の公開手順も確認しています。
https://www.gogojungle.co.jp/post/1/1587
1.閲覧専用口座と再認証
公式手順のOnInit内には、次の条件で起動を拒否する処理があります。
if(AccountInfoInteger(ACCOUNT_TRADE_ALLOWED)==0)
注文を行わない監視専用EAでも、投資家パスワードによる閲覧専用口座は利用対象外でしょうか。利用できる場合は、公式に推奨する認証方法をご案内ください。
また、起動後に再認証が必要となる条件やタイミングも教えていただけますか。
2.付属表示アプリの認証・保護
EAに公式認証を組み込み、EXEを付属の表示用アプリとして同梱する構成で問題ないでしょうか。ローカルJSONを購入証明として扱うことは考えていません。
EXE側にも認証や保護が必要な場合は、利用できる公式方式と組み込み手順をご案内ください。審査に必要なEXE側の提出物と提出方法も確認したいです。
3.認証応答の判定方法
公式手順には、次の条件で認証失敗とする処理があります。
if(StringFind(AccountCert, "success") == -1)
正式な成功・失敗の応答形式と、通信エラー時の推奨判定方法を教えていただけますか。MT5の監視専用EAで参照すべき最新版のサンプルがあれば、取得先もご案内ください。
掲載したコードは公開手順の該当条件式です。製品ソースなどの追加資料が必要な場合は、公開投稿を避けて提出できる窓口をご指定いただけますと助かります。
技術的な内容を開発担当と正確に共有したいため、今回は電話ではなく、LABO上の回答などテキストでのご連絡をお願いいたします。
よろしくお願いいたします。
| 検索結果がありません。 |
| 検索結果がありません。 |
お問い合わせいただきありがとうございます。
ご質問の3点について、項目ごとに回答いたします。
長文失礼いたします。
1.閲覧専用口座と再認証
閲覧専用口座での利用について
売買注文を行わない監視専用EAであれば、投資家パスワードでログインした閲覧専用口座でご利用いただいて問題ありません。
ACCOUNT_TRADE_ALLOWEDで起動を拒否する処理は、売買を行う半裁量EAを想定して認証コードに入れているものです。購入者様の認証(購入確認)とは別の処理で、認証自体は閲覧専用口座でも行えます。そのため本商品では、認証コードのうち次のブロックを削除してご利用ください。
それ以外の部分は変更せず、そのままお使いください。対象は
GrabWeb()による認証と、"success"による成否判定です。推奨する組み込み方法
公開手順(post/1/1587)は以前に作成したもので、MT4を前提にした記述が中心です。
MT5では、商品編集画面にある認証コードの自動挿入機能のご利用をお勧めします。
※ソースはブラウザ上で処理され、弊社サーバーには送信されません。
ACCOUNT_TRADE_ALLOWEDのブロックを削除します。アップロード時は、次の点にご注意ください。
再認証の条件とタイミング
買い切り商品の場合
認証は、EAのOnInitが実行されるときにのみ行います。主なタイミングは次のとおりです。
起動後に定期的な再認証は行いません。
月額商品の場合
STEP3で表示される月額商品用のコードには、定期的に再認証する処理(OnTimer)が含まれます。
ExpertRemove())。EventSetTimer(3600)を設定し、既存のOnTimer・OnDeinitの先頭に処理を追記します。EA側でもタイマーを使う場合は、この点を踏まえて実装してください。2.付属表示アプリの認証・保護
EAに公式の認証を組み込み、EXEを付属の表示用アプリとして同梱する構成で問題ございません。
EXEはEAが出力するデータを表示する構成の場合、認証済みのEAが動作していなければ機能しません。そのためEXE側の認証は必須ではないと存じます。
もしもEXE側にも認証を入れたい場合は、弊社の「GogoAuth」をお勧めします。
https://www.gogojungle.co.jp/tools/ebooks/87163
審査に必要な提出物について
EXEも審査の対象となり、弊社エンジニアによるソースの確認が必要です。
ただし、製品にソースを同梱してしまうと購入者様にも公開されてしまうため、公開を希望されない資料は、弊社宛のDMで「エンジニア宛」と明記してお送りください。弊社エンジニアが確認させていただきます。
3.認証応答の判定方法
成功・失敗の判定
認証の成否は、
GrabWeb()の戻り値に"success"が含まれるかどうかで判定します。"success"を含む場合:認証成功失敗時の戻り値は、
Authentication failure -に続けて理由を示す文言が入ります。ただし文言は今後変わる可能性があるため、個別の文言で分岐せず、"success"を含むかどうかだけで判定します。通信エラー時の判定
通信エラー時は、
GrabWeb()がAuthentication failure - Error connecting to server : by GogoJungleを返すため、認証失敗として扱われます。通信エラーの場合も、認証成功として扱わないでください。
最新版のサンプルの取得先
MT5の最新版の認証コードは、商品編集画面のSTEP3「認証コード確認」で表示されるものです。公開手順のページではなく、こちらを参照してください。
本商品のような監視専用EAは、「半裁量EA」向けのコードから、1でご案内した
ACCOUNT_TRADE_ALLOWEDのブロックを削除するだけで適用可能であると存じます。ご不明な点がございましたら、お気軽にお問い合わせください。
よろしくお願いいたします。