### 服务器交互函数
#### 内容
- 服务器交互函数简介
- ConnectServer
- LoginServer
- DefaultConnectAndLogin
- INI文件配置登陆信息
- SendExecuteAndWait
- SendExecute
- 实时行情订阅SendExecute
- 异步回调函数以及实时订阅系统参数说明
- 服务器返回信息类型
- EndExecute
- CheckLogined
- CheckConnected
- LoginedUser
- RemoteAddress
- RemotePort
- DisconnectServer
- TSTaskAdmin
- SetComputeService
- GetComputebitsOption
- SetComputebitsOption
- GetComputeService
#### 服务器交互函数简介
服务器交互函数可以让本地执行的TSL语言与金融分析.NET服务器进行交互,并递交计算请求到服务器运算。
#### ConnectServer
范例 http模式代理登陆
```text
cTS:=ConnectServer("tsl.tinysoft.com.cn",443,array("Address":"192.168.0.250","Port":808,"AuthMode":0));
lg:=LoginServer("TSUser","UserPass",msg);
if lg=0 then
begin
echo "登陆成功!";
Script:='program TS_testFunc;
Begin
r:=1->5;
Return r;
End.';
if SendExecuteAndWait(Script,getSysParams(),Result,ErrMsg)=0 then //Execute Success
echo tostn(Result),'\r\n';
else
echo '远端执行失败!\r\n';
DisconnectServer();
end
else
echo "登陆失败,报错:(",cTS,",",msg,")\r\n";
```
打印"登陆成功!"则说明连接成功。参考DefaultConnectAndLogin LoginServer
#### LoginServer
参考DefaultConnectAndLogin ConnectServer
#### DefaultConnectAndLogin
参考ConnectServer LoginServer
#### INI文件配置登陆信息
第一步:在plugin目录下新建ini文件,文件全名为tslclient.ini
注:客户端用户,该plugin目录在天软安装目录下,一般路径为:C:\Program
Files\Tinysoft\Analyse.NET\Plugin
其它用户,需要找到插件包中的plugin目录下添加。
第二步:在tslclient.ini添加以下内容:
```text
[TSLClient Config]
;调用是登陆的别名
[test]
;本地许可
Permit=local
;用户名
LoginName=
;密码
LoginPass=
;服务器 地址
Address=tsl.tinysoft.com.cn
;端口
Port=443
;---以下为代理服务器
;代理服务器端口
ProxyPort=
;代理服务器地址
ProxyAddress=
;代理身份验证用户名
ProxyUser=
;验证密码
ProxyPass=
;代理模式 http模式设置为0, SOCKS5模式设置为5
ProxyAuthMode=
```
其中,[test]中的test是用户自定义的别名,可用户自己设定,区分大小写,在登陆时调用。
其余项用户需要根据自己的实际情况填写。
同一个ini文档中,可以配置多个配置信息,使用时通过别名进行识别。
调用比如:cTS:=DefaultConnectAndLogin(‘test’,msg)
#### SendExecuteAndWait
参考实时行情订阅。
#### SendExecute
参考实时行情订阅 异步回调函数以及实时订阅系统参数说明 服务器返回信息类型。
#### 实时行情订阅SendExecute
参考异步回调函数以及实时订阅系统参数说明 服务器返回信息类型
#### 异步回调函数以及实时订阅系统参数说明
|
系统参数名 |
类型 |
说明 |
|
channel |
整数 |
通道ID,和SendExecute返回值一致 |
|
recvtype |
整数 |
参阅:服务器返回信息类型 |
|
errno |
整数 |
错误号,非0错误 |
|
errmsg |
字符串 |
错误信息 |
|
result |
订阅为数组类型 |
结果集,订阅为推送类型 |
#### 服务器返回信息类型
|
返回类型 |
值 |
说明 |
|
执行函数返回 |
0x0201 |
|
|
执行委托函数返回 |
0x0301 |
|
|
ECHO返回 |
0x0401 |
|
|
客户请求返回 |
0x0402 |
|
|
实时订阅返回 |
0x0501 |
|
|
错误信息返回 |
0 |
|
#### EndExecute
#### CheckLogined
#### CheckConnected
#### LoginedUser
#### RemoteAddress
范例
```text
####python交互范例,python代码
import sys
sys.path.append('D:\\tinysoft\\Analyse.NET\\')
import TSLPy3 as ts
data=ts.DefaultConnectAndLogin("test")
print(ts.Logined())
print("远程登录地址",ts.RemoteAddress())
print("服务器设置:",ts.GetService())
ts.SetComputeBitsOption(64) #设置计算单位
print("计算位数设置:",ts.GetComputeBitsOption())
ts.Disconnect() #断开连接
```
//结果
#### RemotePort
#### DisconnectServer
- 服务器交互函数简介
- ConnectServer
- LoginServer
- DefaultConnectAndLogin
- INI文件配置登陆信息
- SendExecuteAndWait
- SendExecute
- 实时行情订阅SendExecute
- 异步回调函数以及实时订阅系统参数说明
- 服务器返回信息类型
- EndExecute
- CheckLogined
- CheckConnected
- LoginedUser
- RemoteAddress
- RemotePort
- DisconnectServer
- TSTaskAdmin
- SetComputeService
- GetComputebitsOption
- SetComputebitsOption
- GetComputeService
#### TSTaskAdmin
范例
```text
rdo2 TSTaskAdmin("oa",CmdReturn,BroadCastMsg,ErrMsg,3000,1000);
return CmdReturn;
```
返回结果:
#### SetComputeService
#### GetComputebitsOption
#### SetComputebitsOption
#### GetComputeService