# Broker Config
broker_props = {
# "solace.messaging.application_id" : "default",
"solace.messaging.transport.host": os.environ.get('SOLACE_HOST') or "tcps://pubsub.preops.nm.eurocontrol.int:5671",
"solace.messaging.service.vpn-name": os.environ.get('SOLACE_VPN') or "",
"solace.messaging.authentication.scheme.basic.username": os.environ.get('SOLACE_USERNAME') or "********",
"solace.messaging.authentication.scheme.basic.password": os.environ.get('SOLACE_PASSWORD') or "********"
}
strustedstore= os.environ['HOME']+"/dev/solace-samples-python/howtos/fixtures"
strustedstore= os.environ['HOME'] + "/nm_store"
strustedstore= "/etc/ssl/certs"
transport_security = TLS.create() \
.with_certificate_validation(True, validate_server_name=True,
trust_store_file_path=strustedstore )
# .without_certificate_validation()
# trust_store_file_path=SamplerUtil.get_trusted_store_dir())
occauth= ClientCertificateAuthentication.of(certificate_file=smycrt,\
key_file=smykey ,\
key_password=None )
# Build A messaging service with a reconnection strategy of 20 retries over an interval of 3 seconds
# Note: The reconnections strategy could also be configured using the broker properties object
messaging_service = MessagingService.builder().from_properties(broker_props)\
.with_reconnection_retry_strategy(RetryStrategy.parametrized_retry(20,3))\
.with_transport_security_strategy(transport_security) \
.with_authentication_strategy(occauth) \
.build()
print("messaging_service",messaging_service)
# Blocking connect thread
messaging_service.connect()
Hello, my code just above ; and the error that i have :
{'solace.messaging.transport.host': 'tcps://pubsub.preops.nm.eurocontrol.int:5671',
'solace.messaging.service.vpn-name': '',
'solace.messaging.authentication.scheme.basic.username': '********',
'solace.messaging.authentication.scheme.basic.password': '********',
'solace.messaging.transport.reconnection-attempts': 20,
'solace.messaging.transport.reconnection-attempts-wait-interval': 3,
'solace.messaging.tls.cert-validated': True,
'solace.messaging.tls.cert-reject-expired': False,
'solace.messaging.tls.cert-validate-servername': True,
'solace.messaging.tls.trust-store-path': '/etc/ssl/certs',
'solace.messaging.authentication.scheme': 'AUTHENTICATION_SCHEME_CLIENT_CERTIFICATE',
'solace.messaging.authentication.client-cert.private-key-password': None,
'solace.messaging.authentication.client-cert.private-key-file': '/home/pavet/.nmcert/key.pem',
'solace.messaging.authentication.client-cert.file': '/home/pavet/.nmcert/crt.pem'}
cs 0
messaging_service application_id : gitana/29418/00000001/Y83XXFfUui connected : False
2023-10-07 16:10:07,124 [WARNING] solace.messaging.core: [_solace_session.py:950] [[SERVICE: 0x7f6e47017f70] - [APP ID: gitana/29418/00000001/Y83XXFfUui]] {'caller_description': 'do_connect', 'return_code': 'Not ready', 'sub_code': 'SOLCLIENT_SUBCODE_PROTOCOL_ERROR', 'error_info_sub_code': 8, 'error_info_contents': "ClientdataParser: Bad SMF version of 1 when last/everReadMoreThanOne=0/0in session state 'CONNECTING': client name 'gitana/29418/00000001/Y83XXFfUui', peer host 'tcps://pubsub.preops.nm.eurocontrol.int:5671' address 'IP 193.58.21.120', connection 'tcps_Tx"}
2023-10-07 16:10:07,126 [WARNING] solace.messaging.connections: [messaging_service.py:1164] [[SERVICE: 0x7f6e47017f70] - [APP ID: gitana/29418/00000001/Y83XXFfUui]] Connection failed. Status code: 3
Traceback (most recent call last):
File "./howto40_solace_reader_r01.py", line 119, in <module>
messaging_service.connect()
File "/home/pavet/py3std/lib/python3.8/site-packages/solace/messaging/messaging_service.py", line 1165, in connect
raise error
solace.messaging.errors.pubsubplus_client_error.PubSubPlusCoreClientError: {'caller_description': 'do_connect', 'return_code': 'Not ready', 'sub_code': 'SOLCLIENT_SUBCODE_PROTOCOL_ERROR', 'error_info_sub_code': 8, 'error_info_contents': "ClientdataParser: Bad SMF version of 1 when last/everReadMoreThanOne=0/0in session state 'CONNECTING': client name 'gitana/29418/00000001/Y83XXFfUui', peer host 'tcps://pubsub.preops.nm.eurocontrol.int:5671' address 'IP 193.58.21.120', connection 'tcps_Tx"}
I would be greatful if an expert could help me … k.regards