🎁 Viber 메신저 플랫폼의 '대화형 봇' 을 통한 모바일 선물하기 서비스 🎁
- Version : 1.0.0
- 프로젝트 명 : Viber 챗봇 기반 선물하기 서비스 구현
- 프로젝트 기간 : 2023.06.08 ~ 2023.07.10
- 프로젝트 소개 :
- Viber 앱(메신저 플랫폼)의 챗봇과 통신할 수 있는 webhook 서버 구축
- 해당 챗봇을 통한 선물하기 서비스 개발
설계 및 명세, 문제 해결에 대한 내용은
Wiki
를 참고해주세요. Wiki 바로가기
첨부된 링크를 통해 Viber API 문서를 확인할 수 있습니다.
- IntelliJ IDEA (Ultimate)
- Java 11
- Gradle 7.6.1
- Spring Boot 2.7.12
- (ORM) JPA
- Spring Mail (Gmail SMTP)
- JsonObject
- SpringAsync
- RestTemplate
- (RDB) MySQL
- (In-memory) Redis
- AWS EC2
- Certificate Manager, ALB (HTTPS 네트워크 구축)
- AWS RDS (MySQL)
- ElastiCache Redis
- S3 Image Bucket
- Github Action
- Code Deploy
- Git
- Notion, Slack
1️⃣ Projects 페이지의 칸 반 보드에서 Todo
를 확인합니다.
2️⃣ 본인이 작업할 업무가 있으면 In Progress
로 옮깁니다. (없을 경우 직접 새로 만들어주세요.)
3️⃣ 'In Progress'로 옮긴 업무를 Convert to issue
로 변경하고, 작업의 내용을 자세하게 작성합니다.
4️⃣ 코드를 fork
하고 개인 repository
에서 작업합니다.
5️⃣ 작업을 완료하면 original repository
의 test
브랜치로 PR을 보냅니다.
6️⃣ 코드리뷰를 진행하고, 모든 승인을 받으면 Merge
합니다.
7️⃣ Merge가 성공하면, Issue는 자동으로 종료합니다. 또한 In Progress
에 있던 작업 티켓도 Done
으로 자동으로 이동합니다.
- 작은 단위로 커밋해주세요.
- 어떻게 보다는 무엇과 왜를 구체적으로 설명해주세요.
- 타이틀은 목적 이 드러나게 작성해주세요.
- 본문은 진행 이유 가 드러나게 작성해주세요.
- 작성 형식
- 태그: 커밋 메시지 (이슈번호)
- ex)
feat: 환영 메시지 전송 기능 구현 (#1)
태그이름 | 설명 |
---|---|
feat | 새로운 기능 추가 및 코드 구현 |
update | 이미 구현된 코드에서 기능 추가 및 변경 |
bug | 버그 수정 |
docs | 문서 작성 및 수정 |
refactor | 코드 리팩토링 (성공적으로 배포한 코드를 변경) |
github-flow 전략 사용
- 기능 테스트를 위해서는 배포가 되어야 함 -> 배포 빈도가 잦을 것으로 예상
- 따라서 브랜치를 복잡하게 나누지 말고, 작업에 맞게 하위 브랜치만 뽑는 전략
- 또는 fork 하여 개인 repo 에서 작업을 진행하고, PR을 보낸다.
- 추가로 git-flow 전략의 방식을 융합하여 main 브랜치에 merge 하기 전에 테스트 진행
브랜치명 | 설명 |
---|---|
main | 서비스 운영이 가능한 수준의 최종 브랜치 |
test | 배포 테스트를 위한 브랜치 , 최종 브랜치 이전에 오류 해결 |
매일 17시
진행- 본인이 작업한 코드를 발표
- 발표 후, PR 페이지에서 코드리뷰 진행
merge
를 위해서 팀원 전원(4인)에게approve
를 받아야합니다.- PR 본문은 자세하게 작성
This closes #이슈번호
를 꼭 작성합니다.
매일 17시
이후 배포를 진행- 문제가 없는 작업(브랜치)을
main 브랜치
로merge
하여 자동 배포 - 테스트를 진행하고 개선사항 및 다음 작업 점검
(좌) 시연 영상, (우) 수신자 이메일로 전달되는 선물
🌟 채화담 | 강시혁 | 김다엘 | 이규호 |