Packets¶
-
class
secsgem.hsms.
HsmsPacket
(header: Optional[secsgem.hsms.header.HsmsHeader] = None, data: bytes = b'')[source]¶ Bases:
secsgem.common.packet.Packet
Class for hsms packet.
Contains all required data and functions.
-
header
¶ Get the header.
-
encode
() → bytes[source]¶ Encode packet data to hsms packet.
Returns: encoded packet Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> packet = secsgem.hsms.HsmsPacket(secsgem.hsms.HsmsLinktestReqHeader(2)) >>> secsgem.common.format_hex(packet.encode()) '00:00:00:0a:ff:ff:00:00:00:05:00:00:00:02'
-
static
decode
(text: bytes) → secsgem.hsms.packet.HsmsPacket[source]¶ Decode byte array hsms packet to HsmsPacket object.
Returns: received packet object Return type: secsgem.hsms.HsmsPacket
Example:
>>> import secsgem.common >>> import secsgem.hsms >>> >>> packetData = b"\x00\x00\x00\x0b\xff\xff\x00\x00\x00\x05\x00\x00\x00\x02" >>> >>> secsgem.common.format_hex(packetData) '00:00:00:0b:ff:ff:00:00:00:05:00:00:00:02' >>> >>> secsgem.hsms.HsmsPacket.decode(packetData) HsmsPacket({'header': HsmsHeader({session_id:0xffff, stream:00, function:00, p_type:0x00, s_type:0x05, system:0x00000002, require_response:False}), 'data': ''})
-
-
class
secsgem.hsms.
HsmsHeader
(system: int, session_id: int, stream: int = 0, function: int = 0, requires_response: bool = False, p_type: int = 0, s_type: int = 1)[source]¶ Bases:
secsgem.common.header.Header
Generic HSMS header.
Base for different specific headers
-
require_response
¶ Get require response flag.
-
p_type
¶ Get P-type.
-
s_type
¶ Get S-type.
-
encode
()[source]¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsStreamFunctionHeader
(system: int, stream: int, function: int, require_response: bool, session_id: int)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for SECS message.
Header for message with SType 0.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsSelectReqHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Select Request.
Header for message with SType 1.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsSelectRspHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Select Response.
Header for message with SType 2.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsDeselectReqHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Deselect Request.
Header for message with SType 3.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsDeselectRspHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Deselect Response.
Header for message with SType 4.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsLinktestReqHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Linktest Request.
Header for message with SType 5.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsLinktestRspHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Linktest Response.
Header for message with SType 6.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsRejectReqHeader
(system, s_type, reason)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Reject Request.
Header for message with SType 7.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-
-
class
secsgem.hsms.
HsmsSeparateReqHeader
(system)[source]¶ Bases:
secsgem.hsms.header.HsmsHeader
Header for Separate Request.
Header for message with SType 9.
-
encode
()¶ Encode header to hsms packet.
Returns: encoded header Return type: string Example:
>>> import secsgem.hsms >>> import secsgem.common >>> >>> header = secsgem.hsms.HsmsLinktestReqHeader(2) >>> secsgem.common.format_hex(header.encode()) 'ff:ff:00:00:00:05:00:00:00:02'
-
function
¶ Get function.
-
p_type
¶ Get P-type.
-
require_response
¶ Get require response flag.
-
s_type
¶ Get S-type.
-
session_id
¶ Get session id.
-
stream
¶ Get stream.
-
system
¶ Get system.
-