using System;
|
using System.Collections.Generic;
|
using System.Net.Sockets;
|
|
namespace ConnectionUtil
|
{
|
public interface SCADAApi : IDisposable
|
{
|
/// <summary>
|
/// 连接方法
|
/// </summary>
|
/// <param name="config"></param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool Connect(object config, out string errMsg);
|
/// <summary>
|
/// IP连接Scada服务器
|
/// </summary>
|
/// <param name="IP">MES服务器IP</param>
|
/// <param name="Port"> MES服务器Port口</param>
|
/// <param name="LocalIP">本地连接IP</param>
|
/// <param name="LocalPort">本地连接端口</param>
|
/// <returns></returns>
|
bool Connect(string IP, int Port, string LocalIP, int LocalPort);
|
|
/// <summary>
|
/// 连接Scada管理服务器
|
/// </summary>
|
/// <param name="IP"> Scada服务器IP</param>
|
/// <param name="Port">ScadPort口</param>
|
/// <param name="LocalPort">本地连接端口</param>
|
/// <param name="errMsg"></param>
|
/// <param name="socket"></param>
|
/// <returns></returns>
|
bool Connect2(string IP, int Port, int LocalPort, out string errMsg, Socket socket = null);
|
|
/// <summary>
|
/// 连接Scada管理服务器
|
/// </summary>
|
/// <param name="IP">ScadaManagerIP</param>
|
/// <param name="Port">ScadaManagerPort口</param>
|
/// <param name="LocalPort">本地连接端口</param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool ConnectManager(string IP, int Port, int LocalPort, out string errMsg);
|
|
/// <summary>
|
/// 断开服务器连接
|
/// </summary>
|
void DisConnect();
|
|
/// <summary>
|
/// 批量写增加参数
|
/// </summary>
|
/// <param name="id"></param>
|
/// <param name="par"></param>
|
/// <returns></returns>
|
bool DoAddParWriteMultiple(int id, string par);
|
|
/// <summary>
|
/// 换型
|
/// </summary>
|
/// <param name="_ProductLineName"></param>
|
/// <param name="_ProductName"></param>
|
/// <param name="errMsg"></param>
|
/// <param name="_WorkStationName"></param>
|
/// <returns></returns>
|
bool DoDoChangeModel(string _ProductLineName, string _ProductName, out string errMsg, string _WorkStationName = null);
|
|
/// <summary>
|
/// 批量读值
|
/// </summary>
|
/// <param name="_Id"></param>
|
/// <returns></returns>
|
string[,] DoFctReadMultiple(int[] _Id);
|
|
/// <summary>
|
/// 单一读值
|
/// </summary>
|
/// <param name="_name"></param>
|
/// <param name="result"></param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool DoFctReadSingle(string _name, out string result, out string errMsg);
|
|
/// <summary>
|
/// 单一写值
|
/// </summary>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool DoFctWriteMultiple(out string errMsg);
|
|
/// <summary>
|
/// 写单一值
|
/// </summary>
|
/// <param name="_name"></param>
|
/// <param name="_value"></param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool DoFctWriteSingle(string _name, string _value, out string errMsg);
|
|
/// <summary>
|
/// mqtt发布消息
|
/// </summary>
|
/// <param name="topic">主题</param>
|
/// <param name="_value">值</param>
|
/// <param name="errMsg">错误信息></param>
|
/// <returns></returns>
|
bool DoMqttPublish(string topic, string _value, out string errMsg);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="_user"></param>
|
/// <param name="_password"></param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool DoLogin(string _user, string _password, out string errMsg);
|
|
/// <summary>
|
/// 重启DataServer服务器
|
/// </summary>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool DoReSETDataServer(out string errMsg);
|
|
/// <summary>
|
/// 获取动态IP
|
/// </summary>
|
/// <returns></returns>
|
string getLocalIP();
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="_paraMPairs"></param>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
short[,] GetLowerComputerStatus(short[] _paraMPairs, out string errMsg);
|
|
/// <summary>
|
/// 初始化批量写参数
|
/// </summary>
|
void InitParWriteMultiple();
|
|
/// <summary>
|
/// 检查与LTSCADA是否断开连接了
|
/// </summary>
|
/// <param name="errMsg"></param>
|
/// <returns></returns>
|
bool IsConnected(out string errMsg);
|
|
/// <summary>
|
/// 批量写
|
/// </summary>
|
/// <param name="_paraMPairs">参数列表</param>
|
/// <param name="errMsg">错误信息</param>
|
/// <returns>处理结果</returns>
|
bool ToFctWriteMultiple(Dictionary<int, string> _paraMPairs, out string errMsg);
|
}
|
}
|