리그캣의 개발놀이터

기획안 - daily bot 데일리봇 (챗봇) 본문

팀 활동/인턴쉽

기획안 - daily bot 데일리봇 (챗봇)

리그캣 2018. 1. 23. 15:36

1.     알림 기능

         출근 10:00 그날 일정을 알림.

         일정 10 전에 알림.

         일정 추가나 삭제 해당 채팅 방에 알림.

         구현 방법
해당 구글 캘린더와 SLACK 자체를 연동 하여 Push 알람을 받게끔 설정. 체크박스로 얼마든지 쉽게 구현가능.

         18:00 퇴근 30분전에 내일 일정 자동 출력.

         구현 방법
슬랙 봇이 폴링 기법을 사용하여 시간을 지속적으로 체크 지정한 시간이 되었을때 내일 일정 출력 명령어 호출.

         이슈
해당 명령어를 호출 할때 채널의 이름이 필요하여 소스 안에서 해당 채널로 변경해 주어야함.

2.     일정 안내

         모든 일정 확인 (일정-모두)

         당일 일정 확인 (일정-오늘)

         내일 일정 확인 (일정-내일)

         구현 방법
해당 명령어를 챗봇이 인식하고 명령어에 따라 해당하는 명령어를 unionCalendar.py에서 호출

         이슈
함수지향적으로 프로그램을 구현 하기 번거로움. 막상 구현하니 유지보수가 간단하다 생각.

3.     일정 추가

         새로운 일정 추가 [일정-추가 (-D|-d) 날짜 (-T|-t) 시작:시간~끝나는:시간 (-S:-s)일정제목]

         구현방법
해당 명령어를 챗봇이 인식하고 명령어에 따라 해당하는 명령어를 unionCalendar.py에서 호출
이때, 날짜, 시작시간, 끝나는 시간은 일정한 포멧에 맞추어야 하므로 포멧을 맞추어주는 함수 따로 구현.
정규식을 사용하여 구현 하여서 중간에 띄어쓰기나 대소문자가 바뀌어도 상관없음. 그러나 순서는 일치하여야 하며 하나라도 빠뜨릴 실행안되게 구현.

         이슈
일정을 추가할 참여자의 이메일이 필요하므로 소스안에 미리 각자의 이메일들을 기입필요.
인턴 일정이 한달정도라. 날짜기입만이 오히려 효율적일 것으로 예상되어 기입은 없앰.

4.     일정 삭제

         기존 일정 삭제 [일정-삭제 (-D|-d) 날짜 (-S:-s)일정제목]

         구현방법
해당 명령어를 챗봇이 인식하고 명령어에 따라 해당하는 명령어를 unionCalendar.py에서 호출
이때, 일정에 해당하는 Id 갖고 있어야 해당 일정을 지울 있어. 일정 제목으로 해당 id 뽑아내는 함수를 따로 구현.
정규식을 사용하여 구현 하여서 중간에 띄어쓰기나 대소문자가 바뀌어도 상관없음. 그러나 순서는 일치하여야 하며 하나라도 빠뜨릴 실행안되게 구현. 그리고 해당 날짜에 해당하는 제목의 일정이 없으면 그또한 구현이 안됌.

         이슈
같은 같은 제목의 일정이 있으면 for문을 돌리기 때문에 마지막 일정 하나만 없어짐. 후에 시간과 같이 지정해서 제거를 시키던지, 한꺼번에 여러개의 일정을 제거할 있는 명령어 구현 필요하다 생각함.

역할

곽승혁

         서비스 기획

         챗봇 API 등록

         구글 캘린더 연동 소스 작성

         챗봇 API 이용하여 구글 캘린더 소스 호출.

 



'팀 활동 > 인턴쉽' 카테고리의 다른 글

인턴 봇 - 최종 발표  (0) 2018.01.23
정규식 활용하기  (0) 2018.01.23
서비스 구현 계획서 - 데일리 봇  (0) 2018.01.23
구글 드라이브 api 연동하기  (0) 2018.01.23
Comments