opcda-bridge
Reusable async Rust client for the opcda-bridge
gateway's gRPC API. It provides typed capabilities, lazy paged browsing, progressive live search,
persistent indexed search and index controls, list-servers, read, and write operations without
bringing in the command-line client's presentation dependencies.
[]
= "0.4"
This crate has its own independent release version. It does not need to match the client or gateway version; applications should select a compatible protocol and capability contract.
Use Client::gateway_info() to retrieve the gateway-wide protocol profile without an OPC DA
server, or Client::compatibility() to evaluate the reusable library's profile. For older
gateways, pass a server ProgID to Client::compatibility(Some("...")) so the library can infer the
legacy capabilities contract. The result reports per-feature compatibility and whether the exact
package pair is covered by boundary evidence; protocol overlap, not package-version equality,
governs normal operation.
The library exposes typed capabilities, one-page browse sessions, explicit continuation and session close operations, progressive search events, and read/write methods. Browse pages are not automatically drained; callers that need bulk results must collect pages explicitly.
Client::read returns semantic values. For an OPC DA VT_BSTR, TagValue::value contains the
exact BSTR contents without added or removed quote characters.
use ;
# async
Indexed search never falls back to live namespace traversal. Each response includes the index
readiness state, per-server auto_refresh_enabled setting, and has_more; returned ItemIDs
preserve the server's exact identity and do not contain browse-session node keys. The first
refresh_search_index validates and enrolls the exact registered ProgID. Use
set_search_index_auto_refresh to change scheduled-refresh eligibility without removing data,
and delete_search_index to remove an enrolled index and its history.
See the crate documentation for method signatures and the repository README for gateway setup and protocol details.