简介

当您做好了分控,在总控的时候,一个方法可以把分控的代码复制粘贴到总控程序,也可以使用
call_in或者 call 指令来调用分控程序

call和call_in区别

这两个函数可以在当前程序中调用其它程序,只需要通过程序的控制代码进行调用,区别是:
call 是打开新的线程运行要调用的程序,然后立刻运行当前程序后面的代码.
call_in 是在当前程序中运行要调用的程序,调用的程序运行完毕后,继续运行程序后面的代码.

call是不阻塞的,不等待被调用的程序执行完毕,就立刻运行下一行代码.
call_in是阻塞的,并等待被调用的程序执行完毕,才会运行下一行代码.

当你不知道用那个指令时,建议用 call_in

call_in调用程序

2023-09-12T04:51:56.png

调用多个程序

如果有多个程序调用,一行调用一个就可以了,如下图(系统总开)

 call_in("21370807.tsk");  --会议LED 配电柜电开
 sleep(5); --延时5秒
 call_in("13567434.tsk");  --时序电源全开
 sleep(2); --延时2秒
 call_in("21370203.tsk");  --打开电脑

中控之间调用程序

N台中控的WAN口连入相同的局域网,配置了不同IP后,中控之间是可以相互调用程序,直接使用API接口,UDP或tcp调用即可,指令:
upd.send("ip",8800,"xxx.tsk");
其中ip是被调用中控的IP地址,端口8800是固定的,xxx.tsk是要调用的程序的APPID,例如 21290219.tsk.

API接口

中控编写好程序后,可以通过多种模式进行程序的触发运行,例如 socket
udp/tcp/http/ws/js/mqtt/串口/RS232/RS485 触发,其中最常用简便的方式是通过
SimFAS APP Maker 自行制作用户 SimAPP 界面,下载到 ipad, android 平板,或者
Windows 电脑里进行控制. 其中用户可以自行对接自己的 APP 和程序.例如常见
的 Unity3D,C#,Java,object C, js,H5 等各类支持 tcp/udp/http/js/ws 的编程语言.

第三方程序/硬件调用中控程序原理是: 向中控IP的8800端口发送APPID字符串,便可启动对应程序.
中控是服务器端(server),支持的网络协议如下:

网络协议端口字符编码备注
TCP8800APPID (ASCII)例如:21290219.tsk
UDP8800APPID (ASCII)支持广播
HTTP8800APPID (base64)GET
Websocket8088ASCII使用库SimAPI_dev_ws.js

API示范例子

2025-01-31T05:05:49.png

通过TCP/UDP,向中控的8800端口发送字符串99813384.tsk便可执行 灯光全关
通过TCP/UDP,向中控的8800端口发送字符串99807112.tsk便可执行 灯光全开

SDK协议下载

更详细api sdk可以查阅 SimFAS_SDK_API.pdf

~调用程序 总控,调用,一键开机,一键关机~