안녕하세요 저는 크롬익스텐션을 통해
트위치 채팅입력창의 익스텐션을 만들고 있는 개발자 장현재입니다.
(디시콘 익스텐션 : https://chrome.google.com/webstore/detail/twitch-dccon-extension/nljojmgmnidbehhocgkbeejchcmkpgki?hl=ko )
(트위티콘 차원문 : https://chrome.google.com/webstore/detail/%ED%8A%B8%EC%9C%84%ED%8B%B0%EC%BD%98-%EC%B0%A8%EC%9B%90%EB%AC%B8/hiiacklliopliehdgadldnhhpghlahla?hl=ko )
현재 트위치의 프론트엔드는 Single Page Application(이하 SPA)로 이루어져있어서
채팅입력창이 언제든지 생겨났다가 다시 없어지며,
똑같은 폼의 채팅입력창이어도
어느 스트리머의 채팅창에 접속하고있는지 알수없기 때문에
채팅입력창을 일일히 추적하여 파싱하고 원하는 기능을 임베드하는데 큰 어려움이 있습니다.
저는 2017년부터 지속적으로 변화하는 트위치 프론트엔드에 맞추어 크롬익스텐션들을 유지보수하고있으며
기능을 공유하는 두개의 프로젝트를 만들면서 핵심기능을 프레임워크로 묶고
Twitch Chat Framework 라는 이름으로 제공하고 있습니다.
- 채팅 "입력" 창과 관련된 디자인 변경
- 올라오는 채팅을 observe하고 각 채팅을 바탕으로 어떤 행동을 할지 정의할수 있는 함수
- custom 이모티콘 선택기 추가
크게 세가지의 기능을 구현한 뒤에 프레임워크에 등록하여 프레임워크를 시작하면
원하는 기능의 트위치 챗 익스텐션을 만들 수 있는 방식입니다.
아직 API를 제대로 안 만들어놨지만 혹시 관심있으신분이 계시다면
[email protected] 로 연락주시면 친절히 어떻게 사용하면되는지 설명해드리겠습니다.