Skip to content

WorkItemHandler 의 Mail 연동 #124

@jinyoung

Description

@jinyoung
  1. BPM에서 email 발송처리
    1.1. JPAWorkList.java 참고 (bpm_worklist 라는 테이블에 쌓는 strategy 구현체), Worklist implementation 으로, 메일 수신자에게 메일을 통하여 workitem 위치를 보내는 구현체 작성후, Application.java 에 @bean worklist(){ return new EMailWorkList(); } 를 밷으면 됨.

https://github.com/TheOpenCloudEngine/uEngine5-base/blob/master/process-service/src/main/java/org/uengine/five/overriding/JPAWorkList.java 참고.

혹은, Pub/Sub 개념으로, task 가 발생시 workitem service 가 task 발생 이벤트를 듣고서, email 내, workitem handler url 혹은 google form 을 발송한다.

  1. 열린 메일 내에서 workitemhandler 주소로 연결되었을 시 어떻게 보안처리 하는가?

1.1. Auto-generated workitem 인 경우 - 임시 workitem 처리용 token 발행 및 validation 으로 열어줌.

1.2. Google forms / sheet / docs 를 이용한 경우는:
google login 을 유도 --> SSO 창이 열려서 열 수 있으면, 열리는거고, 아니면 못열지...
==> 아래에 풀이

Google Form 사용 필요 API

  • Google Sheep api (Google Form 은 Google Sheet Api 에 포함되어있음.)
  • Google app script api

Step0. 폼 발행할때, taskId 를 폼의 히든값으로 부여하고, 우리쪽에서도, 발행한 폼 아이디를 워크아이템 필드에 가지고 있으면 좋음.

Step1. 모델러에서, 휴먼액티비티에 Google Sheep api 로 설문지 목록을 선택함.

Step2. 모델러 저장시, 다음과 같은 작업을 Google app script api 로 실행하여 설문지를 업데이트함.

2018-09-19 4 52 48

2018-09-19 4 54 27

업무 처리자가 Google 로 로그인 한 놈이 아니면?

2018-09-19 5 01 48

2018-09-19 4 59 41

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions