통화 대기열에서 상담원의 현재 상태를 수집하는 소프트웨어에 대한 일부 코드를 리팩토링하려고합니다. 현재 각 6 개의 이벤트에 대해 에이전트가 존재하는 경우 Mnesia 테이블을 체크인하고 이벤트에 따라 행의 일부 값을 변경하거나 에이전트가없는 경우 새로운 것으로 추가합니다. 현재 나는 각 이벤트에서이 Mnesia 트랜잭션을 가지고 있으며 물론 에이전트의 존재를 확인하는 반복 된 코드 등이 있습니다.Mnesia에 대한 레코드 병합
change_agent/2과 같은 함수가 있으므로이를 처리하는 이벤트에서 호출하도록 변경하려고합니다.
내 문제는 물론 기록입니다 ... 나는 동적으로 생성하거나 2 개를 병합하는 방법이 없습니다. 가급적이면 다음과 같이 호출 할 수있는 함수가 있어야합니다.
change_agent("001", #agent(id = "001", name = "Steve")).
change_agent("001", #agent(id = "001", paused = 0, talking_to = "None")).
훑어보기가 정확하지 않을 수도 있습니다. 그럼에도 불구하고 나는 재미있을 것이다. –