Ana içeriğe geç

The call log (F10.2)

GET 

/api/calls/history

What HAPPENED, as opposed to GET /api/calls, which answers what is happening right now. This is the list a call centre works from, so it is paginated, filtered, and includes the calls NOBODY ANSWERED.

A missed call is not a log line: it is a customer who tried to reach the business and did not. outcome=missed is therefore a work queue, and the panel treats it as one — a tab beside "All", not a buried filter.

VISIBILITY IS THE CONVERSATION POLICY'S, EXPRESSED IN SQL: conversations.view plus channel access. The live board can afford to drop rows per row after loading; a paginated log cannot, because a page of 25 that returns 3 rows with a total of 25 is a lie an operator acts on.

OUTCOME IS DERIVED, not stored. answered means the call CONNECTED — not that its status says ended, since an unanswered call ends too. Adding an outcome column would be a second, denormalised copy of a derived truth, and copies drift.

WAIT AND TALK ARE SEPARATE NUMBERS, because they answer different questions: how long the customer was left ringing, versus how long the conversation took. Collapsing them loses the only metric the customer personally experiences.

Request​

Responses​

The calls, most recent first.