LINE WORKS에 메시지를 보내는 Looker Action

6745 단어 LookerLINEWORKS
안녕하세요.저는 전통국제정보서비스회사의 쿠라마입니다.
이번에는 BI 도구인 루커의 외부 결합 기능인 액션을 통해 비즈니스 버전 라인'LINE WORKS외부 담화 연합를 통해 라인 사용자에게 메시지를 보내는 통합 기능을 제작했다.

카탈로그


1. 시작
2. LINE WORKS 정보
3. 만드는 동작에 대해
4. Action API를 통한 Action Hub 구축
5. 소스 코드 정보
6.끝

1. 시작


BI 도구 Looker에서 분석한 결과 및 기준에 따라 Action Hub이라는 서버를 통해
데이터를 외부 서비스와 연합할 수 있다.
Looker 내에서 이러한 외부 서비스 결합 기능을 Action이라고 합니다.
Looker 공식트와이리오와 슬랙 등 액션 수십 가지가 공개됐습니다.이지만 프로그래밍을 통해 Action을 독자적으로 개발할 수도 있다.
독립 실행형 Action을 개발할 때
①. 공식 노드.js 프레임 사용 방법
②. Action API 자동 설치 방법
의 두 가지 방법으로 ② Action API를 적용해 라인 워커스 사용자에게 라인 사용자가 포함된 메시지 템플릿을 보내는 동작을 제작했으므로 이번 편에서 소개한다.
구체적인 소스 코드는 Giithub에서 공개됨
(열심히 만들고 있어요! 잠시만요)

2. LINE WORKS 정보


LINE WORKS는 LINE과 합작할 수 있는 유일한 비즈니스 메신저입니다.LINE처럼 채팅과 스티커를 보낼 수 있습니다LINE 사용자 또는 다른 LINE WORKS 사용자와 교류할 수 있습니다..
예를 들어 B to C에서 손님을 접대하는 업체에서 라인 워킹S를 사용함으로써 스태프, 영업(LINE WORKS 사용자)과 고객(LINE 사용자) 간 주고받는 대화 내용과 고객 정보를 일괄적으로 관리할 수 있다.
또 조직 전체가 어떤 대화를 나눴는지, 이력서도 얻을 수 있기 때문에 데이터베이스에 배치해 분석할 수 있다.

URL 스키마


LINE WOKS에서는 URL 스키마를 사용하여 다양한 작업을 수행할 수 있습니다.여기에는 지정된 사용자 대화로 마이그레이션할 URL 스키마 기능이 있습니다.
lineworks://message/send?version={scheme_verion}&message={message}&worksAtIdList={works_at_id_list}&callbackMainYn={Y/N}
LINE WORKS 응용 프로그램에서 상기 URL 프로젝트를 누르면 LINE WORKS 사용자가 지정한 사용자로 이동해서 대화를 할 수 있습니다.
위의 경우 URL 모드를 누르면 메시지가 지정한 글이 채팅창에 입력된 상태에서works AtIdList가 지정한 외부 사용자(LINE@, WORKS@)의 채팅방으로 이동합니다.
사용자는 글이 정확하다는 것을 확인하고 대화를 외부 사용자에게 보낼 수 있다.메시지로 지정된 글도 수정할 수 있습니다.
이상의 기능을 적용해 라인 워커스 이용자(스태프와 영업자)에게 리뷰를 하고 라인 이용자(고객)가 대화할 수 있도록 한다.

3. 만드는 동작에 대해


2장에서 소개한 URL 시나리오를 활용해 LINE WORKS 사용자에게 LINE 사용자 대화를 복제하는 동작을 제작했다.
다음은 LINE WORKS 스태프, 영업 정보, LINE 고객 정보를 DWH에서 관리하는 것을 전제로 한다.
 

3.1. LINWORK 사용자 및 LINE 사용자가 해당 테이블을 작성합니다.


이번에 Looker에서 아래 표를 작성할 때 각 라인 WORKS 사용자를 대상으로 링크된 라인 사용자에게 대화를 복제하는 동작을 만들었다.
LINEWORKS ID
LINE ID 1
LINE 사용자 이름
xxxxx@org
901000000011001
산전타로
xxxxx@org
901000000011002
덩굴꽃
xxxxx@org
901000000011003
스즈키 이치로
yyyyy@org
901000000011001
산전타로
yyyyy@org
901000000011004
장쑤 성
zzzzz@org
901000000011001
산전타로
위의 경우 다음과 같이 논평한다.
  • xxxxx@org채팅을 원하는 LINE 사용자
  • 야마다 타로(900000100101), 사토 화자(90100000000000102), 이치로(900000000103)
  • yyyyy@org채팅을 원하는 LINE 사용자
  • 야마다 타로(90100000101), 다카하시 웅일(9010000000104)
  • zzzzz@org채팅을 원하는 LINE 사용자
  • 야마다 타로(90100000101)
  •  

    3.2. Action 테이블에서 LINE WORKS 사용자에게 입력한 복사된 글과 LINE 사용자에게 보내는 메시지 템플릿


    Looker의 데이터 분석을 이용하여 LINE WORKS 사용자에게 입력한 메시지 글과 LINE 사용자에게 보내는 메시지 템플릿을 Action 형식으로 분석합니다.

    위에서 설명한 대로 양식을 입력하고 작업을 수행하여 LINE WORKS Bot을 통해 LINE WORKS 사용자에게 메시지를 보냅니다.

    3.3. 작업 실행


    Bot이 메시지를 보낸 후의 절차는 다음과 같습니다.

    (전제는 일부 CRM 시스템과 합작해야 한다는 것이다) 예를 들어 직원, 영업자에게 생일이 다가오는 고객에 대한 대화를 전달하는 것이다.몇 달 동안 고객과 대화한 기록이 없는 직원과 영업자에게 인사하기 위한 리뷰를 고려할 수 있다.

    4. Action API를 통한 Action Hub 구축


    이번에는 Action API를 자체 설치해 Action Hub 서버를 구축했다.
    Action API를 사용할 때는 데이터베이스를 활용하고 개별적인 AWS 환경과 통합을 진행하는 등 이번처럼 특정 용례의 동작을 유연하게 만들 수 있다.
    플랫폼 선택은 자유롭지만, 이번에는 디자인의 단순성+재발성 높이를 고려해 허로쿠(Heroku Buton)로 액션허브 서버를 구축했다.
    또한 Action API를 사용할 때 HTTP 요청을 처리할 수 있는 언어는 아무 문제도 없습니다.이번 Type Script + Express는 Action API를 탑재한 서버를 구축했습니다.
    LINE WORKS에서bot을 통해 메시지를 보낼 때 서버에서 사용하는 접근 영패를 가져와야 하지만 가져오는 방법은 고정된 IP 형식과 ID 로그인 형식 두 가지가 있다.
    고정 IP 유형은 라인 WORKS에 IP를 등록해 특정 액세스 토큰을 취득하는 방식으로, ID 로그인 유형은 인증 키를 이용해 JWT(Json WebToken)를 만들어 인증 서버에 토큰을 요청하는 방식이다.(아래 그림 참조)
    참조: https://developers.worksmobile.com/jp/document/1002002?lang=ja
    고정 IP 유형의 경우 인증 키로 JWT를 만들거나 액세스 토큰을 관리하지 않아도 되기 때문에 수월하지만, Heroku의 외부 IP를 고정해야 하기 때문에 가져오기Proximo 등 부가 장치로 고정 IP를 준비해야 한다.Proximo 무료 프로그램이 없기 때문에 편하게 디자인해주셨으면 하는 생각에 아이디 로그인 유형을 적용했습니다.
    이때 Heroku Postgres는 액세스 토큰을 관리하는 데 사용됩니다.
    전체 구조의 이미지는 다음과 같습니다.

    5. 소스 코드 정보


    Giithub에 소스 코드가 공개되었습니다.readme에도 [Deploy to Heroku] 버튼이 구성되어 있어 자신의 환경을 쉽게 설계할 수 있습니다.구체적인 디자인 방법도 README에 기재되어 있으니 꼭 참고하시기 바랍니다
    (열심히 만들고 있어요! 잠시만요)

    6.끝


    이번에는 액티브 API를 이용해 라인 워커스와 협업하는 동작을 만들었다.
    액션 API 활용을 통해 DB 등을 활용해 유연하게 액션을 개발할 수 있고, 이번처럼 용례에 특화된 액션을 제작할 수도 있다.
    이번에 제작된 Action은 Giithub부터 공개될 예정이니 소스 코드를 꼭 확인해 주세요.
    여기까지 읽어주셔서 감사합니다.
    LINE ID는 LINE WORKS에서 관리하는 LINE ID입니다.LINE의 UID가 아닙니다.https://forum.worksmobile.com/jp/posts/100319  

    좋은 웹페이지 즐겨찾기