【Slack】 Webhook을 통한 통지로 사용자 그룹에게 멘션을 날린다

개요



사양이 바뀌어, Incoming Webhook 경유라고 <@group_name> 로 멘션 날릴 수 없게 된 것 같기 때문에
slack-api를 사용하여 Incoming Webhook을 통해 알림으로 사용자 그룹에 멘션을 날리는 방법.

참조



Slack API를 통한 멘션 사양 변경 (2018/9/12 ~)
Basic message formatting | slack api

방법


  • 사용자 그룹의 ID 얻기
  • API를 통한 멘션을 ID로 변경

  • 1. 사용자 그룹의 ID 얻기


  • slack api의 usergroups.list 에서 사용자 그룹 정보를 목록으로 가져옵니다.
  • token
  • Test Method를 누르면 json 형식으로 목록을 얻을 수 있습니다.

  • 멘션을 날리고 싶은 사용자 그룹의 ID와 이름을 조사한다.
  • ID 는 tokenid 가 있습니다만 team_id 쪽입니다
  • 이름은 idname 가 있습니다만 handle 쪽입니다
  • 공식 레퍼런스를 보면.



  • 2. API를 통한 멘션을 ID로 변경


  • Incoming Webhook 경유의 멘션을 아래와 같이 변경
  • namehandle , your_team_idid 를 넣는다

  • <!subteam^your_team_id|your_group_name>
    
  • 전원에게 통지하는 경우는 ID를 취득하지 않아도 괜찮아, 각각 아래와 같이



  • Slack의 멘션 방법
    API를 통한 멘션 방법
    통지되는 범위

    your_group_name  name채널 회원 모두
    @channel<!channel>모든 활성 회원


    추가 (2020.08.27)



    또 또 사양이 바뀐 것 같습니다.
    ( @Ant3_Ng 감사합니다)
  • 사용자 그룹의 ID 얻기
    slack api의 usergroups.list를 보러 갈 필요가 없어지고 웹에서 작업 공간을 열고 group의 페이지를 보면 볼 수있는 것 같습니다.
  • API를 통한 멘션을 ID로 변경
    구로 하면, @here 되는 것의 통지는 오지 않는 것 같습니다.
  • 旧: <!subteam^your_team_id|your_group_name>
    新: <!subteam^your_team_id>
    

    세부사항: Formatting text for app surfaces | Mentioning groups

    좋은 웹페이지 즐겨찾기