Розгорнути окрему URL-інстанцію Med Detective для кампанії Filtrum з MP-макросом та передачею ліда в CRM.
URL: https://medetective.deltamedicalservices.online/filtrum-14052026/ Приклад: https://medetective.deltamedicalservices.online/filtrum-14052026/?MP=380637141986
{"formData":{"formId":"1e8ad1e0-4f3b-46b9-85f0-947465fec559","formFieldsData":[{"name":"WebFormId","value":"1e8ad1e0-4f3b-46b9-85f0-947465fec559"},{"name":"MobilePhone","value":"<mp_phone>"},{"name":"PhoneNumber","value":"<mp_phone>"},{"name":"Phone","value":"<mp_phone>"},{"name":"TextData1","value":"<case_id>"},{"name":"TextAnswer1","value":"<score>"},{"name":"TextAnswer2","value":"<diagnosis>"},{"name":"BpmHref","value":false}],"contactFieldsData":[{"name":"Phone","value":"<mp_phone>"}],"options":[]}} Відповідь OK: {"SaveWebFormObjectDataResult":"{resultMessage:"Данные успешно сохранены",resultCode:0}"}
Після REDIS_URL додати: ALLOWED_CASES_ENV = os.getenv("ALLOWED_CASES", "") CRM_ENABLED = os.getenv("CRM_ENABLED","false").lower() == "true" CRM_PROXY_URL = os.getenv("CRM_PROXY_URL","") CRM_WEBFORM_ID = os.getenv("CRM_WEBFORM_ID","") Після CASES_DATA = {...} фільтрація: if ALLOWED_CASES_ENV: _allowed = {c.strip() for c in ALLOWED_CASES_ENV.split(",")} CASES_DATA = {k:v for k,v in CASES_DATA.items() if k in _allowed} StartReq: додати mp_phone: str | None = None /api/start: в sessions.set додати "mp_phone": req.mp_phone or "" Нова функція _submit_crm_lead(phone, case_id, score, diagnosis) через httpx (є у venv). /api/diagnose: після verdict["product"] -> _executor.submit(_submit_crm_lead, sess.get("mp_phone",""), sess["case_id"], verdict.get("score",0), req.diagnosis)
Перший рядок JS: const mpPhone = new URLSearchParams(window.location.search).get('MP') || ''; В loadCases(): показати номер телефону над списком кейсів якщо mpPhone є. В startSession(): додати mp_phone: mpPhone до JSON body запиту /api/start.
handle /filtrum-14052026 { redir ... 301 } handle /filtrum-14052026/* { uri strip_prefix /filtrum-14052026; reverse_proxy 127.0.0.1:8770 }
WorkingDirectory=/srv/projects/med-detective/ Port: 8770 REDIS_URL=redis://127.0.0.1:6379/5 ALLOWED_CASES=case_02_ibs CRM_ENABLED=true CRM_PROXY_URL=https://proxy.medizine.ua/ CRM_WEBFORM_ID=1e8ad1e0-4f3b-46b9-85f0-947465fec559
systemctl daemon-reload systemctl enable --now med-detective-filtrum systemctl reload caddy systemctl restart med-detective
curl http://127.0.0.1:8770/api/health https://medetective.deltamedicalservices.online/filtrum-14052026/?MP=380637141986