feat: update n8n webhook handling
This commit is contained in:
@@ -5,5 +5,6 @@ APPROVED_DOMAINS="example.com,hello.com"
|
|||||||
APPROVED_ROOMS="abc123,def456"
|
APPROVED_ROOMS="abc123,def456"
|
||||||
APPROVED_USERS="bob@example.com,john@me.com"
|
APPROVED_USERS="bob@example.com,john@me.com"
|
||||||
BOT_NAME=""
|
BOT_NAME=""
|
||||||
N8N_WEBHOOK_URL=""
|
N8N_GET_WEBHOOK_URL=""
|
||||||
|
N8N_POST_WEBHOOK_URL=""
|
||||||
WEBEX_API_KEY=""
|
WEBEX_API_KEY=""
|
||||||
|
@@ -42,9 +42,14 @@ class Config:
|
|||||||
return os.environ["ADMIN_EMAIL"].split(",")
|
return os.environ["ADMIN_EMAIL"].split(",")
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def n8n_webhook_url(self) -> str:
|
def n8n_get_webhook_url(self) -> str:
|
||||||
"""Returns the n8n webhook URL."""
|
"""Returns the n8n GET webhook URL."""
|
||||||
return os.environ["N8N_WEBHOOK_URL"]
|
return os.environ["N8N_GET_WEBHOOK_URL"]
|
||||||
|
|
||||||
|
@property
|
||||||
|
def n8n_post_webhook_url(self) -> str:
|
||||||
|
"""Returns the n8n POST webhook URL."""
|
||||||
|
return os.environ["N8N_POST_WEBHOOK_URL"]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def approved_users(self) -> list:
|
def approved_users(self) -> list:
|
||||||
|
@@ -16,7 +16,7 @@ def __n8n_post(data: dict) -> bool:
|
|||||||
"""
|
"""
|
||||||
headers: dict = {"Content-Type": "application/json"}
|
headers: dict = {"Content-Type": "application/json"}
|
||||||
resp: requests.Response = requests.post(
|
resp: requests.Response = requests.post(
|
||||||
url=config.n8n_webhook_url,
|
url=config.n8n_post_webhook_url,
|
||||||
headers=headers,
|
headers=headers,
|
||||||
json=data,
|
json=data,
|
||||||
timeout=10,
|
timeout=10,
|
||||||
@@ -58,7 +58,7 @@ def get_tasks(requestor) -> bool:
|
|||||||
"""
|
"""
|
||||||
headers: dict = {"Content-Type": "application/json"}
|
headers: dict = {"Content-Type": "application/json"}
|
||||||
resp: requests.Response = requests.get(
|
resp: requests.Response = requests.get(
|
||||||
url=config.n8n_webhook_url,
|
url=config.n8n_get_webhook_url,
|
||||||
headers=headers,
|
headers=headers,
|
||||||
timeout=10,
|
timeout=10,
|
||||||
verify=True,
|
verify=True,
|
||||||
|
@@ -16,7 +16,8 @@ def test_config() -> None:
|
|||||||
"WEBEX_API_KEY": "testing",
|
"WEBEX_API_KEY": "testing",
|
||||||
"ADMIN_FIRST_NAME": "Test",
|
"ADMIN_FIRST_NAME": "Test",
|
||||||
"ADMIN_EMAIL": "test@test.com",
|
"ADMIN_EMAIL": "test@test.com",
|
||||||
"N8N_WEBHOOK_URL": "https://n8n.test.com/webhook/abcdefg",
|
"N8N_GET_WEBHOOK_URL": "https://n8n.test.com/webhook/abc",
|
||||||
|
"N8N_POST_WEBHOOK_URL": "https://n8n.test.com/webhook/def",
|
||||||
"APPROVED_USERS": "test@test.com",
|
"APPROVED_USERS": "test@test.com",
|
||||||
"APPROVED_DOMAINS": "test.com",
|
"APPROVED_DOMAINS": "test.com",
|
||||||
"APPROVED_ROOMS": "test",
|
"APPROVED_ROOMS": "test",
|
||||||
@@ -34,7 +35,8 @@ def test_config() -> None:
|
|||||||
assert config.approved_rooms == config_vars["APPROVED_ROOMS"].split(",")
|
assert config.approved_rooms == config_vars["APPROVED_ROOMS"].split(",")
|
||||||
assert config.approved_users == config_vars["APPROVED_USERS"].split(",")
|
assert config.approved_users == config_vars["APPROVED_USERS"].split(",")
|
||||||
assert config.bot_name == config_vars["BOT_NAME"]
|
assert config.bot_name == config_vars["BOT_NAME"]
|
||||||
assert config.n8n_webhook_url == config_vars["N8N_WEBHOOK_URL"]
|
assert config.n8n_get_webhook_url == config_vars["N8N_GET_WEBHOOK_URL"]
|
||||||
|
assert config.n8n_post_webhook_url == config_vars["N8N_POST_WEBHOOK_URL"]
|
||||||
assert config.version == config_vars["APP_VERSION"]
|
assert config.version == config_vars["APP_VERSION"]
|
||||||
assert config.webex_token == config_vars["WEBEX_API_KEY"]
|
assert config.webex_token == config_vars["WEBEX_API_KEY"]
|
||||||
|
|
||||||
|
@@ -16,7 +16,8 @@ def test_config_no_admin_vars() -> None:
|
|||||||
"WEBEX_API_KEY": "testing",
|
"WEBEX_API_KEY": "testing",
|
||||||
"ADMIN_FIRST_NAME": "Test",
|
"ADMIN_FIRST_NAME": "Test",
|
||||||
"ADMIN_EMAIL": "test@test.com",
|
"ADMIN_EMAIL": "test@test.com",
|
||||||
"N8N_WEBHOOK_URL": "https://n8n.test.com/webhook/abcdefg",
|
"N8N_GET_WEBHOOK_URL": "https://n8n.test.com/webhook/abc",
|
||||||
|
"N8N_POST_WEBHOOK_URL": "https://n8n.test.com/webhook/def",
|
||||||
}
|
}
|
||||||
|
|
||||||
for config_var, value in config_vars.items():
|
for config_var, value in config_vars.items():
|
||||||
@@ -31,7 +32,8 @@ def test_config_no_admin_vars() -> None:
|
|||||||
assert config.admin_emails == config_vars["ADMIN_EMAIL"].split(",")
|
assert config.admin_emails == config_vars["ADMIN_EMAIL"].split(",")
|
||||||
assert config.admin_first_name == config_vars["ADMIN_FIRST_NAME"]
|
assert config.admin_first_name == config_vars["ADMIN_FIRST_NAME"]
|
||||||
assert config.bot_name == config_vars["BOT_NAME"]
|
assert config.bot_name == config_vars["BOT_NAME"]
|
||||||
assert config.n8n_webhook_url == config_vars["N8N_WEBHOOK_URL"]
|
assert config.n8n_get_webhook_url == config_vars["N8N_GET_WEBHOOK_URL"]
|
||||||
|
assert config.n8n_post_webhook_url == config_vars["N8N_POST_WEBHOOK_URL"]
|
||||||
assert config.version == config_vars["APP_VERSION"]
|
assert config.version == config_vars["APP_VERSION"]
|
||||||
assert config.webex_token == config_vars["WEBEX_API_KEY"]
|
assert config.webex_token == config_vars["WEBEX_API_KEY"]
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user