상황별 문자를 알아서 보내는 SMS 자동 발송 설계

업무 자동화4분 읽기

행사 운영에서 문자는 사소해 보이지만 손이 가장 많이 가는 일입니다. 예약이 들어오면 환영 문자를 보내고 안 낸 사람에게는 미납 알림을 보내고 정원이 차 가면 마감 임박을 알리고 서류 심사가 끝나면 결과를 통보해야 합니다. 소셜 파티 운영사에서는 이 문자들을 회차마다 사람이 하나씩 보냈습니다. 문자 한 통을 빠뜨리면 곧 참가자 문의로 돌아왔습니다. 이 글은 이 발송을 이벤트에 따라 자동으로 도는 규칙으로 바꾼 이야기입니다.

어떤 이벤트에 어떤 문자를 보낼까

자동화의 핵심은 "언제 보낼지"를 사람의 판단이 아니라 시스템의 상태 변화에 묶는 것입니다. 문자를 보내는 순간들을 나열해 보면 대부분 예약이나 참가자의 상태가 바뀌는 지점과 정확히 겹칩니다. 새 예약이 확정되면 환영 문자, 입금이 확인되지 않은 채로 시간이 지나면 미납 알림, 성별 정원이 마감에 가까워지면 임박 알림, 서류 심사가 끝나면 결과 통보 문자가 나갑니다.

이 대응 관계를 규칙으로 굳혀 두면 사람의 기억에 의존하지 않아도 됩니다. 예약 확정이라는 사건이 환영 문자를 부르고 미입금 상태가 일정 시간 이어지면 알림을 부르는 식입니다. 각 이벤트에는 미리 만들어 둔 문구 틀이 연결되어 있어 상황에 맞는 문자가 참가자 이름 같은 값만 채워져 나갑니다.

여기서 중요한 설계 원칙 하나는 자동 발송 전체를 한 번에 끄고 켤 수 있게 만든 것입니다. 운영자가 직접 안내를 돌리고 싶은 특별한 회차나 점검이 필요한 순간에는, 개별 문자를 막느라 헤매는 대신 자동 발송 자체를 잠시 멈춥니다. 자동화가 편리하려면 그것을 언제든 사람이 되잡을 수 있는 손잡이가 함께 있어야 합니다.

반복 발송과 일회성 발송을 나눈다

문자에는 성격이 다른 두 종류가 있습니다. 하나는 조건이 유지되는 동안 반복해서 나가야 하는 문자이고, 하나는 사건이 일어난 그 순간 한 번만 나가는 문자입니다. 미납 알림은 앞쪽입니다. 입금하지 않은 상태가 이어지는 한 30분 간격으로 다시 챙겨 줘야 합니다. 반면 환영 문자나 인증 결과 통보는 뒤쪽으로, 한 번 나가면 끝입니다.

이 둘을 같은 방식으로 다루면 사고가 납니다. 일회성 문자를 반복 조건에 넣으면 참가자가 같은 문자를 여러 번 받고, 반복 문자를 한 번만 보내면 미납자를 놓칩니다. 그래서 반복 발송은 정해진 주기로 조건을 다시 확인하는 스케줄러가 담당하고 일회성 발송은 상태가 바뀌는 그 순간에 한 번 트리거됩니다. 이미 보낸 일회성 문자가 다시 나가지 않도록 발송 이력도 함께 확인합니다.

정원 마감 임박 알림에는 별도의 배려가 필요했습니다. 이 알림은 참가자가 아니라 운영자를 위한 것입니다. 성별 정원이 차 가면 운영자가 모집 상황을 판단할 수 있도록 알려 주는데, 시스템이 막 켜진 직후에는 아직 상태 파악이 안 된 채로 잘못된 임박 알림이 나갈 수 있습니다. 그래서 시작 직후 첫 점검 주기 동안은 이 알림을 눌러 두어 재시작 때마다 엉뚱한 마감 알림이 튀는 일을 막았습니다.

길이에 따라 문자와 장문을 나눈다

문자에는 기술적인 제약도 있습니다. 짧은 문자는 담을 수 있는 글자 수에 한계가 있고 그 한계를 넘으면 장문 문자로 나눠 보내야 합니다. 규정된 바이트 한도를 넘는 내용은 자동으로 장문으로 전환되도록 했습니다. 발송 로직이 메시지 길이를 재서 적절한 종류를 고르므로, 문구를 짧게 맞추려 애쓰거나 반대로 잘려 나가는 걱정을 하지 않아도 됩니다.

문구 자체는 코드가 아니라 관리 화면에서 다룰 수 있는 데이터로 두었습니다. 환영 문자의 표현을 바꾸고 싶을 때 개발자에게 부탁하는 대신 운영자가 직접 문구 틀을 수정합니다. 자동화가 오래 살아남으려면 그것을 실제로 쓰는 사람이 손볼 수 있어야 합니다.

파티 중 참가자끼리 익명 메시지를 주고받는 기능도 같은 발송 경로를 재사용합니다. 새 전송 수단을 따로 만들지 않고 이미 검증된 문자 발송 통로에 얹었습니다. 이 문자들이 어떤 데이터 위에서 도는지는 입금 자동 대조 설계예약 채널 3종을 한 명단으로 통합에서, 시스템 전체는 소셜 파티 운영 자동화 시스템 사례에서 볼 수 있습니다.

자주 묻는 질문

문자는 언제 자동으로 나가나요?

예약이나 참가자의 상태가 바뀌는 지점에 문자를 묶어 두었습니다. 예약 확정 시 환영 문자, 미입금 상태가 이어질 때 미납 알림, 정원 마감 임박 시 운영자 알림, 서류 심사 완료 시 결과 통보가 각각 자동으로 나갑니다. 발송 시점을 사람의 기억이 아니라 시스템의 상태 변화에 연결한 것이 핵심입니다.

같은 문자가 여러 번 가지는 않나요?

반복 발송과 일회성 발송을 분리했습니다. 미납 알림처럼 조건이 유지되는 동안 다시 챙겨야 하는 문자는 주기적으로 조건을 확인해 보내고 환영이나 결과 통보처럼 한 번만 보내야 하는 문자는 발송 이력을 확인해 중복을 막습니다.

자동 발송을 잠깐 멈출 수도 있나요?

자동 발송 전체를 한 번에 끄고 켤 수 있게 만들었습니다. 운영자가 직접 안내를 돌리는 특별한 회차나 점검이 필요할 때 개별 문자를 막느라 헤매지 않고 자동 발송 자체를 잠시 멈출 수 있습니다. 언제든 사람이 되잡을 수 있는 손잡이를 함께 둔 설계입니다.

#SMS자동화#알림설계#이벤트기반#운영자동화

업무자동화 구축이 필요하신가요?

무료 상담 신청