스프레트시트 업데이트를 workplaceFeed에 알립니다.

제목대로 알림 BOT을 만드는 단계를 적어 둡니다.
WorkPlace는 아직 유행하지 않았기 때문에 자료가 적네요!

채팅에 통지하는 BOT도 만들고 싶었습니다만, 권한이 없고, 권한이 있는 분에게 부탁할 수 없었기 때문에, 포기했습니다 w
그래서 여기에서는 피드 투고까지를 목표로하겠습니다.

작성 절차



이번에는 「TODO 리스트에 ✓가 붙으면 Workplace에 통지한다」 것을 만들어 봅시다.

1. 스프레드시트를 만듭니다.



새 스프레드시트 만들기에서 TODO

적절하게 작업을 추가합니다.


2. 체크가 되면 액션하는 코드를 작성



메뉴 바에서 ツール -> スクリプトエディタ
constants.js
var CHECK_COLUMN = "1"; // 納品通知カラム数(A)

main.js
/**
 * アクティブセルのステータスをチェック
 * トリガー: 編集時
 */
function getState() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var activeCell = sheet.getActiveCell();
  var rowNum = activeCell.getRow();
  // チェックBOXがアクティブ&&チェック付いてる時、通知する
  if(activeCell.getColumn() == CHECK_COLUMN && activeCell.getValue()) {
    // 同列の値も取得して通知します
    Browser.msgBox('日付: ' + sheet.getRange('B' + rowNum).getValue() + '\nタスク: ' + sheet.getRange('C' + rowNum).getValue());
  }
}

체크를 했는지 아닌지를 조사하기 위해서, 편집시에 이 코드를 실행시킵니다. (트리거 설정)
트리거 설정은 스크립트 편집기 상단의 "편집"⇒ "현재 프로젝트 트리거"에서 수행합니다.トリガーの追加 에서 다음과 같이 조건을 선택합니다.

그런 다음 アクセスを許可까지 완료되었습니다.

체크하면 실행되면 OK


3. Workplace에서 BOT 앱 만들기



※BOT를 만들려면 그 그룹의 관리자 권한이 필요합니다.
BOT를 사용하는 그룹 메뉴에서 Intergrations를 엽니다.Create Publishing Bot 에서 작성

이번은 테스트용으로 만들어 보았습니다.
Create New Access Token 에서 토큰을 가져오고 메모합니다.

4. BOT 통지



스프레드시트로 돌아가서 이전에 기록한 토큰을 코드에 씁니다.

constants.js
// workplace
var FACEBOOK_API_URI = 'https://graph.facebook.com/v3.0';
var WORKPLACE_ACCESS_TOKEN = 'DQVxxxxxxx';

main도 편집합니다.

main.js
/**
 * アクティブセルのステータスをチェック
 * トリガー: 編集時
 */
function getState() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var activeCell = sheet.getActiveCell();
  var rowNum = activeCell.getRow();
  // チェックBOXがアクティブ&&チェック付いてる時、通知する
  if(activeCell.getColumn() == CHECK_COLUMN && activeCell.getValue()) {
    // 同列の値も取得して通知します
    postWorkPlaceFeed('日付: ' + sheet.getRange('B' + rowNum).getValue() + '\nタスク: ' + sheet.getRange('C' + rowNum).getValue());
  }
}

/**
 * Workplaceに投稿する
 */
function postWorkPlaceFeed(text) {
  UrlFetchApp.fetch(FACEBOOK_API_URI + '/group/feed?&access_token=' + WORKPLACE_ACCESS_TOKEN, {
    method : 'POST',
    contentType : 'application/json',
    payload : JSON.stringify({
      message: '# タスクが完了しましたBOT\n' + text, // 投稿内容です
      formatting : 'MARKDOWN' // MarkDown使いたい場合はここにいれましょう
    })
  });
}

게시하기 전에 인증을 허용해야 합니다.
스크립트 편집기 상단의 "편집"⇒ "현재 프로젝트 트리거"에서 스크립트를 실행합니다.


인증하면 체크 BOX에 체크를 합시다.
Workplace에 게시되면 성공입니다!




매우 간단했다고 생각합니다.
Workplace는 자료가 적었기 때문에, 메모를 전혀 정리해 보았습니다.
채팅과 피드는 또한 BOT의 역할이 바뀔 것이라고 생각합니다. 어떻게 사용하는지 운영에 따라 다릅니다.
도움이되면 영광입니다.
실수 등 있으면 지적 부탁드립니다!

참고 사이트



이번 기사에는 관계가 없는 것도 섞여 있습니다만, bot를 만들어 가면서 참고가 된 것을 정리해 둡니다.
- Google 스프레드시트만으로 만드는 FB messenger bot
- Facebook Messenger Bot을 만드는 방법 ~ AWS Lambda (Serverless)로 구축 ~
- Bots for Workplace
- Facebook에 봇 연결
- 최초의 서버리스 애플리케이션 개발 ~Serverless Framework를 사용하여 AWS 리소스 배포~
- (공식) POST
- Workplace API로 POST 할 때 멤버에게 멘션하고 싶습니다.

좋은 웹페이지 즐겨찾기