이제 Cloud Function을 사용하여 Slack command를 구현했습니다.

overview.



그냥 공식 튜토리얼 을 해 본 것만의 기사입니다.
Google Cloud Platform의 Cloud Functions와 Google Knowledge Graph Search API를 사용하여 Slush Comomand를 Python에 배포해 보세요.
Slack의 Slush Command를 사용하여 Google의 Knowledge Graph(인명 등을 검색하면 오른쪽에 wiki라든지의 요약이 나오는 것)을 얻을 수 있도록 한다.
Slack에서 /kg hoge 라고 게시하면 hoge를 Google 검색하고 Knowledge Graph를 결과로 표시한다. <- 이것을 목표로

전제 조건 및 준비


  • GCP 프로젝트 결제가 활성화되어 있습니다 (결제 계정과 연결됨)
  • GCP 메뉴에서 Cloud Function 사용
  • GCP 메뉴의 API 대시보드에서 Google Knowledge Graph Search API를 사용하도록 설정

  • GCP 메뉴> API 및 서비스> 라이브러리에서

  • 자격 증명> 자격 증명 만들기> API 키로 API 키를 게시
  • 이 API key를 메모해 둔다

  • 슬랙에 슬래시 명령 통합 추가
  • Slack 메뉴 > App 관리 > 커스텀 통합 > Slack에 추가
  • 명령 선택 창에 /kg를 입력하여 슬래시 명령 통합을 추가합니다.
  • 전환 된 화면에서 토큰 열에 표시된 토큰을 적어 두십시오

  • URL이 나중에 입력되므로 브라우저 화면을 그대로두고 CloudFunction 설정으로 이동합니다.


  • Cloud Function 설정



    오른쪽 상단의 아이콘에서 Cloud Shell(GCP를 조작하는 CLI)을 시작합니다.


    프롬프트가 일어나면

    CloudShell
    git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
    

    을 두드려 샘플 앱 코드가 들어있는 저장소를 clone.

    CloudShell
    cd python-docs-samples/functions/slack/
    

    에서 Slack 샘플 앱 디렉토리로 이동.

    안에 있는 config.json을 편집하여 발행한 API key와 Slush Command의 토큰을 기입한다.
    편집은 Cloud Shell의 우측 상단의 펜의 아이콘(에디터를 시작한다)을 누르면 다른 탭이 일어나 web 에디터가 기동하므로, config.json에 API key와 Slush Command의 토큰을 기입.

    config.json
    {
    "SLACK_TOKEN": "YOUR_SLACK_TOKEN",
    "KG_API_KEY": "YOUR_KG_API_KEY",
    }
    

    config.json을 편집하면 python-docs-samples/functions/slack/
    CloudShell
    gcloud functions deploy kg_search --runtime python37 --trigger-http
    

    를 실행하면 샘플 코드와 config의 설정을 바탕으로 Slack로부터의 커멘드에 의한 리퀘스트를 받는 엔드포인트와, 리퀘스트를 처리해 Slack에 돌려주는 함수를 전개해 준다.

    완료되면 GCP 메뉴 > Cloud Function**에 kg_search라는 함수가 생성된다.

    슬래시 명령 통합 설정



    준비로 입력을 보류하고 있던 통합 설정의 URL의 란에 아래의 엔드 포인트 URL (명령을 송신하는 URL)
    https://YOUR_REGION-YOUR_PROJECT_ID.cloudfunctions.net/kg_search
    

    입력. YOUR_REGION은 GCP의 지역으로, YOUR_PROJECT_ID는 GCP의 프로젝트 ID로 대체되었습니다.
    kg_search는 배포한 Cloud Function의 이름입니다. (샘플 코드를 그대로 빌드했다면 이 이름이 될 것)
    이 엔드포인트 URL은 Cloud Function에 작성된 함수명을 클릭 > 편집 URL에 기재되어 있는 URL과 같다.

    그리고는 커멘드의 이름이나 아이콘등은 적당하게 설정해 인테그레이션의 보존.

    명령을 실행해보기



    시험에 /kg 安倍晋三를 입력하여 실행해보십시오.


    무사 아베 총리의 Knowledge Graph 검색 결과가 돌아왔습니다!

    좋은 웹페이지 즐겨찾기