Integrazioni
Punti di integrazione con sistemi esterni e meccanismi per-cliente. Confidenza SUPPORTED
(sintesi da TASK-CFG-001, TASK-API-001
e dal flusso FLOW-ECM-001). Le implementazioni per-cliente sono
progetti dedicati, non rami/flag.
flowchart LR
subgraph INF["Infocad"]
web["InfocadWeb / CASSANDRA"]; integ["InfocadIntegration"]; srv["InfocadServer"]
end
sso["IdP SSO (SAML/OAUTH2)"]; ecm["ECM esterni:<br/>Alfresco · OpenText"]; tick["Sorgenti ticket:<br/>OTRS, sistemi cliente"]; erp["ERP/anagrafiche:<br/>SAP, sistemi cliente"]
web -- "IAuthManager" --> sso
web -- "IDocManager" --> ecm
integ -- "EXELoaders / EntityLayer<X>" --> tick
integ -- "EntityLayer<X> import" --> erp
integ -- "ASMX/SVC (InfocadIntegrationWS)" --> web
Famiglie di integrazione (VERIFIED sui contratti/implementazioni)
| Famiglia | Contratto (interface) | Implementazioni | Direzione |
|---|---|---|---|
| ExternalAuth (SSO) | Customizations/ExternalAuth.Interface — IAuthManager, IAuthInfo |
ExternalAuth.BPER (AuthManager), CustomAuth.CUT (AuthManager); hook web CASSANDRA/Authentication/ExternalAuth + SSOSaml |
in (login) |
| ExternalDocSave (documentale) | Customizations/ExternalDocSave.Interface — IDocManager |
.Alfresco, .Opentext, .Docs (ognuno DocManager : IDocManager) |
out (archiviazione) |
| TicketLoader (per-cliente) | InfocadIntegration/.../EXELoaders |
CUT, MBDA, POLIMI, SOF, SOFCAREGGI, _SINERGIETV, WebApiIntegration |
in (import ticket) |
| EntityLayer (per-cliente) | InfocadIntegration |
BDI, BPER, BS, CAI, IREN, ISTAT, MIT, NIAGARA, OF, Request, Sicuritalia, TrentinoSvil, Unicatt, FSSU | in (import anagrafiche/ordini) |
| InfocadIntegrationWS | host ASMX/WCF | 19 .asmx + 6 .svc |
in/out (integrazione esterna) |
Dettagli
ExternalAuth (SSO pluggabile)
Il tier web autentica con InfocadAuthenticationModule (httpModule custom) e delega l'SSO a un
IAuthManager per-cliente (es. ExternalAuth.BPER), oltre al flusso SAML (CASSANDRA/Authentication/SSOSaml).
Sezioni di config correlate: ExternalAuthSettings, OAUTH2. Stack auth duale su ASPNET_TEST38
(legacy ORA_ASPNET_* + OpenIddict) — vedi OQ-4.
ExternalDocSave (ECM esterno pluggabile)
I documenti vengono archiviati su un ECM esterno tramite IDocManager selezionato per configurazione:
Alfresco, OpenText, o Docs. L'ID esterno viene persistito nel documento Infocad — flusso
tracciato in FLOW-ECM-001 (DOC_* → DOCS_DOCUMENT/DOCS_ATTACHMENT).
TicketLoader + EntityLayer (import per-cliente)
Gli EXELoaders (console/WinExe) importano ticket da sorgenti cliente (es. OTRS per POLIMI); gli
EntityLayer<Cliente> fungono da adattatori che mappano payload esterni (SAP e sistemi cliente) verso
le BL Infocad — es. EntityLayerBS/BuildingsResponse.cs, EntityLayerBDI/RESPONSE_BU.cs,
EntityLayerIREN/FuncLocationResponse.cs invocano BuildingController.SaveBuilding (vedi reverse-trace
di FLOW-PROP-001).
InfocadIntegration (piattaforma di integrazione)
Applicazioni triadi Process/Queue/Scheduler ({Console,Core,Service}) + BaseIntegration +
DAL FS/TI + InfocadIntegrationWS (host ASMX). Scheduling con Quartz.NET (vedi Operations).
Sicurezza / affidabilità (da approfondire)
Retry/timeout/monitoring delle integrazioni: UNKNOWN (da tracciare per famiglia). Credenziali di
integrazione: alcuni app.config le incorporano — vedi SEC-001.