일감을 찾던 중, 운영 리소스 감소를 목표로 하는 업무가 있길래 냉큼 줍어왔다.
해당 일감의 주된 내용은 반복 작업을 최대한 IT 기술을 사용하여 최소화시키는 것이였다.
화주, 선사, 파트너사를 엮어주는 우리의 프로덕트는 서류
를 상당히 많이 쓰는 편인데
이것을 운영팀에서는 매번 다운로드받고 어드민에 올려주는 반복 작업의 비중이 매우 크다.
그래서 이러한 작업을 최대한 간소화를 하는 것이 목표였고,
첫 번째 스탭으로는 BL
이라는 문서를 자동으로 어드민 툴에 업로드하는 것이였다.
여기서 BL이란 ?
(Boys Love 아님. 검색하면 꼭 나오더라)
시작부터 문제에 봉착을 하게 되는데
솔직히 여기서 좀 어쩌라고의 느낌이 강했다.
그래서 어떻게 해야하는걸까 고민을 하다가, 결국 AI + OCR
의 힘을 빌려야한다는 결론을 내렸다.
라고 종하님께 보고(?)를 올렸더니 문서가 절대로 잘못 올라가면 안된다며
티켓에 대한 내용을 다시 읽어보라고 하셨는데, 거기에 있던 문장이 있었다.
운영에 드는 시간을 최대한 단축합니다.
즉 완벽한 자동화가 아닌, 반자동화만 되더라도 큰 영향을 줄 수 있다며 조언을 해주셨다.
운영팀이 한명이 아닌 여러명이기에, 한 명당 1분씩만 줄여도 누적되면 수치가 매우 크다는 것
그러면서 구글 워크스페이스
에 뭔가 도입할 수 있다는 이야기를 주셔서 그때부터 찾아보길 시작했다.
그리고 서치를 해보니 Gmail에 Add-ON을 장착할 수 있다는 것을 확인했다.
막상 시작을 하려고 했더니 자료가 매우매우 모자랐다.
국내 자료는 사실상 전멸급이었고 구글에서 만들어둔 튜토리얼을 해본 후 감을 잡았다.
튜토리얼 페이지(유료다 1달러)
사용할 수 있는 언어는 바닐라 javascript(타입 선언을 못해서 매우 불편했다..)
내부에서 만들어놓은 다양한 빌트인 서비스를 이용하여 Add-On을 만들 수 있었다.
문제는 전역변수가 없고, 이벤트간의 함수에 값을 제대로 할당할 수 없다는 것?
아무튼 뚝딱뚝딱 거리면서 제작을 완료했다.
참고를 정말 많이 했던 공식문서
위를 보면 카드서비스라는 것이 있는데, 화면 한개 한개가 “카드
” 라는 것으로 구성되어있다.
그래서 이러한 카드를 여러개 운용하여 화면을 구현 하는 것이 주요 포인트다.
그래서 중요한 것이 시나리오였는데, 이 부분은 글로 먼저 써놓고 작업을 진행하게 됐다.
이런식으로 적어놓고 작업을 진행했더니 스무스하게 진행이 됐다 :)
맨 처음에 클로즈 베타 테스트를 위해서 손배포를 진행했다.
한분한분 찾아가서 apps script에 진입해서 코드 ctrl + c + v를 반복한 후
바로 고쳐야되는게 생겨서 5명을 고쳐야하는 일이 발생했는데…
잠시만 제가 수정좀 할게요...ㅠㅠ~
이렇게 할빠에 걍 클라우드 배포하고 말지 라는 생각이 들어서 gcp에 연동을 시켰다.
(GCP에 연동되어있는 모습)
로컬에선 잘됐는데 이상하다?
구글 앱 스크립트에서 호출을 하는 것이다보니, 외부 API를 호출 할 때 문제가 발생했다.
그래서 하라는 것들을 이것저것 했는데..
잘 안 됐다.
그러다가 와일드카드를 잘못 썼나? 라는 생각이 들어서 다른걸 써봤는데.. 됐다.
https://어쩌구.s3.ap-northeast-2.amazonaws.com/* 를
https://*.s3.ap-northeast-2.amazonaws.com/ 로 고쳤더니 해결됐다.
(이거 고치는데 6시간걸림 자다가 일어나서 고쳤다)
그래서 배포가 진행이 됐고, 현재 일부 운영팀 분들이 사용 중이다.
현재는 키바나의 유저 에이전트를 통하여 호출 횟수를 체크하고 있다.
사용 검색어 | userAgent: Google-Apps-Script and env:"prod"
회사에서 참 다양한 기술로 문제를 해결하고 있는데
이러한 방식으로도 운영팀에 도움을 줄 수 있구나 라는 생각이 들었고
든 시간에 비하여 업무 효율을 많이 올려주게 되어 즐겁게 작업을 했다.
아래는 현재 사용하고 있는 Gmail Add-On의 모습이다.