TeleQuickClient client = new TeleQuickClient(
"quic://engine.telequick.dev:9090",
"/etc/telequick/service-account.json"
);
JdbcTemplate jdbc = ...;
client.onCallEvent = (raw) -> {{
var ev = TeleQuickClient.CoreFFI.INSTANCE.telequick_deserialize_call_event(
Native.toByteArrayPointer(raw), raw.length
);
if (ev.event_type == 3 /* CHANNEL_HANGUP_COMPLETE */) {{
jdbc.update(
"INSERT INTO cdr (call_sid, status, q850, duration) VALUES (?, ?, ?, ?)",
ev.call_sid, ev.status, ev.q850_cause, ev.duration_seconds
);
}}
}};
client.streamEvents("cdr-writer-1");