|
|
||
|---|---|---|
| .. | ||
| components | ||
| contexts | ||
| hooks | ||
| pages | ||
| .babelrc | ||
| README.md | ||
| env.example | ||
| image.png | ||
| index.js | ||
| next.config.js | ||
| package.json | ||
| public | ||
README.md
Text Chat
Live example
What does this demo do?
- Use sendAppMessage to send messages
- Listen for incoming messages using the call object
app-messageevent - Extend the basic call demo with a chat provider and aside
- Show a notification bubble on chat tray button when a new message is received
- Demonstrate how to play a sound whenever a message is received
Please note: this demo is not currently mobile optimised
Getting started
# set both DAILY_API_KEY and DAILY_DOMAIN
mv env.example .env.local
yarn
yarn workspace @dailyjs/text-chat dev
How does this example work?
In this example we extend the basic call demo with the ability to send chat messages.
We pass a custom tray object, a custom app object (wrapping the original in a new ChatProvider) as well as add our ChatAside panel. We also symlink both the public and pages/api folders from the basic call.
In a real world use case you would likely want to implement serverside logic so that participants joining a call can retrieve previously sent messages. This round trip could be done inside of the Chat context.
