# 服务器交互 / 根目录函数 ### `checkConnected()` 检查是否和服务器已连接。 返回:bool ### `checkLogined()` 检查是否已经登录上服务器。 返回:bool ### `disconnectServer()` 断开服务器。 返回:any ### `loginedUser()` 得到登录的用户名。 返回:string ### `sendExecuteAndWait(remote_exec, sys_param, exec_result, env_or_err, online)` 递交请求给服务器执行,如果成功则返回0,否则返回错误代码。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `remote_exec` | String | 递交远程的执行串,Program 开始 end结束。 | | `sys_param` | Array | 缺省的服务器系统环境参数。 | | `exec_result` | Boolean=True | 接受返回结果。 | | `env_or_err` | Boolean=True | 如果执行正确,为返回的辅助结果,辅助的返回结果往往用来描述一些有用的与结果相关的信息,具体内容由模型自己设置到env_return的系统参数中。 | | `online` | Boolean=True | 可缺省,默认模式是在线方式,如果为真则在线,如果为假则委托执行(最后执行的结果将存贮在用户数据表中,用户数据表的名称则由SysParam里的resultname系统参数设定)。 | 返回:Integer ### `sendExecute(remote_exec, sys_param, call_back, online)` 递交请求给服务器异步执行,如果成功则返回和服务器通讯的句柄。0为错误。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `remote_exec` | String | 递交远程的执行串,Program 开始 end结束。 | | `sys_param` | Array | 缺省的服务器系统环境参数。 | | `call_back` | String | 当执行结束或者出错等等回调的TSL语言代码。 | | `online` | Boolean=True | 可缺省,默认模式是在线方式,如果为真则在线,如果为假则委托执行(最后执行的结果将存贮在用户数据表中,用户数据表的名称则由SysParam里的resultname系统参数设定)。 | 返回:Integer ### `setComputeService(service)` 设置使用的计算的服务群。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `service` | String | 服务群名。空字符串表示默认服务,’auto’表示自动选择,否则为指定的服务群名。 | 返回:any ### `setComputebitsOption(v)` 设置使用的计算的位选项。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `v` | Byte | 整数。0表示自动选择,1表示32位服务器计算 2表示64位服务器计算 | 返回:Byte ### `defaultConnectAndLogin(alias, err_msg)` 连接并登录服务器,如果成功则返回0,否则返回出错代码。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `alias` | String | 服务器别名,其相应的配置在INI中。配置可参考:INI文件配置登陆信息 | | `err_msg` | String | 可省略的参数,当登录不成功的时候,其返回错误信息。 | 返回:integer ### `endExecute(exec_handle)` 终止异步执行或者订阅。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `exec_handle` | Integer | 由SendExecute返回的执行句柄。 | 返回:any ### `connectServer(address, port, proxy_info)` 连接服务器。成功返回0,否则返回错误代码。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `address` | String | 字符串类型,服务器地址。 | | `port` | Integer | 整数类型,服务器端口。 | | `proxy_info` | Array | 若无代理服务器,则省略。代理服务器信息,字符串下标数组类型。数组下标串为: | 返回:Integer #### 示例 ```tsl http模式代理登陆 c_ts:=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,err_msg)=0 then //Execute Success echo toStn(result),'\r\n'; else echo '远端执行失败!\r\n'; disconnectServer(); end else echo "登陆失败,报错:(",c_ts,",",msg,")\r\n"; 打印"登陆成功!"则说明连接成功。 ``` ### `loginServer(user_name, password, err_msg)` 登录服务器。成功返回0,否则返回错误代码。 | 参数 | 类型 | 说明 | | --- | --- | --- | | `user_name` | String | 字符串类型,登录用户名。 | | `password` | String | 字符串类型,登录密码。 | | `err_msg` | | 可选参数,当登录错误的时候返回错误串。 | 返回:Integer ### `remoteAddress()` 第三方交互中得到远程登录的地址 返回:String #### 示例 ```tsl #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()` 得到远程端口。 返回:Integer ### `tsTaskAdmin(command, cmd_return, broad_cast_msg, err_msg, wait_ms, data_recved_wait_ms)` 向天软平台发送管理命令。本地函数调用时需要加上RDO2 | 参数 | 类型 | 说明 | | --- | --- | --- | | `command` | String | 字符串类型,送入的命令串。更多任务管理命令查看:Q:任务管理说明 | | `cmd_return` | String | 字符串,存放命令执行的返回结果。 | | `broad_cast_msg` | String | 字符串,存放在命令期间接收到的广播消息。 | | `err_msg` | String | 如果发生错误,返回错误的信息串。 | | `wait_ms` | integer | 等待信息的毫秒数,可省略。 | | `data_recved_wait_ms` | integer | 当数据已经有接收到,等多多少毫秒则结束等待。 | 返回:integer #### 示例 ```tsl rdo2 tsTaskAdmin("oa",cmd_return,broad_cast_msg,err_msg,3000,1000); return cmd_return; 返回结果: ``` ### `getComputebitsOption()` 获得使用的计算的位选项。 返回:Byte ### `getComputeService()` 获得计算的服务群选择。 返回:String