1

私はAlfresco(バージョン4)を初めて使用し、次の署名を持つ機能を持つ電子メールを送信するためのWebスクリプト(実際にはlib.js)を作成したいと思います。

function sendMail(to, subject, templatePath, templateArgs )

この関数は、いくつかの条件が満たされたときに他のWebスクリプトから呼び出されます。私はこのようなスクリプトを見つけました:

var mail = actions.create("mail");
mail.parameters.to = "receiver_email@some.domain";
mail.parameters.subject = "Test subject";
mail.parameters.template = companyhome.childByNamePath("Data Dictionary/Email Templates/Workflow Notification/wf-email.html.ftl");

var templateArgs = new Array();
templateArgs['workflowTitle'] = "workflowTitle";
templateArgs['workflowPooled'] = true;
templateArgs['workflowDescription'] = "workflowDesc";
templateArgs['workflowId'] = "workflowId";

var templateModel = new Array();
templateModel['args'] = templateArgs;
mail.parameters.template_model = templateModel;

mail.execute(search.findNode("workspace://SpacesStore/9e15aaac-b30b-4266-984f-21fe273a6113"));

しかし、私は3つのことを知らないので、コードにそれを入れる方法がわかりません。

  • このコードをシナリオで使用できますか?つまり、インポートしてさまざまな電子メールの送信に使用できるjs libを作成できますか?

  • 可能であれば、アクションへの参照(ファイルの先頭に何をインポートするか)はどこにありますか?

  • mail.execute関数の引数として何を入力する必要がありますか?

4

1 に答える 1

2

mail.executeは「反対」のルールです。これは、コードが屋外のノードに対して関数を実行するように要求することを意味します。したがって、ドキュメントをアップロードするときに電子メールを送信すると、mail.executeは新しく作成されたノードを使用するため、新しく作成されたファイルへのリンクをメールに追加できます。

とにかく、それを単純化して、コンテンツが作成/更新されたときに一部のコンテンツでトリガーするルールを作成し、上記で投稿したものとしてsendmailaction.jsを必要なユーザーに自動的に使用することができます。

それ以外の場合は、次のようなものを作成できます。

function sendMail()
{
    var mail = actions.create("mail");
    mail.parameters.to = bpm_groupAssignees.properties["cm:email"];
    mail.parameters.subject = "New File uplodaded with name " + document.name;
    mail.parameters.from = initiator.properties["cm:email"];
    mail.parameters.text = "Kindly approve the document: " + document.name;
    mail.execute(document);
}
sendMail();
于 2012-08-31T11:23:09.537 に答える