diff --git a/backend/requirements.txt b/backend/requirements.txt index 28b8368..689102e 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -4,6 +4,7 @@ sqlalchemy>=2.0.23 psycopg2-binary>=2.9.9 pydantic[email]>=2.5.0 httpx>=0.25.2 +certifi>=2024.0.0 python-dotenv>=1.0.0 python-multipart>=0.0.7 openpyxl>=3.1.2 diff --git a/backend/whatsapp.py b/backend/whatsapp.py index 8452def..fbfc9a8 100644 --- a/backend/whatsapp.py +++ b/backend/whatsapp.py @@ -3,7 +3,9 @@ WhatsApp Cloud API Service Handles sending WhatsApp messages via Meta's API """ import os +import ssl import httpx +import certifi import re import logging from typing import Optional @@ -164,7 +166,8 @@ class WhatsAppService: url = f"{self.base_url}/{self.phone_number_id}/messages" try: - async with httpx.AsyncClient() as client: + ssl_ctx = ssl.create_default_context(cafile=certifi.where()) + async with httpx.AsyncClient(verify=ssl_ctx) as client: response = await client.post( url, json=payload, @@ -294,7 +297,8 @@ class WhatsAppService: print("=" * 80 + "\n") try: - async with httpx.AsyncClient() as client: + ssl_ctx = ssl.create_default_context(cafile=certifi.where()) + async with httpx.AsyncClient(verify=ssl_ctx) as client: response = await client.post( url, json=payload,