cal.com icon indicating copy to clipboard operation
cal.com copied to clipboard

feat: browser push notifications

Open thepradipvc opened this issue 9 months ago • 15 comments

What does this PR do?

This PR implements web push notifications for cal.com.

Fixes #14504 /claim #14504

https://www.loom.com/share/3e12532ba0be4214bdb827d319acb430?sid=d38fc961-14d0-4681-8d14-30b46faae927

Requirement/Documentation

  • This would require documentation for self-hosting as this requires 2 new env variables.
  • I have not yet created any document for this as I will need to discuss few things with a maintainer and then I can document all these changes.

Type of change

  • New feature (non-breaking change which adds functionality)

How should this be tested?

  • Create a new public-private key pair required for web push notifications using npx web-push generate-vapid-keys.
  • Add these keys in .env file NEXT_PUBLIC_VAPID_PUBLIC_KEY and VAPID_PRIVATE_KEY.
  • Book meeting with event that requires confirmation. The notification will be received to the organizer.
  • Caution: The web push notifications doesn't work in all the browsers. The chrome and firefox supports it fully as of now as per my research.

Edit (By Udit):-

  • Execute ngrok http 3000 and use that url
  • Go to /bookings page and click on 'Allow Notification'.
  • then add sendNotification'(packages/features/notifications/sendNotification.ts) anywhere like in handleNewBooking. use the subscription` value from prisma studio NotificationsSubscription table.

You should see notification like this

Screenshot 2024-08-22 at 2 45 11 PM

Checklist

  • I haven't added tests that prove my fix is effective or that my feature works

thepradipvc avatar May 06 '24 08:05 thepradipvc

@thepradipvc is attempting to deploy a commit to the cal Team on Vercel.

A member of the Team first needs to authorize it.

vercel[bot] avatar May 06 '24 08:05 vercel[bot]

Thank you for following the naming conventions! 🙏 Feel free to join our discord and post your PR link.

github-actions[bot] avatar May 06 '24 08:05 github-actions[bot]

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@sinclair/[email protected] None 0 442 kB sinclair
npm/@types/[email protected] None 0 5.45 kB types
npm/@types/[email protected] None 0 6.43 kB types
npm/@types/[email protected] None 0 8.65 kB types
npm/[email protected] None 0 33.9 kB kriskowal
npm/[email protected] None 0 6.9 kB strml
npm/[email protected] None 0 6.94 kB juliangruber
npm/[email protected] None 0 9.62 kB feross
npm/[email protected] None 0 217 kB lancedikson
npm/[email protected] None 0 5.05 kB linusu
npm/[email protected] None 0 7.45 kB sindresorhus
npm/[email protected] None 0 2.05 MB caniuse-lite
npm/[email protected] environment 0 26.1 kB sibiraj-s
npm/[email protected] None 0 32.1 kB sindresorhus
npm/[email protected] None 0 11.1 kB pvorb
npm/[email protected] None 0 8.55 kB lukeed
npm/[email protected] None 0 9.36 kB dfcreative
npm/[email protected] None 0 4.79 kB substack
npm/[email protected] None 0 4.86 kB substack
npm/[email protected] None 0 15.9 kB phated
npm/[email protected] None 0 666 kB iamkun
npm/[email protected] None 0 2.94 kB sindresorhus
npm/[email protected] None 0 31.2 kB tehshrike
npm/[email protected] environment, eval 0 27.1 kB dougwilson
npm/[email protected] filesystem 0 9.02 kB dougwilson
npm/[email protected] None 0 6.26 kB dougwilson
npm/[email protected] None 0 287 kB kilianvalkhof
npm/[email protected] None 0 7.86 kB dougwilson
npm/[email protected] environment, eval, filesystem, shell 0 162 kB tabrindle
npm/[email protected] None 0 12.3 kB ljharb
npm/[email protected] filesystem 0 11.6 kB lukeed
npm/[email protected] None 0 3.66 kB dougwilson
npm/[email protected] None 0 2.69 kB jbnicolai
npm/[email protected] None 0 314 kB ariya
npm/[email protected] None 0 50.6 kB michaelficarra
npm/[email protected] filesystem 0 10.8 kB dougwilson
npm/[email protected] None 0 189 kB mysticatea
npm/[email protected] None 0 10.1 kB dougwilson
npm/[email protected] environment, filesystem 0 13.4 kB isaacs
npm/[email protected] None 0 173 kB pipobscure
npm/[email protected] None 0 31.4 kB ljharb
npm/[email protected] None 0 28.9 kB loganfsmyth
npm/[email protected] None 0 4.72 kB stefanpenner
npm/[email protected] environment, filesystem 0 32.5 kB isaacs
npm/[email protected] None 0 3.13 kB sindresorhus
npm/[email protected] None 0 12 kB ljharb
npm/[email protected] None 0 20.6 kB ljharb
npm/[email protected] None 0 44.3 kB ehmicky
npm/[email protected] None 0 6.8 kB feross
npm/[email protected] None 0 11.9 kB jensyt
npm/[email protected] None 0 3.96 kB isaacs
npm/[email protected] None 0 3.46 kB sindresorhus
npm/[email protected] None 0 4.05 kB qix
npm/[email protected] filesystem 0 3.01 kB sindresorhus
npm/[email protected] None 0 4.62 kB sindresorhus
npm/[email protected] None 0 9.62 kB jonschlinkert
npm/[email protected] None 0 3.54 kB sindresorhus
npm/[email protected] environment, filesystem 0 11 kB isaacs
npm/[email protected] None 0 6.93 kB doowb
npm/[email protected] None 0 3.79 kB simenb
npm/[email protected] None 0 15.1 kB lydell
npm/[email protected] None 0 32 kB mathias
npm/[email protected] None 0 6.7 kB zkat
npm/[email protected] None 0 235 kB jordanbtucker
npm/[email protected] None 0 22.8 kB doowb
npm/[email protected] None 0 9.89 kB lukeed
npm/[email protected] None 0 14 kB jdalton
npm/[email protected] None 0 16.5 kB jdalton
npm/[email protected] None 0 4.31 kB stevemao
npm/[email protected] None 0 206 kB dougwilson
npm/[email protected] environment, filesystem 0 51.7 kB broofa
npm/[email protected] None 0 54.5 kB ljharb
npm/[email protected] None 0 6.84 kB styfle
npm/[email protected] None 0 27.4 kB dougwilson
npm/[email protected] None 0 298 kB suguru03
npm/[email protected] None 0 16.9 kB ethan_arrowood
npm/[email protected] None 0 1.66 MB davidlehn
npm/[email protected] None 0 16.3 kB broofa
npm/[email protected] None 0 34 kB chicoxyzzy
npm/[email protected] None 0 9.22 kB jonschlinkert
npm/[email protected] None 0 5.49 kB sindresorhus
npm/[email protected] None 0 97.2 kB ljharb
npm/[email protected] None 0 7.54 kB dougwilson
npm/[email protected] None 0 4.37 kB sindresorhus
npm/[email protected] None 0 10.3 kB dougwilson
npm/[email protected] filesystem 0 3.92 kB sindresorhus
npm/[email protected] None 0 3.62 kB sindresorhus
npm/[email protected] None 0 4.55 kB sindresorhus
npm/[email protected] None 0 4.51 kB jbgutierrez
npm/[email protected] environment 0 5.66 kB alexeyraspopov
npm/[email protected] None 0 90 kB mrmlnc
npm/[email protected] None 0 7.23 kB sindresorhus
npm/[email protected] unsafe 0 13.5 kB danez
npm/[email protected] None 0 3.17 kB cwmma
npm/[email protected] None 0 8.46 kB dougwilson
npm/[email protected] environment 0 24 kB react-bot
npm/[email protected] environment 0 58.7 kB react-bot
npm/[email protected] None 0 49.2 kB mathias
npm/[email protected] None 0 27.9 kB benjamn
npm/[email protected] filesystem 0 12.1 kB troygoode
npm/[email protected] None 0 3.93 kB bcoe
npm/[email protected] None 0 32.1 kB feross
npm/[email protected] None 0 4.22 kB bcoe
npm/[email protected] None 0 4.03 kB wesleytodd
npm/[email protected] None 0 45 kB ljharb
npm/[email protected] None 0 9.96 kB isaacs
npm/[email protected] None 0 6.79 kB terkelg
npm/[email protected] None 0 3.51 kB sindresorhus
npm/[email protected] None 0 805 kB tromey
npm/[email protected] None 0 34.8 kB alexei
npm/[email protected] None 0 23.6 kB eriwen
npm/[email protected] None 0 12.1 kB dougwilson
npm/[email protected] None 0 3.05 kB sindresorhus
npm/[email protected] None 0 17.7 kB amitgupta
npm/[email protected] None 0 9.18 kB ljharb
npm/[email protected] filesystem 0 3.29 kB sindresorhus
npm/[email protected] None 0 2.77 kB daaku
npm/[email protected] None 0 3.5 kB sindresorhus
npm/[email protected] None 0 4.68 kB dougwilson
npm/[email protected] None 0 268 kB sebmaster
npm/[email protected] None 0 84 kB typescript-bot
npm/[email protected] None 0 42.1 kB chaijs
npm/[email protected] None 0 5.01 kB google-wombot
npm/[email protected] None 0 25.7 kB google-wombot
npm/[email protected] None 0 5.98 kB google-wombot
npm/[email protected] None 0 4.71 kB ryanzim
npm/[email protected] None 0 4.31 kB dougwilson
npm/[email protected] None 0 5.48 kB tootallnate
npm/[email protected] None 0 3.72 kB jaredhanson
npm/[email protected] None 0 8.75 kB dougwilson
npm/[email protected] network 0 57.4 kB jakechampion
npm/[email protected] None 0 4.04 kB nexdrew
npm/[email protected] None 0 2.96 kB zkat
npm/[email protected] None 0 6.46 kB raynos
npm/[email protected] filesystem 0 23.4 kB oss-bot
npm/[email protected] None 0 14.8 kB isaacs
npm/[email protected] None 0 6.03 kB sindresorhus

🚮 Removed packages: npm/@0no-co/[email protected], npm/@47ng/[email protected], npm/@47ng/[email protected], npm/@aashutoshrathi/[email protected], npm/@achrinza/[email protected], npm/@achrinza/[email protected], npm/@achrinza/[email protected], npm/@adobe/[email protected], npm/@algora/[email protected], npm/@alloc/[email protected], npm/@ampproject/[email protected], npm/@angular-devkit/[email protected], npm/@angular-devkit/[email protected], npm/@angular-devkit/[email protected], npm/@antfu/[email protected], npm/@anthropic-ai/[email protected], npm/@apidevtools/[email protected], npm/@apidevtools/[email protected], npm/@apidevtools/[email protected], npm/@apidevtools/[email protected], npm/@ardatan/[email protected], npm/@ardatan/[email protected], npm/@aw-web-design/[email protected], npm/@aws-crypto/[email protected], npm/@aws-crypto/[email protected], npm/@aws-crypto/[email protected], npm/@aws-crypto/[email protected], npm/@aws-crypto/[email protected], npm/@aws-crypto/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@aws-sdk/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@azure/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3, npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2, npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@babel/[email protected], npm/@base2/[email protected], npm/@bcoe/[email protected], npm/@boxyhq/[email protected], npm/@boxyhq/[email protected], npm/@boxyhq/[email protected], npm/@boxyhq/[email protected], npm/@braintree/[email protected], npm/@calcom/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@changesets/[email protected], npm/@chevrotain/[email protected], npm/@chevrotain/[email protected], npm/@chevrotain/[email protected], npm/@chevrotain/[email protected], npm/@colors/[email protected], npm/@cspotcode/[email protected], npm/@dabh/[email protected], npm/@daily-co/[email protected], npm/@daily-co/[email protected], npm/@date-io/[email protected], npm/@date-io/[email protected], npm/@datocms/[email protected], npm/@datocms/[email protected], npm/@datocms/[email protected], npm/@deploysentinel/[email protected], npm/@deploysentinel/[email protected], npm/@discoveryjs/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@emotion/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@esbuild/[email protected], npm/@eslint-community/[email protected], npm/@eslint-community/[email protected], npm/@eslint/[email protected], npm/@eslint/[email protected], npm/@ewsjs/[email protected], npm/@ewsjs/[email protected], npm/@faker-js/[email protected], npm/@fal-works/[email protected], npm/@fastify/[email protected], npm/@figspec/[email protected], npm/@figspec/[email protected], npm/@floating-ui/[email protected], npm/@floating-ui/[email protected], npm/@floating-ui/[email protected], npm/@floating-ui/[email protected], npm/@flodlc/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formatjs/[email protected], npm/@formbricks/[email protected], npm/@formbricks/[email protected], npm/@formkit/[email protected], npm/@gar/[email protected], npm/@getalby/[email protected], npm/@getalby/[email protected], npm/@glidejs/[email protected], npm/@golevelup/[email protected], npm/@googleapis/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-codegen/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-tools/[email protected], npm/@graphql-typed-document-node/[email protected], npm/@grpc/[email protected], npm/@grpc/[email protected], npm/@hapi/[email protected], npm/@hapi/[email protected], npm/@headlessui/[email protected], npm/@heroicons/[email protected], npm/@hookform/[email protected], npm/@hookform/[email protected], npm/@hubspot/[email protected], npm/@humanwhocodes/[email protected], npm/@humanwhocodes/[email protected], npm/@humanwhocodes/[email protected], npm/@iarna/[email protected], npm/@ioredis/[email protected], npm/@isaacs/[email protected], npm/@istanbuljs/[email protected], npm/@istanbuljs/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jest/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jimp/[email protected], npm/@jridgewell/[email protected], npm/@jridgewell/[email protected], npm/@jridgewell/[email protected], npm/@js-joda/[email protected], npm/@jsdevtools/[email protected], npm/@juggle/[email protected], npm/@kamilkisiela/[email protected], npm/@langchain/[email protected], npm/@langchain/[email protected], npm/@langchain/[email protected], npm/@langchain/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lexical/[email protected], npm/@lit-labs/[email protected], npm/@lit/[email protected], npm/@ljharb/[email protected], npm/@lukeed/[email protected], npm/@manypkg/[email protected], npm/@manypkg/[email protected], npm/@mdx-js/[email protected], npm/@microsoft/[email protected], npm/@microsoft/[email protected], npm/@microsoft/[email protected], npm/@microsoft/[email protected], npm/@microsoft/[email protected], npm/@mongodb-js/[email protected], npm/@mrleebo/[email protected], npm/@mswjs/[email protected], npm/@mswjs/[email protected], npm/@mux/[email protected], npm/@mux/[email protected], npm/@mux/[email protected], npm/@mux/[email protected], npm/@ndelangen/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@nestjs/[email protected], npm/@next-auth/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@next/[email protected], npm/@noble/[email protected], npm/@noble/[email protected], npm/@node-ipc/[email protected], npm/@nodelib/[email protected], npm/@nodelib/[email protected], npm/@prisma/[email protected], npm/@radix-ui/[email protected], npm/@sentry/[email protected], npm/@tanstack/[email protected], npm/@types/[email protected], npm/@types/[email protected], npm/@types/[email protected], npm/@types/[email protected], npm/@upstash/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected], npm/[email protected]

View full report↗︎

socket-security[bot] avatar May 06 '24 08:05 socket-security[bot]

Hey @PeerRich , Can you please confirm the following considerations and answer a few questions about the implementation of the notifications I've done?

Notion Doc

thepradipvc avatar May 09 '24 08:05 thepradipvc

This PR is being marked as stale due to inactivity.

github-actions[bot] avatar Jun 18 '24 00:06 github-actions[bot]

does it send all notifications we currently send by email?

PeerRich avatar Jul 17 '24 07:07 PeerRich

No, I've just added the notifications for unconfirmed events for now. I wanted to make sure that what am doing is what's expected.

I had a few questions to discuss but if you prefer that I continue with what I find the best option then I can continue adding this to all other events. Can you also help me, is there any centralized place from where all emails are sent for events or do I have to find them myself?

thepradipvc avatar Jul 17 '24 16:07 thepradipvc

Hey @Amit91848, I rebased my local branch to the latest changes on cal.com and found that there has been some refactoring. Also previously I only sent notifications for unconfirmed events. Can you tell me where exactly can I find code where we're sending emails so I can also send push notifications for that.

thepradipvc avatar Jul 31 '24 04:07 thepradipvc

Graphite Automations

"Add consumer team as reviewer" took an action on this PR • (07/31/24)

1 reviewer was added to this PR based on Keith Williams's automation.

"Add foundation team as reviewer" took an action on this PR • (08/22/24)

1 reviewer was added to this PR based on Keith Williams's automation.

graphite-app[bot] avatar Jul 31 '24 12:07 graphite-app[bot]

Hey @Amit91848 , Can you please guide me for what all things do we have to send notifications?

thepradipvc avatar Aug 02 '24 14:08 thepradipvc

would love to get this merged and then built notifications for "Instant Meetings" upon this @Udit-takkar

PeerRich avatar Aug 21 '24 18:08 PeerRich

tried to fix merge conflicts, havent tested but i think i did it right

PeerRich avatar Aug 21 '24 19:08 PeerRich

Tooltip is going outside the page when notifications permission denied

Done

Udit-takkar avatar Aug 26 '24 11:08 Udit-takkar

E2E results are ready!

github-actions[bot] avatar Aug 26 '24 12:08 github-actions[bot]

I am assuming calling sendNotification would be done in a separate PR

Yes

Udit-takkar avatar Aug 26 '24 13:08 Udit-takkar

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/[email protected] network 0 549 kB panva

🚮 Removed packages: npm/@formkit/[email protected]), npm/[email protected])

View full report↗︎

socket-security[bot] avatar Sep 02 '24 12:09 socket-security[bot]