rename to shellphone
This commit is contained in:
parent
002c3ad37f
commit
e98697293a
1
.gitignore
vendored
1
.gitignore
vendored
@ -53,4 +53,3 @@ lib-cov
|
|||||||
.vscode-test
|
.vscode-test
|
||||||
|
|
||||||
.idea/
|
.idea/
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ const BaseLayout = ({ title, children }: LayoutProps) => {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Head>
|
<Head>
|
||||||
<title>{title || "virtual-phone"}</title>
|
<title>{title || "shellphone.app"}</title>
|
||||||
<link rel="icon" href="/favicon.ico" />
|
<link rel="icon" href="/favicon.ico" />
|
||||||
</Head>
|
</Head>
|
||||||
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import { getConfig } from "blitz";
|
||||||
import { Queue } from "quirrel/blitz";
|
import { Queue } from "quirrel/blitz";
|
||||||
import twilio from "twilio";
|
import twilio from "twilio";
|
||||||
|
|
||||||
@ -7,6 +8,8 @@ type Payload = {
|
|||||||
customerId: string;
|
customerId: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const { serverRuntimeConfig } = getConfig();
|
||||||
|
|
||||||
const setTwilioWebhooks = Queue<Payload>("api/queue/set-twilio-webhooks", async ({ customerId }) => {
|
const setTwilioWebhooks = Queue<Payload>("api/queue/set-twilio-webhooks", async ({ customerId }) => {
|
||||||
const [customer, phoneNumber] = await Promise.all([
|
const [customer, phoneNumber] = await Promise.all([
|
||||||
db.customer.findFirst({ where: { id: customerId } }),
|
db.customer.findFirst({ where: { id: customerId } }),
|
||||||
@ -19,10 +22,10 @@ const setTwilioWebhooks = Queue<Payload>("api/queue/set-twilio-webhooks", async
|
|||||||
const twimlApp = customer.twimlAppSid
|
const twimlApp = customer.twimlAppSid
|
||||||
? await twilio(customer.accountSid, customer.authToken).applications.get(customer.twimlAppSid).fetch()
|
? await twilio(customer.accountSid, customer.authToken).applications.get(customer.twimlAppSid).fetch()
|
||||||
: await twilio(customer.accountSid, customer.authToken).applications.create({
|
: await twilio(customer.accountSid, customer.authToken).applications.create({
|
||||||
friendlyName: "Virtual Phone",
|
friendlyName: "Shellphone",
|
||||||
smsUrl: "https://phone.mokhtar.dev/api/webhook/incoming-message",
|
smsUrl: `https://${serverRuntimeConfig.app.baseUrl}/api/webhook/incoming-message`,
|
||||||
smsMethod: "POST",
|
smsMethod: "POST",
|
||||||
voiceUrl: "https://phone.mokhtar.dev/api/webhook/incoming-call",
|
voiceUrl: `https://${serverRuntimeConfig.app.baseUrl}/api/webhook/incoming-call`,
|
||||||
voiceMethod: "POST",
|
voiceMethod: "POST",
|
||||||
});
|
});
|
||||||
const twimlAppSid = twimlApp.sid;
|
const twimlAppSid = twimlApp.sid;
|
||||||
|
@ -5,7 +5,7 @@ const withPWA = require("next-pwa");
|
|||||||
const config: BlitzConfig = {
|
const config: BlitzConfig = {
|
||||||
middleware: [
|
middleware: [
|
||||||
sessionMiddleware({
|
sessionMiddleware({
|
||||||
cookiePrefix: "virtual-phone-blitz",
|
cookiePrefix: "shellphone",
|
||||||
isAuthorized: simpleRolesIsAuthorized,
|
isAuthorized: simpleRolesIsAuthorized,
|
||||||
}),
|
}),
|
||||||
],
|
],
|
||||||
|
12
package-lock.json
generated
12
package-lock.json
generated
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "virtual-phone",
|
"name": "shellphone.app",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
@ -1567,7 +1567,7 @@
|
|||||||
"integrity": "sha512-IHUfxSEDS9dDGqYwIW7wTN6tn/O8E0n5PcAHz9cAaBoZw6UpG20IG/YM3NNLaGPwPqgjBAFjIURzqoQs3rrtuw=="
|
"integrity": "sha512-IHUfxSEDS9dDGqYwIW7wTN6tn/O8E0n5PcAHz9cAaBoZw6UpG20IG/YM3NNLaGPwPqgjBAFjIURzqoQs3rrtuw=="
|
||||||
},
|
},
|
||||||
"@fortawesome/fontawesome-pro": {
|
"@fortawesome/fontawesome-pro": {
|
||||||
"version": "file:../virtual-phone.blitz/fontawesome/fortawesome-fontawesome-pro-5.15.3.tgz",
|
"version": "file:./fontawesome/fortawesome-fontawesome-pro-5.15.3.tgz",
|
||||||
"integrity": "sha512-zrIqXGUiKI/qyEbNJV2Zw084XF6npZR/wzYgqzbGhdRdOT3ZcdseiKUvmW5eUTEkoL9/mCdT8WIzHVvP8wfMsQ=="
|
"integrity": "sha512-zrIqXGUiKI/qyEbNJV2Zw084XF6npZR/wzYgqzbGhdRdOT3ZcdseiKUvmW5eUTEkoL9/mCdT8WIzHVvP8wfMsQ=="
|
||||||
},
|
},
|
||||||
"@fortawesome/fontawesome-svg-core": {
|
"@fortawesome/fontawesome-svg-core": {
|
||||||
@ -1603,28 +1603,28 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@fortawesome/pro-duotone-svg-icons": {
|
"@fortawesome/pro-duotone-svg-icons": {
|
||||||
"version": "file:../virtual-phone.blitz/fontawesome/fortawesome-pro-duotone-svg-icons-5.15.3.tgz",
|
"version": "file:./fontawesome/fortawesome-pro-duotone-svg-icons-5.15.3.tgz",
|
||||||
"integrity": "sha512-5BAT6uLAcYnsM76HLrP8SRuQh+N0eMy6VriEK9l9+6Xmm966wgXR2G9NZvua+W9qVv5GbPo2pXDqY6cUa/MoyA==",
|
"integrity": "sha512-5BAT6uLAcYnsM76HLrP8SRuQh+N0eMy6VriEK9l9+6Xmm966wgXR2G9NZvua+W9qVv5GbPo2pXDqY6cUa/MoyA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@fortawesome/pro-light-svg-icons": {
|
"@fortawesome/pro-light-svg-icons": {
|
||||||
"version": "file:../virtual-phone.blitz/fontawesome/fortawesome-pro-light-svg-icons-5.15.3.tgz",
|
"version": "file:./fontawesome/fortawesome-pro-light-svg-icons-5.15.3.tgz",
|
||||||
"integrity": "sha512-HgQSTQIYsJku91yV/1txyr6IWfnQRnCNrqAo1UtPOkG53H7JPLO6l1GDsuhwjYJSIpjmqu7llgYAFOI/5cZWJA==",
|
"integrity": "sha512-HgQSTQIYsJku91yV/1txyr6IWfnQRnCNrqAo1UtPOkG53H7JPLO6l1GDsuhwjYJSIpjmqu7llgYAFOI/5cZWJA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@fortawesome/pro-regular-svg-icons": {
|
"@fortawesome/pro-regular-svg-icons": {
|
||||||
"version": "file:../virtual-phone.blitz/fontawesome/fortawesome-pro-regular-svg-icons-5.15.3.tgz",
|
"version": "file:./fontawesome/fortawesome-pro-regular-svg-icons-5.15.3.tgz",
|
||||||
"integrity": "sha512-4CUIJWj+6ABnzYoYDECfB8hWHS/0FNeovaLqWZZMkaPfMGqC9tNSwWKZQUfBR2nwhEUeyMxtWo6mPJCh4Zz8YA==",
|
"integrity": "sha512-4CUIJWj+6ABnzYoYDECfB8hWHS/0FNeovaLqWZZMkaPfMGqC9tNSwWKZQUfBR2nwhEUeyMxtWo6mPJCh4Zz8YA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@fortawesome/pro-solid-svg-icons": {
|
"@fortawesome/pro-solid-svg-icons": {
|
||||||
"version": "file:../virtual-phone.blitz/fontawesome/fortawesome-pro-solid-svg-icons-5.15.3.tgz",
|
"version": "file:./fontawesome/fortawesome-pro-solid-svg-icons-5.15.3.tgz",
|
||||||
"integrity": "sha512-stGmfbqLu54PghoxPjQ+BjblO/13EppJ8Fn9ceGZBz8K4lesvAhdMp2hZusXUz8VPuu/3pCHI84PbJ6wOKFYhQ==",
|
"integrity": "sha512-stGmfbqLu54PghoxPjQ+BjblO/13EppJ8Fn9ceGZBz8K4lesvAhdMp2hZusXUz8VPuu/3pCHI84PbJ6wOKFYhQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
"@fortawesome/fontawesome-common-types": "^0.2.35"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "virtual-phone",
|
"name": "shellphone.app",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "concurrently --raw \"blitz dev\" 'quirrel'",
|
"dev": "concurrently --raw \"blitz dev\" 'quirrel'",
|
||||||
|
Loading…
Reference in New Issue
Block a user