2
0
Commit Graph

35 Commits

Author SHA1 Message Date
2fcf83c529 Introduce a new high-performing standalone chat API (#1200)
Closes #1154

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
	- Added authentication functionality for user sessions in chat API.
- Introduced chat-related API endpoints for starting, previewing, and
continuing chat sessions, and streaming messages.
- Implemented WhatsApp API webhook handling for receiving and processing
messages.
- Added environment variable `NEXT_PUBLIC_CHAT_API_URL` for chat API URL
configuration.

- **Bug Fixes**
	- Adjusted file upload logic to correctly determine the API host.
	- Fixed message streaming URL in chat integration with OpenAI.

- **Documentation**
- Updated guides for creating blocks, local installation, self-hosting,
and deployment to use `bun` instead of `pnpm`.

- **Refactor**
	- Refactored chat API functionalities to use modular architecture.
- Simplified client log saving and session update functionalities by
using external functions.
	- Transitioned package management and workflow commands to use `bun`.

- **Chores**
- Switched to `bun` for package management in Dockerfiles and GitHub
workflows.
	- Added new Dockerfile for chat API service setup with Bun framework.
	- Updated `.prettierignore` and documentation with new commands.

- **Style**
	- No visible changes to end-users.

- **Tests**
	- No visible changes to end-users.

- **Revert**
	- No reverts in this release.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-03-21 10:23:23 +01:00
583294f90c 🐛 (whatsapp) Fix auto start when first input is file
Closes #1246
2024-03-07 14:26:48 +01:00
df209a8e9d 🧑‍💻 (whatsapp) Option to modify the default interactive split message number (#1296)
When using the whatsapp oficial api or another that use the same schema,
with env we can modify the number of groups that the interactive group
will be split.

---------

Co-authored-by: Baptiste Arnaud <baptiste.arnaud95@gmail.com>
Co-authored-by: Baptiste Arnaud <contact@baptiste-arnaud.fr>
2024-03-07 08:05:08 +00:00
3037771d1c 💚 Remove unused mp4 url check 2024-03-01 18:05:04 +01:00
3971e4a888 🚸 (whatsapp) Remove .mp4 regex restriction for video URLs
Closes #1282
2024-03-01 16:24:36 +01:00
275ba1b1c4 🚑 (whatsapp) Fix broken preview 2024-02-28 15:49:18 +01:00
ce17ce5061 🐛 (whatsapp) Fix webhook when having 2 phone numbers in same WA account 2024-02-26 13:54:41 +01:00
18c0445ac9 🐛 (whatsapp) Fix image or video bubble before choice input 2024-02-19 10:50:44 +01:00
ff9c4726cc 🚸 Rewrite the markdown deserializer to improve br… (#1198)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **Refactor**
- Updated markdown handling and serialization libraries for improved
performance and accuracy in text formatting.
- **New Features**
- Enhanced rich text and markdown conversion capabilities, providing
users with more reliable and seamless text formatting options.
- **Documentation**
- Added detailed documentation for markdown to rich text conversion and
vice versa, ensuring easier understanding and implementation for
developers.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-31 08:03:13 +01:00
26872e2bac 🐛 Add max wait block timeout on WhatsApp runtime 2024-01-30 09:36:25 +01:00
6215cfbbaf (fileUpload) New visibility option: "Public", "Private" or "Auto" (#1196)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Introduced file visibility options for uploaded files, allowing users
to set files as public or private.
- Added a new API endpoint for retrieving temporary URLs for files,
enhancing file accessibility.
- Expanded file upload documentation to include information on file
visibility settings.
- Updated URL validation to support URLs with port numbers and
"http://localhost".
- **Enhancements**
- Improved media download functionality by replacing the `got` library
with a custom `downloadMedia` function.
- Enhanced bot flow continuation and session start logic to support a
wider range of reply types, including WhatsApp media messages.
- **Bug Fixes**
- Adjusted file path and URL construction in the `generateUploadUrl`
function to correctly reflect file visibility settings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-01-30 08:02:10 +01:00
47af9a9a59 📝 Add env WHATSAPP_CLOUD_API_URL to possible change https://gr… (#1170)
refs #1117 

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **Refactor**
- Dynamically construct API URLs for WhatsApp features using environment
variables for improved reliability and configurability.
- Updated `sendWhatsAppMessage` function to use
`env.WHATSAPP_CLOUD_API_URL` for URL construction, allowing for more
dynamic configuration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Baptiste Arnaud <baptiste.arnaud95@gmail.com>
2024-01-29 09:37:19 +01:00
f052b4c805 (settings) Add delay between bubbles option and typing disabling on first message 2024-01-29 09:37:19 +01:00
61bfe1bb96 ️ Receive WhatsApp location (#1158)
Enable Typebot to recieve location messages via Whatsapp and parse them
into a string. Returns a string "Location: [LAT],[LON]" for the text
input block

As per
https://discord.com/channels/1155799591220953138/1193858969102450748

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced support for receiving and handling location messages in
WhatsApp integration.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: memarius <me-marius@web.de>
Co-authored-by: Baptiste Arnaud <contact@baptiste-arnaud.fr>
2024-01-18 14:01:22 +01:00
244a29423b (whatsapp) Improve / fix markdown serializer
Forked remark-slate code to create Typebot's own serializer

Closes #1056
2024-01-08 08:40:25 +01:00
1e5fa5a575 📝 Migrate from Docusaurus to Mintlify (#1115)
Closes #868
2023-12-22 09:13:53 +01:00
780b4dee18 🐛 (whatsapp) Fix WA preview not starting and accept audio and documents messages 2023-12-20 10:35:34 +01:00
084588a086 🧑‍💻 (chat) Introduce startChat and continueChat endpoints
Closes #1030
2023-11-13 15:27:36 +01:00
35300eaf34 ♻️ Introduce typebot v6 with events (#1013)
Closes #885
2023-11-08 15:34:16 +01:00
c2a08c482e 🧑‍💻 (whatsapp) Improve whatsapp start log 2023-10-25 14:26:10 +02:00
3e7b9b3afd ⬆️ Upgrade sentry and improve its reliability 2023-10-07 12:40:43 +02:00
bf1f657642 🔥 Remove streamer Pages API endpoint 2023-10-06 17:45:12 +02:00
3838ac9c3f 🐛 New sendMessage version for the new parser
Make sure old client still communicate with old parser
2023-10-06 10:14:26 +02:00
9e6a1f7dc0 ♻️ (api) Auto start bot if starting with input
Closes #877, closes #884
2023-10-04 16:47:58 +02:00
bf051bebde 🐛 (whatsapp) Fix force create session when flow is completed at first round 2023-10-03 16:06:37 +02:00
60c06aa9a9 🚑 (whatsapp) Fix start whatsapp session when user has multiple whatsapp enabled 2023-10-03 10:13:25 +02:00
f016072e3e 🚸 (whatsapp) Improve how the whatsapp preview behaves (#873)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

- New Feature: Updated WhatsApp logo with a new design and color scheme.
- New Feature: Added a help button in the UI linking to documentation,
enhancing user guidance.
- New Feature: Introduced an alert message indicating that the WhatsApp
integration is in beta testing.
- New Feature: Implemented a button to open WhatsApp Web directly from
the application, improving user convenience.
- Refactor: Adjusted the retrieval of `contactPhoneNumber` in
`receiveMessagePreview` function for better data structure
compatibility.
- Refactor: Optimized the initialization and management of the WhatsApp
session in `startWhatsAppPreview`.
- Refactor: Improved the `parseButtonsReply` function by refining
condition checks.
- Refactor: Enhanced the readability of serialized rich text in
`convertRichTextToWhatsAppText` by introducing newline characters.
- Bug Fix: Ensured preservation of `contact` information when resuming
the WhatsApp flow in `resumeWhatsAppFlow`.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-29 17:47:10 +02:00
cd97da2d34 🐛 (typebotLink) Fix nested typebot link pop 2023-09-29 11:23:04 +02:00
f9a14c0685 🐛 (whatsapp) Fix auto start input where it didn't display next bu… (#869)
…bbles
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

**Release Notes**

- New Feature: Enhanced WhatsApp integration with improved phone number
formatting and session ID generation.
- Refactor: Updated the `startWhatsAppPreview` and
`receiveMessagePreview` functions for better consistency and
readability.
- Bug Fix: Added a check for `phoneNumberId` in the `receiveMessage`
function to prevent errors when it's undefined.
- Documentation: Expanded the WhatsApp integration guide and FAQs in the
docs, providing more detailed instructions and addressing common
queries.
- Chore: Introduced a new `metadata` field in the
`whatsAppWebhookRequestBodySchema` to store the `phone_number_id`.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-29 09:59:38 +02:00
e10a506c96 🐛 (whatsapp) Fix preview failing to start and wait timeo… 2023-09-27 18:46:53 +02:00
1ca742fc0b (setVariable) Add "Environment name" value in Set variable block (#850)
Closes #848
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

- New Feature: Added "Environment name" as a new value type in the
SetVariable function, allowing users to distinguish between 'web' and
'whatsapp' environments.
- Refactor: Simplified session state handling in `resumeWhatsAppFlow.ts`
for improved code clarity.
- Refactor: Updated `startWhatsAppSession.ts` to include an initial
session state with WhatsApp contact and expiry timeout, enhancing
session management.
- Bug Fix: Improved null handling in `executeSetVariable.ts` for
'Contact name' and 'Phone number', preventing potential issues with
falsy values.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-26 09:50:20 +02:00
b81fcf0167 Auto continue bot on whatsApp if starting block is input (#849)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

**New Features:**
- Added WhatsApp integration feature to the Pro plan.

**Refactor:**
- Introduced the ability to exclude specific plans from being displayed
in the Change Plan Modal.
- Renamed the function `isProPlan` to `hasProPerks`, enhancing code
readability and maintainability.
- Updated the `EmbedButton` component to handle a new `lockTagPlan`
property and use the `modal` function instead of the `Modal` component.

**Chore:**
- Removed the `whatsAppPhoneNumberId` field from the `Typebot` model
across various files, simplifying the data structure of the model.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-25 17:20:42 +02:00
4f953ac272 (whatsapp) Add custom session expiration (#842)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

- New Feature: Introduced session expiry timeout for WhatsApp
integration, allowing users to set the duration after which a session
expires.
- New Feature: Added an option to enable/disable the start bot condition
in WhatsApp integration settings.
- Refactor: Enhanced error handling by throwing specific errors when
necessary conditions are not met.
- Refactor: Improved UI components like `NumberInput` and
`SwitchWithLabel` for better usability.
- Bug Fix: Fixed issues related to session resumption and message
sending in expired sessions. Now, if a session is expired, a new one
will be started instead of attempting to resume the old one.
- Chore: Updated various schemas to reflect changes in session
management and WhatsApp settings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-22 17:12:15 +02:00
9e0109f561 (whatsapp) Improve whatsApp management and media collection
Closes #796
2023-09-22 11:08:41 +02:00
7d57e8dd06 ♻️ Export bot-engine code into its own package 2023-09-20 15:42:34 +02:00