feat: support endpoint url template

This commit is contained in:
Yeuoly 2024-10-09 22:58:36 +08:00
parent ae96f66a08
commit dfaf639790
No known key found for this signature in database
GPG Key ID: A66E7E320FB19F61
2 changed files with 16 additions and 1 deletions

View File

@ -164,6 +164,10 @@ class EndpointConfig(BaseSettings):
default="",
)
ENDPOINT_URL_TEMPLATE: str = Field(
description="Template url for endpoint plugin", default="http://localhost:5002/e/{hook_id}"
)
class FileAccessConfig(BaseSettings):
"""

View File

@ -1,7 +1,8 @@
from datetime import datetime
from pydantic import BaseModel, Field
from pydantic import BaseModel, Field, model_validator
from configs import dify_config
from core.entities.provider_entities import ProviderConfig
from core.plugin.entities.base import BasePluginEntity
@ -21,8 +22,18 @@ class EndpointEntity(BasePluginEntity):
settings: dict
name: str
enabled: bool
url: str
hook_id: str
tenant_id: str
plugin_id: str
expired_at: datetime
declaration: EndpointDeclaration = Field(default_factory=EndpointDeclaration)
@model_validator(mode="before")
@classmethod
def render_url_template(cls, values):
if "url" not in values:
url_template = dify_config.ENDPOINT_URL_TEMPLATE
values["url"] = url_template.replace("{hook_id}", values["hook_id"])
return values