docs(phase5): correct FOCAS probe binding — direct DllImport, not WireFocasClient (integration review)
This commit is contained in:
@@ -47,7 +47,7 @@ with a human-readable explanation rather than a false-green TCP-open tick.
|
||||
| **AbCip** | `libplctag` Tag `InitializeAsync` (EIP session + CIP Forward Open). A CIP-level error such as tag-not-found still proves the controller answered CIP → `Ok`. A session/ForwardOpen/connect error → handshake fail. | `"CIP session OK"` | `10.100.0.35:44818` (CIP sim) |
|
||||
| **AbLegacy** | Same `libplctag` `InitializeAsync` handshake as AbCip, PCCC protocol family. | `"CIP session OK"` (PCCC family) | Deferred — no PLC5/SLC sim |
|
||||
| **TwinCAT** | `AdsClient.Connect` + `ReadStateAsync`. See [degrade semantics](#twincat-degrade) below. | `"ADS state: {state}"` | Deferred — no ADS target |
|
||||
| **FOCAS** | `cnc_allclibhndl3` via FWLIB P/Invoke (`Wire.WireFocasClient`). See [degrade semantics](#focas-degrade) below. | `"FOCAS handle OK"` | Deferred — no CNC + FWLIB |
|
||||
| **FOCAS** | `cnc_allclibhndl3` via a direct `DllImport("fwlib32")` in the probe. See [degrade semantics](#focas-degrade) below. | `"FOCAS handle OK"` | Deferred — no CNC + FWLIB |
|
||||
| **Galaxy** | gRPC unary call to `GalaxyRepository.TestConnection` on the configured mxaccessgw endpoint. See [auth-rejection rule](#galaxy-auth-rejection) below. | `"gateway gRPC OK"` | `http://10.100.0.48:5120` (mxaccessgw) |
|
||||
|
||||
**Historian.Wonderware** already performed a real handshake (`Hello` → `HelloAck`)
|
||||
@@ -86,7 +86,9 @@ managed AMS router cannot start):
|
||||
|
||||
On a Windows host with the FANUC FWLIB shared library present:
|
||||
|
||||
- `cnc_allclibhndl3` is called via the existing `Wire.WireFocasClient` P/Invoke.
|
||||
- `cnc_allclibhndl3` is called via a direct `DllImport("fwlib32")` declared in
|
||||
the probe (the production `Wire.WireFocasClient` is a pure-managed FOCAS/2 TCP
|
||||
client, not an FWLIB P/Invoke, so the probe carries its own native binding).
|
||||
A successful handle allocation → `Ok=true`, `"FOCAS handle OK"`.
|
||||
- A CNC-level rejection → handshake fail.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user