Commit Graph
222 Commits
Author SHA1 Message Date
Shivam Mishra 7ca5d365ae fix: model 2025-08-05 12:21:31 +05:30
Shivam Mishra 96e18d74c5 feat: include schema 2025-08-04 16:58:23 +05:30
Shivam Mishra 311093f0fb feat: handle structured response 2025-08-04 16:58:15 +05:30
Shivam Mishra 73c2690526 fix: handle conversation is nil 2025-08-04 15:42:43 +05:30
Shivam Mishra 23c35c8886 feat: allow temperature 2025-08-04 15:27:29 +05:30
Shivam Mishra 3f801fda2c feat: add accessors for temperature 2025-08-04 15:27:15 +05:30
Shivam Mishra 5fb40e0b2e feat: add callback for runner 2025-08-01 15:49:18 +05:30
Shivam Mishra 9ba51a3fd4 feat: add debug 2025-08-01 15:49:18 +05:30
Shivam Mishra 0c4e21bc6a refactor: agentable, remove included 2025-07-31 14:30:48 +05:30
Shivam Mishra a582b8284d style: run autofix 2025-07-31 14:26:49 +05:30
Shivam MishraandGitHub bbcbc6d52b Merge branch 'develop' into feat/scenario-agents 2025-07-31 10:00:37 +05:30
d9900e50a0 feat(cloud): Add support for viewing status of SSL in custom domains (#12011)
# Pull Request Template

## Description

Fixes
[CW-4620](https://linear.app/chatwoot/issue/CW-4620/rethinking-custom-domains-in-chatwoot)

<img width="642" height="187" alt="Screenshot 2025-07-29 at 8 17 44 PM"
src="https://github.com/user-attachments/assets/ad2f5dac-4b27-4dce-93ca-6cbba74443fb"
/>


## Type of change

- [x] New feature (non-breaking change which adds functionality)

## How Has This Been Tested?



## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules

---------

Co-authored-by: Vishnu Narayanan <iamwishnu@gmail.com>
Co-authored-by: Pranav <pranavrajs@gmail.com>
Co-authored-by: Pranav <pranav@chatwoot.com>
2025-07-30 10:52:47 -07:00
Shivam MishraandGitHub 97f1825a14 fix: CAPTAIN_OPEN_AI_ENDPOINT presence not checked correctly (#12069) 2025-07-30 10:23:34 -07:00
Shivam Mishra 28e837e8f7 feat: add handoff to assistant by default 2025-07-30 21:34:33 +05:30
Shivam Mishra f36a3a2e19 feat: add exception tracker 2025-07-30 21:00:35 +05:30
Shivam Mishra b3633d5c08 feat: add faq lookup tool 2025-07-30 20:30:14 +05:30
Shivam MishraandGitHub b52caf0341 Merge branch 'develop' into feat/scenario-agents 2025-07-30 18:04:48 +04:00
Sivin VargheseandGitHub df4de508e7 feat: New Scenarios page (#11975) 2025-07-30 19:34:27 +05:30
Shivam Mishra e37d61f836 Merge branch 'develop' of github.com:chatwoot/chatwoot into feat/scenario-agents 2025-07-30 19:30:36 +05:30
Shivam MishraandGitHub 75c57ad039 feat: use captain endpoint config in legacy OpenAI base service (#12060)
This PR migrates the legacy OpenAI integration (where users provide
their own API keys) from using hardcoded `https://api.openai.com`
endpoints to use the configurable `CAPTAIN_OPEN_AI_ENDPOINT` from the
captain configuration. This ensures consistency across all OpenAI
integrations in the platform.

## Changes

- Updated `lib/integrations/openai_base_service.rb` to use captain
endpoint config
- Updated `enterprise/app/models/enterprise/concerns/article.rb` to use
captain endpoint config
- Removed unused `enterprise/lib/chat_gpt.rb` class
- Added tests for endpoint configuration behavior
2025-07-30 08:58:27 +04:00
441cc065ae feat: add config for OpenAI endpoint (#12051)
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2025-07-29 09:44:50 +05:30
420be64c45 chore: Automate SSL with Cloudflare (#12021)
This PR adds support for automatic SSL issuance using Cloudflare when a
custom domain is updated.

- Introduced a cloudflare configuration. If present, the system will
attempt to issue an SSL certificate via Cloudflare whenever a custom
domain is added or changed.
- SSL verification is handled using an HTTP challenge.
- The job will store the HTTP challenge response provided by Cloudflare
and serve it under the /.well-known/cf path automatically.

How to test:

- Create a Cloudflare zone for your domain and copy the Zone ID.
- Generate a Cloudflare API token with the required SSL certificate
permissions.
- Set the Fallback Origin under SSL -> Custom HostName to the Chatwoot
installation.
- Add or update a custom domain and verify that the SSL certificate is
automatically issued.

---------

Co-authored-by: Sojan Jose <sojan@pepalo.com>
2025-07-24 13:09:06 +04:00
b71a0da10d feat: scenario tools [CW-4597] (#11908)
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2025-07-21 16:42:12 +05:30
Sivin VargheseandGitHub 64ba23688b feat: New GuardRails and Response Guidelines edit page (#11932) 2025-07-16 21:52:25 +05:30
Shivam MishraandGitHub 0381bdac96 Merge branch 'feat/scenario-tools-association' into feat/scenario-agents 2025-07-16 17:10:37 +05:30
Shivam Mishra 87fee33039 fix: new tool syntax 2025-07-16 17:09:38 +05:30
Shivam Mishra fe68542547 refactor: namespace for concerns 2025-07-16 17:09:38 +05:30
Shivam Mishra 2e1529c755 fix: tool mention format 2025-07-16 16:57:34 +05:30
Shivam MishraandGitHub aedb59ea67 Merge branch 'develop' into feat/scenario-tools-association 2025-07-16 10:02:10 +05:30
13b4fdb34c chore: Add submenu for super admin settings (#11860)
- Improve how settings are rendered in Chatwoot Super admin panel
- Add google settings support 
- show setting for community edition

##  Settings page - community edition
<img width="1702" alt="Screenshot 2025-07-08 at 9 08 03 PM"
src="https://github.com/user-attachments/assets/0434f56f-ea74-44a8-a7b0-8e26fab88093"
/>

## Expanded settings
<img width="1675" alt="Screenshot 2025-07-03 at 2 17 16 AM"
src="https://github.com/user-attachments/assets/3aa1f888-c54a-4b58-896a-0d3e828fa176"
/>

---------

Co-authored-by: Sojan Jose <sojan@Sojans-MacBook-Pro.local>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
2025-07-15 21:28:39 -07:00
Shivam Mishra 9db096f046 refactor: namespace for the concern 2025-07-16 09:52:37 +05:30
Shivam Mishra 7f4005cdcc feat: include contact 2025-07-15 20:57:22 +05:30
Shivam Mishra 57fdfe26f0 feat: pass context with indifferent access 2025-07-15 20:40:06 +05:30
Shivam Mishra 88ba4e4562 fix: conversation not passed 2025-07-15 20:39:52 +05:30
Shivam Mishra 394ba4ff73 fix: arguments 2025-07-15 20:21:22 +05:30
Shivam Mishra 187b435eb9 feat: use feature toggle 2025-07-15 14:22:27 +05:30
Shivam Mishra 1fce8d1183 feat: use new tools 2025-07-15 14:22:27 +05:30
Shivam Mishra b3ce7bd278 feat: add agentable with conversation context 2025-07-15 14:22:27 +05:30
Shivam Mishra 345a212447 feat: include guidelines and guardrails 2025-07-15 14:22:27 +05:30
Shivam Mishra 83450b7c24 fix: agent init 2025-07-15 14:22:27 +05:30
Shivam Mishra b58ec24d81 feat: set model 2025-07-15 14:22:27 +05:30
Shivam Mishra 5e799e7e6b feat: remove handoffs
We will register them separately
2025-07-15 14:22:27 +05:30
Shivam Mishra 01ad380822 feat: new response build 2025-07-15 14:22:27 +05:30
Shivam Mishra 84d2c0fd25 refactor: use the new prompt rendere 2025-07-15 14:22:27 +05:30
Shivam Mishra 9a81927154 chore: titltize 2025-07-15 14:22:27 +05:30
Shivam Mishra daed6eb1e5 feat: add tools resolution 2025-07-15 14:22:27 +05:30
Shivam Mishra bdd5a77f45 feat: add agent instructions 2025-07-15 14:22:27 +05:30
Shivam Mishra e52becbc40 style: autofix rubocop 2025-07-15 14:21:53 +05:30
Muhsin KelothandGitHub 7748ef2787 Merge branch 'develop' into feat/scenario-tools-association 2025-07-15 10:39:20 +05:30
Tanmay Deep SharmaGitHubMuhsin KelothCopilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>iamsivinSivin VargheseSojan Jose
61d10044a0 feat: Whatsapp embedded signup (#11612)
## Description

This PR introduces WhatsApp Embedded Signup functionality, enabling
users to connect their WhatsApp Business accounts through Meta's
streamlined OAuth flow without manual webhook configuration. This
significantly improves the user experience by automating the entire
setup process.

**Key Features:**

- Embedded signup flow using Facebook SDK and Meta's OAuth 2.0
- Automatic webhook registration and phone number configuration
- Enhanced provider selection UI with card-based design
- Real-time progress tracking during signup process
- Comprehensive error handling and user feedback


## Required Configuration

The following environment variables must be configured by administrators
before this feature can be used:
Super Admin Configuration (via
super_admin/app_config?config=whatsapp_embedded)

- `WHATSAPP_APP_ID`: The Facebook App ID for WhatsApp Business API
integration
- `WHATSAPP_CONFIGURATION_ID`: The Configuration ID for WhatsApp
Embedded Signup flow (obtained from Meta Developer Portal)
- `WHATSAPP_APP_SECRET`: The App Secret for WhatsApp Embedded Signup
flow (required for token exchange)
![Screenshot 2025-06-09 at 11 21
08 AM](https://github.com/user-attachments/assets/1615fb0d-27fc-4d9e-b193-9be7894ea93a)


## How Has This Been Tested?

#### Backend Tests (RSpec):

- Authentication validation for embedded signup endpoints
- Authorization code validation and error handling
- Missing business parameter validation
- Proper response format for configuration endpoint
- Unauthorized access prevention

#### Manual Test Cases:

- Complete embedded signup flow (happy path)
- Provider selection UI navigation
- Facebook authentication popup handling
- Error scenarios (cancelled auth, invalid business data, API failures)
- Configuration presence/absence behavior

## Related Screenshots:

![Screenshot 2025-06-09 at 7 48
18 PM](https://github.com/user-attachments/assets/34001425-df11-4d78-9424-334461e3178f)
![Screenshot 2025-06-09 at 7 48
22 PM](https://github.com/user-attachments/assets/c09f4964-3aba-4c39-9285-d1e8e37d0e33)
![Screenshot 2025-06-09 at 7 48
32 PM](https://github.com/user-attachments/assets/a34d5382-7a91-4e1c-906e-dc2d570c864a)
![Screenshot 2025-06-09 at 10 43
05 AM](https://github.com/user-attachments/assets/a15840d8-8223-4513-82e4-b08f23c95927)
![Screenshot 2025-06-09 at 10 42
56 AM](https://github.com/user-attachments/assets/8c345022-38b5-44c4-aba2-0cda81389c69)


Fixes
https://linear.app/chatwoot/issue/CW-2131/spec-for-whatsapp-cloud-channels-sign-in-with-facebook

---------

Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: iamsivin <iamsivin@gmail.com>
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2025-07-14 21:37:06 -07:00