XBase软件框架使用说明(3)

通讯通道配置


type:通道类型,1-TCP客户端;2-TCP服务端;3-UDP点对点;4-UDP组播;5-UDP广播;6-串口通讯;
id:通道标志;
protocolKey:通讯协议key值,与协议配置中的protocolKey对应;
以上三个配置,跟具体的通道类型无关,都必须进行配置。

TCP客户端通道配置

sendIp:发送的IP,服务端IP地址; sendPort:服务端口; type:通讯类型,必须是"1" ; timeout:调用同步发送数据sendDataAsyn函数时,如果超过这个时间没有收到回应数据,则返回; timeout_reconn_time:链接超时时间,如果这个时间内没有收到心跳数据或其他业务数据,则表示网络已经断开,需要重新链接; heart_sendtime:心跳发送间隔时间,客户端和服务器配置成一样; name:通道名称,用于显示; opreationClass:处理数据的类名称,此类需要用 CommunicationReflect::getInstance()->registerClass<Communication_TcpClient>("Communication_TcpClient")进行注册; packStart:自定义的包头(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致; packEnd:自定义包尾(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致; heartContext:定义心跳包的包体部分(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致 ; 另外,可以自定义配置用于业务处理需要。

TCP服务端通道配置

receciveIp:监听地址,如果配置了,则监听对应的ipv4地址,不配置则监听所有ipv4地址; receivePort:监听端口; type:通讯类型,必须是"2" ; timeout:调用同步发送数据sendDataAsyn函数时,如果超过这个时间没有收到回应数据,则返回; timeout_reconn_time:链接超时时间,如果这个时间内没有收到心跳数据或其他业务数据,则表示网络已经断开,将对此链接的信息进行清理; heart_sendtime:心跳发送间隔时间,客户端和服务器配置成一样; name:通道名称,用于显示; opreationClass:处理数据的类名称,此类需要用CommunicationReflect::getInstance()->registerClass<Communication_TcpClient>("Communication_TcpServer")进行注册; packStart:自定义的包头(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致; packEnd:自定义包尾(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致; heartContext:定义心跳包的包体部分(也可以不定义,有默认值),注意:如果自定义了此值,那么在通讯的另一端必须也要定义,并且值要一致 ; 另外,可以自定义配置用于业务处理需要。

UDP通道配置

UDP组播配置
localIp:本地接收的IP地址,如果不配置则不指定接收IP地址; receciveIp:接收组播地址,必须配置; receivePort:接收组播端口; sendIp:发送组播地址; sendPort:发送组播端口 type:通讯类型,必须是"4" ; timeout:调用同步发送数据sendDataAsyn函数时,如果超过这个时间没有收到回应数据,则返回; name:通道名称,用于显示; opreationClass:处理数据的类名称,此类需要用CommunicationReflect::getInstance()->registerClass<Communication_TcpClient>("Communication_Udp")进行注册;
UDP点对点
localIp:本地接收IP地址,如果为空或不配置,则针对所有IP地址; receivePort:接收端口; sendIp:发送IP地址; sendPort:发送端口;

3.4.4其他配置
使用者可以根据自己业务需要,在这些配置上任意添加配置,并通过通道的getAttr函数获取到配置信息进行处理。
工程创建使用:XBase软件框架使用说明(1)
协议配置:XBase软件框架使用说明(2)