import React from "react"; import ReactDOMServer from "react-dom/server"; import { getNationalNumber, formatSeconds } from "./util"; import { DateTime } from "luxon"; import type { Contact } from "./types"; import type { StoredVoicemail } from "knex/types/tables"; export function getTicketSubject( voicemail: StoredVoicemail, contact?: Contact ) { return `New Voicemail from ${getNationalNumber(voicemail.fromNumber)} (${ contact ? contact.name : voicemail.fromName })`; } export function getTicketBody(vm: StoredVoicemail, contact?: Contact) { return ReactDOMServer.renderToStaticMarkup(
Received:{" "} {DateTime.fromISO(vm.received).toLocaleString(DateTime.DATETIME_MED)}
From: {getNationalNumber(vm.fromNumber)} ( {contact?.name ?? vm.fromName})
To: {getNationalNumber(vm.toNumber)}x{vm.extensionNumber} ( {vm.extensionName})
Duration: {formatSeconds(vm.duration)}

Transcription:

{vm.transcription ? `"${vm.transcription}"` : vm.transcriptionStatus}

); }