
안녕하세요. 지난 글 "Python으로 FreePBX AMI 프로그래밍 테스트 1 (연결, Ping, 종료흐름)"에서는 Python의 socket 모듈을 사용하여 FreePBX AMI에 접속하고, 간단한 명령(Login, Ping, Logoff)을 실행하는 동기적인 기본 흐름을 살펴보았습니다. 하지만 전화 시스템의 상태 변화(예: 전화 수신, 통화 종료, 채널 상태 변경 등)를 실시간으로 감지하고 이에 맞게 처리하려면 조금 다른 접근 방식이 필요합니다. 바로 AMI가 지속적으로 보내주는 이벤트(Event)를 수신하고 처리하는 것입니다. 이번 글에서는 Python의 asyncio라이브러리를 활용하여 FreePBX AMI로부터 이벤트를 비동기적으로 수신하고, 특정 이벤트를 감지하여 처리하는 방법을..