⚡ 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 -->
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
emojiList.json
|
||||
iconNames.ts
|
||||
reporters
|
||||
reporters
|
||||
|
||||
@@ -21,6 +21,12 @@ const injectViewerUrlIfVercelPreview = (val) => {
|
||||
process.env.VERCEL_BUILDER_PROJECT_NAME,
|
||||
process.env.NEXT_PUBLIC_VERCEL_VIEWER_PROJECT_NAME
|
||||
)
|
||||
if (process.env.NEXT_PUBLIC_CHAT_API_URL.includes('{{pr_id}}'))
|
||||
process.env.NEXT_PUBLIC_CHAT_API_URL =
|
||||
process.env.NEXT_PUBLIC_CHAT_API_URL.replace(
|
||||
'{{pr_id}}',
|
||||
process.env.VERCEL_GIT_PULL_REQUEST_ID
|
||||
)
|
||||
}
|
||||
|
||||
injectViewerUrlIfVercelPreview(process.env.NEXT_PUBLIC_VIEWER_URL)
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
"next": "14.1.0",
|
||||
"next-auth": "4.22.1",
|
||||
"nextjs-cors": "2.1.2",
|
||||
"nodemailer": "6.9.3",
|
||||
"nodemailer": "6.9.8",
|
||||
"nprogress": "0.2.0",
|
||||
"openai": "4.28.4",
|
||||
"papaparse": "5.4.1",
|
||||
@@ -114,7 +114,7 @@
|
||||
"@types/jsonwebtoken": "9.0.2",
|
||||
"@types/micro-cors": "0.1.3",
|
||||
"@types/node": "20.4.2",
|
||||
"@types/nodemailer": "6.4.8",
|
||||
"@types/nodemailer": "6.4.14",
|
||||
"@types/nprogress": "0.2.0",
|
||||
"@types/papaparse": "5.3.7",
|
||||
"@types/prettier": "2.7.3",
|
||||
|
||||
@@ -114,6 +114,7 @@ export const startWhatsAppPreview = authenticatedProcedure
|
||||
typebotId,
|
||||
startFrom,
|
||||
userId: user.id,
|
||||
isStreamEnabled: false,
|
||||
},
|
||||
initialSessionState: {
|
||||
whatsApp: (existingSession?.state as SessionState | undefined)
|
||||
|
||||
Reference in New Issue
Block a user