secsgem
Simple Python SECS/GEM implementation
This module is still work in progress. I'd love to get your input, your use case, whether you are experienced in SECS or not.
Installation
To install the latest official release (0.3.0, 2024-09-14, https://pypi.python.org/pypi/secsgem):
$ pip install secsgem
To install the current development code (might be instable):
$ pip install git+git://github.com/bparzella/secsgem
Sample
import logging
import code
import secsgem.common
import secsgem.gem
import secsgem.hsms
from communication_log_file_handler import CommunicationLogFileHandler
class SampleHost(secsgem.gem.GemHostHandler):
def __init__(self, settings: secsgem.common.Settings):
super().__init__(settings)
self.MDLN = "gemhost"
self.SOFTREV = "1.0.0"
commLogFileHandler = CommunicationLogFileHandler("log", "h")
commLogFileHandler.setFormatter(logging.Formatter("%(asctime)s: %(message)s"))
logging.getLogger("communication").addHandler(commLogFileHandler)
logging.getLogger("communication").propagate = False
logging.basicConfig(format='%(asctime)s %(name)s.%(funcName)s: %(message)s', level=logging.DEBUG)
settings = secsgem.hsms.HsmsSettings(
address="127.0.0.1",
port=5000,
connect_mode=secsgem.hsms.HsmsConnectMode.PASSIVE,
device_type=secsgem.common.DeviceType.HOST
)
h = SampleHost(settings)
h.enable()
code.interact("host object is available as variable 'h'", local=locals())
h.disable()
Contribute
This project is still at its beginning. If you can offer suggestions, additional information or help please contact me.
Release files for secsgem 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| secsgem-0.3.0.tar.gz | 117.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| secsgem-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 516.2 kB
Release files / secsgem-0.3.0.tar.gz
| Download URL | secsgem-0.3.0.tar.gz |
|---|---|
| Size | 117.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9e21059dfb278799e254bab071c164e56ba624530e4900f4893e6787bbdab4f2
|
|
BLAKE2b-256 checksum How to use checksums |
d25e640f53c54f79d540f75d511bd49a27035385d21418ef589d30bcdc21173d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.11.0 Linux/6.5.0-1025-azure
|
Release files / secsgem-0.3.0-py3-none-any.whl
| Download URL | secsgem-0.3.0-py3-none-any.whl |
|---|---|
| Size | 398.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e1b89d5d47239de86d9da9d103736a7a86b57d28746f166dca88348f1776f960
|
|
BLAKE2b-256 checksum How to use checksums |
08f55a2d32db683bb05db87ec251801d3177fa7f95f248d0de8064b358d124a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.11.0 Linux/6.5.0-1025-azure
|