This commit is contained in:
Quan HL
2023-10-23 10:55:38 +07:00
parent e0687c2b53
commit 46149878a5
2 changed files with 35 additions and 29 deletions

View File

@@ -1,23 +1,24 @@
function normalizeNumber(number: string): string { function normalizeNumber(number: string): string {
if (/^(sips?|tel):/i.test(number)) { if (/^(sips?|tel):/i.test(number)) {
return number; return number;
} else if (/@/i.test(number)) { } else if (/@/i.test(number)) {
return number; return number;
} else { } else if (number.startsWith("app-") || number.startsWith("queue-")) {
return number.replace(/[()\-. ]*/g, ''); return number;
} } else {
return number.replace(/[()\-. ]*/g, "");
}
} }
function randomId(prefix: string): string { function randomId(prefix: string): string {
const id: string = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(''); const id: string = [...Array(16)]
if (prefix) { .map(() => Math.floor(Math.random() * 16).toString(16))
return `${prefix}-${id}`; .join("");
} else { if (prefix) {
return id; return `${prefix}-${id}`;
} } else {
return id;
}
} }
export { export { normalizeNumber, randomId };
normalizeNumber,
randomId
}

View File

@@ -408,7 +408,8 @@ export const Phone = ({
<IconButtonMenu <IconButtonMenu
icon={<Users />} icon={<Users />}
onClick={(value) => { onClick={(value) => {
console.log(value); setInputNumber(value);
makeOutboundCall(value);
}} }}
onOpen={() => { onOpen={() => {
return new Promise<IconButtonMenuItems[]>( return new Promise<IconButtonMenuItems[]>(
@@ -416,13 +417,15 @@ export const Phone = ({
getRegisteredUser() getRegisteredUser()
.then(({ json }) => { .then(({ json }) => {
resolve( resolve(
json.map((u) => { json
const uName = u.match(/(^.*)@.*/); .filter((u) => !u.includes(sipUsername))
return { .map((u) => {
name: uName ? uName[1] : u, const uName = u.match(/(^.*)@.*/);
value: uName ? uName[1] : u, return {
}; name: uName ? uName[1] : u,
}) value: uName ? uName[1] : u,
};
})
); );
}) })
.catch((err) => reject(err)); .catch((err) => reject(err));
@@ -435,7 +438,8 @@ export const Phone = ({
<IconButtonMenu <IconButtonMenu
icon={<GitMerge />} icon={<GitMerge />}
onClick={(value) => { onClick={(value) => {
console.log(value); setInputNumber(value);
makeOutboundCall(value);
}} }}
onOpen={() => { onOpen={() => {
return new Promise<IconButtonMenuItems[]>( return new Promise<IconButtonMenuItems[]>(
@@ -445,7 +449,7 @@ export const Phone = ({
resolve( resolve(
json.map((q) => ({ json.map((q) => ({
name: q, name: q,
value: q, value: `queue-${q}`,
})) }))
); );
}) })
@@ -460,7 +464,8 @@ export const Phone = ({
<IconButtonMenu <IconButtonMenu
icon={<List />} icon={<List />}
onClick={(value) => { onClick={(value) => {
console.log(value); setInputNumber(value);
makeOutboundCall(value);
}} }}
onOpen={() => { onOpen={() => {
return new Promise<IconButtonMenuItems[]>( return new Promise<IconButtonMenuItems[]>(
@@ -470,7 +475,7 @@ export const Phone = ({
resolve( resolve(
json.map((a) => ({ json.map((a) => ({
name: a.name, name: a.name,
value: a.application_sid, value: `app-${a.application_sid}`,
})) }))
); );
}) })