深入了解SECS/GEM:S9F13会话超时问题全解析

SECS/GEM会话:

会话是用于完成特殊任务或流程的一系列相关事务,会话双方将在会话结束时释放所有资源。若在用户规定时间内,会话未完成,此刻会话的进一步操作将被终止,任意已提交的资源将被删除。

SECSII会话分类:

       1)最简单的会话是一个无需回复的Primary Message。它是一个单Block的SECS-II消息。

  2)如果响应端有发起端想要的数据,发起端将用Primary Message请求这些数据,响应端将这些数据填入Reply Message回复给发起端。这是一个request/data conversation。

  3)如果发起端将单块消息中的数据发送给响应端,并期望从响应端回复确认。这是一个 send / acknowledge conversation。

  4)如果发起端有一个要为特定的交互发送的多块消息,则发起端必须在发送数据之前获得响应端的许可。会话中的第1个事务请求发送权限,响应端授予或拒绝,发送权限。如果授予权限,发起端发送数据,响应端进行相应地回复。这是一个 inquire / grant / send / acknowledge conversation。(此时将用S9F13表示会话超时)

       5)会话中的第一个事务请求信息,响应段可能做出的三种响应:
            [1]返回信息
            [2]响应端表示不能或不会获得信息
            [3]响应段表示将在随后的事务中获得并返回信息
            响应端将在信息可用时再启动后续事务,将信息返回。这是一个request/acknowledge/send/acknowledge 会话。(此时将用S9F13表示会话超时)

        注:根据SECS标准协议S9F13的定义,只有设备端在符合条件时向主机发送错误消息S9F13

实例说明(分类5):



小记:

    1.S9,F13 Conversation Timeout 功能可开启关闭。

    2.S9,F13 Conversation Timeout 可通过配置进行修改调整。

    3.S9F13 不是自动发送的,因此需要由程序创建消息。

如果您对S9F13会话超时问题想有更深入的了解,欢迎您和天津谦行(www.qianxingcim.com)一起探讨。