Hugovdberg / PIconnect

A python connector to the OSISoft PI and PI-AF databases
MIT License
91 stars 40 forks source link

Connect to a remote pi server from Linux system #792

Open amanchaudhary-95 opened 3 weeks ago

amanchaudhary-95 commented 3 weeks ago

Feature request

Abstract

Currently, the PIconnect requires the PI SDK to be installed on the local system to connect with the remote PI DA and PI AF database servers. The PI SDK is only available for windows based systems and not for linux based system. Is it possible that the PIconnect can use the remote PI SDK and not the local PI SDK to connect with the database? For example, when we are connecting Python with a remote SQL server, it doesn't require to install SQL on my local machine, instead it can connect with the remote SQL using the IP, username and password.

Such implementation will enable the linux system to connect with OSIPI historians.

Hugovdberg commented 3 weeks ago

For PIconnect it really isn't much different from the SQL situation. You don't need the entire server,l installed locally, but you do need a driver that speaks the protocol the server listens to (usually you require that also when you're working with a local server). For SQL that is a driver library, for PI that is the SDK.

All my tests so far to load the SDK on Linux have failed since the SDK references several .NET components that are windows only. Maybe someone could write some RPC client/server combo to bridge the gap, so you can talk to the Linux RPC client that talks to the remote Windows RPC server that talks to the PI SDK locally that talks to the PI Server. But then you can't use PIconnect unless you wrote the Linux RPC client as a .NET library that has the exact same interface as the original SDK. But honestly, that is a serious project that I can't take on, and that should be a separate project.