### 服务器交互函数 #### 内容 - 服务器交互函数简介 - 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