← 모든 글

AI를 일에 연결하는 과정 · 01

텔레그램에 AI 비서를 연결하고, 견적 메일까지 보내보기

봇 만들기부터 명함 읽기, 기존 업무 시스템 연결, 확인 후 견적 발송까지. 작은 시험으로 나눠 진행한 과정.

HJAI 활용 · 업무 자동화
글의 내용을 요약한 표지 이미지

명함 사진과 미팅 내용을 보내면 연락처를 정리하고, 필요한 견적을 만들어주는 비서가 있으면 좋겠다고 생각했다. 휴대폰에서 평소 대화하듯 지시하고, 처리한 내용은 기존 업무 화면에서도 확인하는 방식으로.

텔레그램을 대화 창으로 쓰고, 내 PC에서 실행하는 프로그램에 AI와 업무 시스템을 연결했다. 코드 구현은 Codex와 진행했다. 나는 필요한 업무 흐름을 정하고, 실제 명함과 대화로 시험하며 잘못 이해한 부분을 고쳤다.

메시지에 답하기부터 명함 읽기, 기존 기록 찾기, 시험용 견적 만들기와 메일 보내기까지. 한 단계씩 연결하면서 확인했다.

먼저 텔레그램에서 답이 돌아오는지

준비한 것은 텔레그램 계정, 비서를 실행할 Windows PC, PC에서 사용할 AI 실행 환경이었다. 봇 프로그램은 Node.js로 만들었다. 처음에는 Ollama의 로컬 모델로 시험했고, 이후에는 PC에 로그인된 Codex CLI를 호출하는 방식을 기본으로 사용했다. 이 구성을 따라 하려면 Node.js와 Codex CLI를 준비하고, 봇을 실행할 PC에서 Codex 로그인을 먼저 마쳐야 한다.

텔레그램 봇은 BotFather에서 /newbot으로 만들 수 있다. 이름과 사용자 이름을 정하면 봇을 연결할 토큰이 나온다. 토큰은 봇을 조작하는 인증정보라 AI 대화에 붙여넣거나 공개 파일에 적지 않고, 실행할 PC에서 입력하도록 했다. 생성 과정은 Telegram 공식 시작 안내를 참고할 수 있다.

봇을 만들었다고 바로 AI가 답하는 건 아니었다. 메시지를 받아 AI에 전달하고, 답변을 다시 텔레그램으로 보내는 프로그램이 필요했다. 이 부분을 AI에게 만들도록 요청했다.

내 봇은 PC 쪽에서 새 메시지를 받아오는 getUpdates 방식을 사용한다. 별도의 공개 수신 주소 없이 시험할 수 있지만, 프로그램이 실행되는 PC가 켜져 있고 인터넷에 연결되어 있어야 한다. PC가 꺼지거나 절전 상태가 되면 답하지 않는다. Telegram 메시지 수신 방식

먼저 간단한 문장을 보내 응답을 받았다. 문제가 생기면 봇의 메시지 수신과 AI 호출 중 어디에서 멈췄는지 확인했다. 업무 시스템은 그다음에 연결했고.

명함은 읽었는데, 이름을 고치자 이메일이 사라졌다

텍스트 응답을 확인한 다음 명함 사진과 미팅 설명을 보냈다. 여기서 예상보다 오류가 많았다. 명함에 없는 미팅 내용을 만들어내거나, 내부 담당자를 고객으로 이해하기도 했다. 이름을 고쳐주자 앞서 읽은 회사나 이메일 정보가 사라진 적도 있었고.

한 번 잘 읽는 것만으로는 부족했다. 정정하고 후속 질문을 이어가며 정보가 유지되는지 봤다. 견적에 쓸 단가와 수량 계산은 별도 코드에서 처리하도록 했다.

작은 글씨를 읽기 어려울 때는 텔레그램의 사진 전송 대신 파일로 보내 압축을 줄이기도 했다. 그래도 인식 결과는 원본과 대조해야 했다.

현재 봇은 프로그램을 재시작하면 대화 맥락이 초기화된다. 저장된 업무 기록과 대화 중 잠깐 기억하는 내용은 구분해서 봐야 한다.

기존 업무 시스템에는 조회부터 연결했다

이미 사용하던 영업 관리 화면과 견적·메일 기능을 바탕으로, 텔레그램 봇이 그 기능을 호출할 경로를 추가했다. 기존 업무 시스템이 없다면 저장할 표와 견적 양식, 발송 기능부터 정해야 한다.

처음에는 담당자가 볼 수 있는 영업 건만 찾게 했다. 어떤 고객인지 애매하면 후보를 보여주고 선택하도록 했고. 같은 회사명이나 비슷한 이름만 보고 자동으로 한 건을 확정하지 않도록.

선택한 영업 건과 업무 화면에 열린 건이 같은지, 다른 담당자의 기록이 섞이지는 않는지 확인했다. 채팅 답변과 업무 화면을 함께 보면서 맞췄다.

저장과 견적 생성, 메일 발송은 각각 확인하기

조회 다음에는 시험용 영업 건으로 처리 흐름을 연결했다.

영업 건 선택 → 기록 확인·저장 → 견적 PDF 미리보기 → 견적 생성 → 수신자 확인 → 메일 발송

각 단계에 확인 버튼을 뒀다. PDF 미리보기를 봤다고 견적이 발행된 것으로 처리하지 않았고, 견적을 만들었다고 메일까지 보내지도 않았다.

시험에서는 영업 건 등록부터 견적 PDF 생성, 두 시험 메일 주소로의 발송까지 진행했다. 업무 화면에 남은 발송 이력과 두 받은메일함의 실제 도착을 함께 확인했다.

결과가 불확실할 때는 발송 버튼을 다시 누르기 전에 이력과 받은메일함부터 확인하는 편이 좋다. 대화가 끊겼어도 실제 처리는 끝났을 수 있어서.

지금은 본인 시험 주소로 받는 흐름까지

이 글을 쓰는 시점에 확인한 것은 시험용 영업 건에서 견적을 만들고 본인 시험 주소로 메일을 받는 흐름이다. 실제 고객의 영업 건에 대한 저장·견적 생성·고객 메일 발송까지 열어둔 상태는 아니다. 별도로 추가한 상담문의 등록 기능도 휴대폰에서 최종 저장까지 진행하는 시험이 남아 있다.

Codex CLI 연결은 내가 로그인한 PC 환경에서 시험한 방식이다. 계정의 이용 가능 범위와 사용량 한도는 별도로 확인해야 한다. 공식 문서에는 스크립트에서 Codex를 호출하는 방법과 인증 방식이 안내되어 있다. 모델에 답변을 요청할 때 명함 이미지와 대화 내용은 해당 AI 서비스로 전달된다.