オープンチャット, 投稿
オープンチャット, 投稿 (Open Chat, Post)

オープンチャット(Questetraワークフロー基盤の社内ソーシャル)に投稿します。案件ID “#p123” のトピック付で自動投稿されるため、案件関与者のタイムラインにのみ表示されます(ワークフローエンジンの立場で投稿されるためフォロワーの概念はありません)。なお投稿された内容は、BPMSユーザであれば誰でも、(案件データの閲覧権限がないユーザでも)、検索閲覧できるようになります。

2019-12-18 (C) Questetra, Inc. (MIT License)
https://support.questetra.com/ja/addons/open-chat-post/

Configs
  • A: 投稿文が格納されている文字列型データ項目を選択してください *
  • B: 添付ファイルが格納されているファイル群型データを選択してください
  • C: 組織メンバーのタイムラインにも表示したい場合は組織IDをセットしてください (例: g99->”99″) #{EL}
Script
// (c) 2019, Questetra, Inc. (the MIT License)
// Notes:
// If Organization ID is configured, the posts will be displayed on the member timelines.
//
// Notes(ja):
// 組織IDをセットしておくと、メンバーのタイムラインにも表示されるようになります


//////// START "main()" /////////////////////////////////////////////////////////////////
main();
function main(){ 

//// == Config Retrieving / 工程コンフィグの参照 ==
const dataIdA = configs.get( "conf_DataIdA" ) + "";  // config required
const dataIdB = configs.get( "conf_DataIdB" ) + "";  // config not required
const orgId   = configs.get( "conf_OrgId" ) + "";    // config not required
engine.log( " AutomatedTask Config: Organization ID: " + orgId );


//// == Data Retrieving / ワークフローデータの参照 ==
let strPostText = "";
if( engine.findDataByNumber( dataIdA ) !== null ){
  strPostText = engine.findDataByNumber( dataIdA ) + "";
}
let arrFiles = "noFile";
let numFilesSize = 0;
if( dataIdB !== "" ){ // if configured
  arrFiles = engine.findDataByNumber( dataIdB ); // java.util.ArrayList
  if( arrFiles !== null ){
    numFilesSize = arrFiles.size() - 0; // Java Int to Javascript number
  }else{
    engine.log( " AutomatedTask FilesWarning:" +
                " Files not attached" );
  }
}


//// == Calculating / 演算 ==
// prepare OpenChat Message
// com.questetra.bpms.core.event.scripttask.FeedServiceWrapper
let chatMsg = feedService.begin(); // returns FeedMessageWrapper
    chatMsg = chatMsg.setMessage( strPostText );
if( numFilesSize !== 0 ){
  for( let i = 0; i < numFilesSize; i++ ){
    // com.questetra.bpms.core.event.scripttask.QfileView
    engine.log( " AutomatedTask Files:" +
                " File Name: " + arrFiles.get(i).getName() );
    engine.log( " AutomatedTask Files:" +
                " File Length: " + arrFiles.get(i).getLength() );
    engine.log( " AutomatedTask Files:" +
                " File ContentType: " + arrFiles.get(i).getContentType() );
    chatMsg = chatMsg.attachFile( arrFiles.get(i) );
  }
}
if( orgId !== "" ){
    // com.questetra.bpms.core.event.scripttask.QgroupDaoWrapper
    chatMsg = chatMsg.setShareQgroup( qgroupDao.findById( orgId ) );
}

// post Message to OpenChat
engine.log( " AutomatedTask OpenChat: Post" );
const postResult = chatMsg.post() - 0; // Java Long to Javascript number
engine.log( " AutomatedTask OpenChat Message ID: "  + postResult );


//// == Data Updating / ワークフローデータへの代入 ==
// (nothing)


} //////// END "main()" /////////////////////////////////////////////////////////////////

Download

Capture

オープンチャット(Questetraワークフロー基盤の社内ソーシャル)に投稿します。案件ID "#p123" のトピック付で自動投稿されるため、案件関与者のタイムラインにのみ表示されます(ワークフローエンジンの立場で投稿されるためフォロワーの概念はありません)。なお投稿された内容は、BPMSユーザであれば誰でも、(案件データの閲覧権限がないユーザでも)、検索閲覧できるようになります。

Notes

  1. 2019年12月現在、投稿(ワークフローエンジンの立場からの投稿)を削除する機能はありません
  2. 組織IDをセットしておくと、メンバーのタイムラインにも表示されるようになります

See also

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

%d人のブロガーが「いいね」をつけました。