brunch

You can make anything
by writing

C.S.Lewis

by YJ Min 민윤정 Mar 21. 2018

코노 슬랙봇(Kono Slack Bot)개발 스토리

슬랙(Slack) 이용자라면 한번 체크해 봐야 할 필수 봇(Bot)

인공지능 기반 일정관리 비서, 코노(Kono)를 만드는 Kono Team 은 대부분이 개발자, 디자이너, 프로덕트 매니저, 서비스 운영자로 구성된 팀이다. 재택근무가 자유롭고, 샌프란시스코, 싱가포르, 서울에서 일하다 보니, 직접 만나서 얘기하기보다, 슬랙이나 이메일로 상당한 업무를 처리하고 물론 상당히 많은 대화가 슬랙에서 일어난다.


슬랙(Slack) 은 협업용 메신저로, 맨 처음 쓰기로 결정한 이유는, 우리가 여러 해외 엑셀러레이터에 선발이 되었는데 그 엑셀러레이터들에서 많이 사용했었기 때문.


아래는 올해 2월의 한 주, 우리 팀이 사용했던 슬랙에서 사용했던 메시지 통계이다. 10명 남짓의 팀원수를 감안하면 얼마나 우리 팀이 슬랙에 중독되어 있는지 알 수 있다.

2018. 2 월 한 주 통계. Konolabs Slack Workspace


우리 팀은 작년 9월에 Kono 이메일 봇 (Kono Bot; https://kono.ai)을 오픈으로 공개한 바 있다. 하지만, 정작 대다수 팀 내 미팅은 슬랙을 쓰다가, 예정치 못한 상태에서 이뤄졌고, 이때마다 아래 일들이 귀찮게 느껴지기 시작했다.


1. 우선 슬랙에서 채팅하다가, 갑자기 잡히는 소규모 미팅이 많았다. "랜딩 페이지 구성을 위해서 한번 체크해야 하지 않을까요?", "간단히 내일 컨콜할까요?", "다음주에 체크업하죠", "dj 가 없는데 dj랑 같이 얘기해보죠. 오늘 시간 가능하세요?" 등등

2. 번거롭고 귀찮은 일들. 이럴 때, 캘린더 열어보고, 다시 돌아와서, 대답하고 할 때, 꼭 응답이 없거나, 오프라인인 사람들이 있다. 캘린더, 이메일, 슬랙 앱을 왔다 갔다 하는 일은, 생각보다 번거롭고 귀찮은 일이다.

3. 일단, 팀원들이 이메일보다는, 슬랙에서 더 많은 시간을 보내고 있었다. 이메일로 미팅을 잡다가도, 슬랙에서, "잡힌 거 기억하시죠?" 등등을 얘기할 때가 많았다.


그래서, 당장 우리 팀이 필요해서, 슬랙봇 개발이 시작되었다.

그러던 중, 2017년 11월에 슬랙 본사팀과 슬랙봇 프로토타입에 대해서, 미팅을 나눌 기회가 있었다. 우리의 원래 프로토타입은 상당히 묻고 답하고 형식의 봇이었다. 다른 일반적인 슬랙봇과 유사했다고 보면 된다. 하지만, 의외로, 슬랙 본사팀의 Developer Evangelist들과 프로덕트 매니저들과 가진 세션을 통해서 우리는 두 가지 Key Feedback을 받을 수 있었다.


App-like UI Component를 활용

최근에 추가된 슬랙 최신 버전의 API를 활용하면, 상당히 앱과 유사한 UI를 구성할 수 있다. 일일이 자연어로 지시하는 것도 좋지만 간단한 버튼이나, Pull Down 메뉴 등을 활용하면 훨씬 인지적인 이용자 동선을 설계할 수 있었다.

App-like Interface 활용 화면


예를 들어, "@kono 다음 주에 @jaehoon @danpark 과 미팅 잡아줘"라고 명령하기는 자연어로 하는 게 가장 자연스럽다. 하지만, 언제, 어디서, 누구와, 또 미팅 아젠다와 메모 추가는 명시적인 버튼이나 선택 화면으로 한 번에 세팅하게 하는 게 더 편리하지 않을까? 비공개 베타 테스트 동안 이용자들도 이 부분이 더 명시적이라고 생각하고 잘 활용하는 것을 관찰할 수 있었다.

이를 구현하기 위해서, 참조한 슬랙 Interactive API 문서 : https://api.slack.com/interactive-messages


불완전한 커맨드(Command)를 허용해서 이용자가 선택할 수 있도록 만들기

처음에는 보다 완벽한 커맨드 이해에 집중해야 하지 않나 하는 고민이 있었다. 최소한의 입력을 받고, 어느 시간대가 좋은지, 어디가 좋은지, 더 추가할 미팅 참석자는 없는지, 미팅 제목과 아젠다는 무엇인지, 물어볼 수 있는 과정이 다양한 인터페이스와 Bot 간의 Interaction으로 가능하다는 점을 알게 되었다.

봇과 핑퐁이 작은 것이 꼭 좋은 게 아니라, 이런 과정이 이용자가 Bot을 좀 더 신뢰할 수 있게 만들 수 있다는 점을 배울 수 있었다.


그래서, 지금 코노 슬랙 봇 (Kono Slack Bot)으로 할 수 있는 일들


Kono를 팀원처럼 부르거나, 커맨드 모드로 부르기 - @kono 또는 /kono 두 가지 모드가 모두 가능하다. 어떤 채널에서나 부르는 게 가능하고, 멘션 커맨드(@kono)로 부르기 위해서는 해당 채널에 초대하면 된다.

내 일정 조회하기 -  "@kono 내일 일정 보여줘."  "/kono 이번 주 @jeremy와 잡은 일정 보여줘"와 같은 명령어가 가능하다. Kono는 일정을 리스트업 해서 보여주고 Kono 가 잡았던 일정에 대해서는, 수정/취소를 할 수 있게 제공한다.

미팅 일정 잡기 - "@kono @mark @suzy와 내일 컨콜 잡아줘", "@kono 다음주에 @mark @jeremy 와 미팅 잡아줄래?"와 같은 명령이 가능하다. "@kono @mark @suzy와 미팅 잡아줘" 만 입력하면 시간대나 장소를 추가로 지정할 수 있다. 특히 우리는 싱가포르, 샌프란시스코와 같이 다른 국가에서 근무하는 멤버들도 있는데 이들의 시간대나 설정을 조회하지 않고도 컨퍼런스콜을 바로 잡아주는 기능은 해당 멤버들이 가장 좋아하는 기능이다.

잡은 일정 변경하거나 취소하기 - "@kono @mark와 다음 주 잡은 일정 변경해줘" 생각보다 너무너무 편리한 기능. 시간, 장소, 참석자 추가나 변경, 메모나, 제목 수정이 가능하다. 특히 참석자 중 한명만 기억해도 이 명령어를 사용할 수 있다.


슬랙을 이용 중인 사람이라면 필수 체크 봇, 코노(Kono)

만약 당신이 슬랙을 사용 중이라면, 지금 무료로, 코노 슬랙 봇 (Kono Slack Bot)을 당신의 슬랙팀에 추가해 볼 수 있다.

https://kono.ai/slack 


매거진의 이전글 구글 캘린더 x 슬랙 x Kono로 스마트한 일정관리
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari