solace.messaging.config.solace_properties package

solace.messaging.config.solace_properties.authentication_properties module

This module contains the dictionary keys for solace.messaging.messaging_service.MessagingService authentication properties

solace.messaging.config.solace_properties.authentication_properties.KRB_SERVICE_NAME = 'solace.messaging.authentication.kerberos.instance-name'

This property specifies the first part of Kerberos Service Principal Name (SPN) of the form ServiceName/Hostname@REALM (for Windows) or Host Based Service of the form ServiceName@Hostname (for Linux and SunOS).

solace.messaging.config.solace_properties.authentication_properties.SCHEME = 'solace.messaging.authentication.scheme'

SCHEME can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

Although the SCHEME can be set in MessagingServiceClientBuilder.from_properties() it is preferable to use MessagingServiceClientBuilder.with_authentication_strategy() to avoid these internal details.

The value in the dictionary can be one of:

solace.messaging.config.solace_properties.authentication_properties.SCHEME_BASIC_PASSWORD = 'solace.messaging.authentication.basic.password'

SCHEME_BASIC_PASSWORD can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.BasicUserNamePassword strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_BASIC_USER_NAME = 'solace.messaging.authentication.basic.username'

SCHEME_BASIC_USER_NAME can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.BasicUserNamePassword strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_CLIENT_CERT_USER_NAME = 'solace.messaging.authentication.client-cert.username'

SCHEME_CLIENT_CERT_USER_NAME can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.ClientCertificateAuthentication strategy is chosen. This property is ignored by default and only needed if the ‘allow-api-provided-username’ is enabled in the configuration of the message-vpn in the broker. This property is not recommended.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_CLIENT_PRIVATE_KEY_FILE_PASSWORD = 'solace.messaging.authentication.client-cert.private-key-password'

SCHEME_CLIENT_PRIVATE_KEY_FILE_PASSWORD may be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.ClientCertificateAuthentication strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_KERBEROS_USER_NAME = 'solace.messaging.authentication.kerberos.username'

SCHEME_KERBEROS_USER_NAME can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.Kerberos strategy is chosen. This property is ignored by default and only needed if the ‘allow-api-provided-username’ is enabled in the configuration of the message-vpn in the broker. This property is not recommended.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_OAUTH2_ACCESS_TOKEN = 'solace.messaging.authentication.oauth2.access-token'

SCHEME_OAUTH2_ACCESS_TOKEN can be used as a key in the MessagingService properties when configured from a dictionary. This property is only used if the OAuth2 authentication strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_OAUTH2_ISSUER_IDENTIFIER = 'solace.messaging.authentication.oauth2.issuer-identifier'

SCHEME_OAUTH2_ISSUER_IDENTIFIER can be used as a key in the MessagingService properties when configured from a dictionary. This property is only used if the OAuth2 authentication strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_OAUTH2_OIDC_ID_TOKEN = 'solace.messaging.authentication.oauth2.oidc-id-token'

SCHEME_OAUTH2_OIDC_ID_TOKEN can be used as a key in the MessagingService properties when configured from a dictionary. This property is only used if the OAuth2 authentication strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_SSL_CLIENT_CERT_FILE = 'solace.messaging.authentication.client-cert.file'

SCHEME_SSL_CLIENT_CERT_FILE can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.ClientCertificateAuthentication strategy is chosen.

solace.messaging.config.solace_properties.authentication_properties.SCHEME_SSL_CLIENT_PRIVATE_KEY_FILE = 'solace.messaging.authentication.client-cert.private-key-file'

SCHEME_SSL_CLIENT_PRIVATE_KEY_FILE can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. This property is only used if solace.messaging.config.authentication_strategy.ClientCertificateAuthentication strategy is chosen.

solace.messaging.config.solace_properties.client_properties module

This module contains dictionary keys for the solace.messaging.messaging_service.MessagingService client properties.

solace.messaging.config.solace_properties.client_properties.APPLICATION_DESCRIPTION = 'solace.messaging.client.application-description'

APPLICATION_DESCRIPTION can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When set, the APPLICATION_DESCRIPTION appears in detailed client info for connected clients on the PubSub+ event broker.

solace.messaging.config.solace_properties.client_properties.NAME = 'solace.messaging.client.name'

NAME can be used as a key in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary. Also known as the application_id, it is preferable for applications to set NAME as an argument to solace.messaging.messaging_service.MessagingServiceClientBuilder.build().

If NAME is not specified, and application_id is not set, then an application_id is automatically generated.

solace.messaging.config.solace_properties.message_properties module

This module contains the dictionary keys for solace.messaging.message.Message properties.

solace.messaging.config.solace_properties.message_properties.APPLICATION_MESSAGE_ID = 'solace.messaging.message.application-message-id'

Property constant defining the key to set the message application id. If not set no application message id is set on the message. The default value is not set.

This property can also be set by building a message with OutboundMessageBuilder.with_application_message_id().

solace.messaging.config.solace_properties.message_properties.APPLICATION_MESSAGE_TYPE = 'solace.messaging.message.application-message-type'

Property constant defining the key for configuring application message type. This value is set by applications and passed through the API and broker unmodified.

The value set may be any string the application chooses. This property can also be set by building a message with OutboundMessageBuilder.with_application_message_type().

solace.messaging.config.solace_properties.message_properties.CLASS_OF_SERVICE = 'solace.messaging.message.class-of-service'

Property constant defining the key for configuring the class of service of the message. Class of service is only relevant for Direct Messaging. Acceptable values for this property are 0, 1, or 2, where 0 represents the lowest class of service and 2 represents the highest class of service.

solace.messaging.config.solace_properties.message_properties.CORRELATION_ID = 'solace.messaging.message.correlation-id'

Property constant defining the key for configuring correlation ID. The correlation ID may be used by applications that need an end-to-end identifier for correlation. Such applications may be implementing their own proprietary request-reply pattern.

When use solace.messaging.publisher.request_reply_message_publisher.RequestReplyMessagePublisher the correlation ID is set by the API and any value set by the application is overwritten.

This property can also be set by building a message with OutboundMessageBuilder.with_correlation_id().

solace.messaging.config.solace_properties.message_properties.ELIDING_ELIGIBLE = 'solace.messaging.message.eliding-eligible'

Property constant defining the key for configuring whether the message is eligible for eliding.

solace.messaging.config.solace_properties.message_properties.HTTP_CONTENT_ENCODING = 'solace.messaging.message.http-encoding'

Property constant defining the key for configuring HTTP content-type encoding header. When published messages are consumed by HTTP clients, such as a clients using a REST API, the HTTP content encoding may need to be set.

The accepted values are defined in RFC 2616, section-14.11. This property can also be set by building a message with OutboundMessageBuilder.with_http_content_header().

solace.messaging.config.solace_properties.message_properties.HTTP_CONTENT_TYPE = 'solace.messaging.message.http-content'

Property constant defining the key for configuring HTTP content type header. When published messages are consumed by HTTP clients, such as a clients using a REST API, the HTTP content type may need to be set.

The accepted values are defined in RFC 2616, section-14-14. This property can also be set by building a message with OutboundMessageBuilder.with_http_content_header().

solace.messaging.config.solace_properties.message_properties.PERSISTENT_ACK_IMMEDIATELY = 'solace.messaging.message.persistent.ack-immediately'

Property constant defining the key to set the ack-immediately property. The broker should ACK this message immediately upon receipt when this is ‘’True’’.

The default value is False.

This property is only valid for persistent messages.

solace.messaging.config.solace_properties.message_properties.PERSISTENT_DMQ_ELIGIBLE = 'solace.messaging.message.persistent.dmq-eligible'

Property constant defining the key for configuring if message is eligible to be moved to a Dead Message Queue. The default value is True.

This property is only valid for persistent messages.

solace.messaging.config.solace_properties.message_properties.PERSISTENT_EXPIRATION = 'solace.messaging.message.persistent.expiration'

Property constant defining the key for configuring the UTC time (Epoch time in milliseconds) when the message is considered expired. Setting this property has no effect if the TimeToLive is set in the same message.

The expiration time is carried to clients that receive the message, unmodified and does not effect the life cycle of the message.

This property can also be set by building a message with OutboundMessageBuilder.with_expiration().

solace.messaging.config.solace_properties.message_properties.PERSISTENT_TIME_TO_LIVE = 'solace.messaging.message.persistent.time-to-live'

Property constant defining the key for configuring number of milliseconds before the message is discarded or moved to a Dead Message Queue.

The value of 0 means the message never expires. The default value is 0. This property is only valid for persistent messages.

solace.messaging.config.solace_properties.message_properties.PRIORITY = 'solace.messaging.message.priority'

Property constant defining the key for configuring message priority. The valid priority value range is 0-255 (0 is the lowest priority and 255 is the highest priority). A value of -1 indicates the priority is not set and a default priority value is used instead.

This property can also be set by building a message with OutboundMessageBuilder.with_priority().

solace.messaging.config.solace_properties.message_properties.SENDER_ID = 'solace.messaging.message.sender-id'

Property constant defining the key for configuring the custom sender ID in the message header. The accepted values are string type, or None type. If a string is passed, the sender ID field will be set to that string. If None is passed, any previously set sender ID will be deleted. Note: passing None as the value of this property will not delete a sender ID which was automatically generated using the service property GENERATE_SENDER_ID.

This property can also be set by building a message with OutboundMessageBuilder.with_sender_id().

solace.messaging.config.solace_properties.message_properties.SEQUENCE_NUMBER = 'solace.messaging.message.persistent.sequence-number'

Property constant defining the key to set the message sequence number. If not set no sequence number is set on the message. The default value is not set.

This property can also be set by building a message with OutboundMessageBuilder.with_sequence_number().

solace.messaging.config.solace_properties.publisher_properties module

This module contains dictionary keys for solace.messaging.publisher.message_publisher.MessagePublisher properties.

solace.messaging.config.solace_properties.publisher_properties.PUBLISHER_BACK_PRESSURE_BUFFER_CAPACITY = 'solace.messaging.publisher.back-pressure.buffer-capacity'

Property-key to define back pressure buffer capacity measured in messages.

This property is ignored when PUBLISHER_BACK_PRESSURE_STRATEGY_ELASTIC is configured.

solace.messaging.config.solace_properties.publisher_properties.PUBLISHER_BACK_PRESSURE_BUFFER_WAIT_TIMEOUT = 'solace.messaging.publisher.back-pressure.buffer-wait-timeout'

Reserved for future use.

solace.messaging.config.solace_properties.publisher_properties.PUBLISHER_BACK_PRESSURE_STRATEGY = 'solace.messaging.publisher.back-pressure.strategy'

Property-key to define a back pressure strategy. The acceptable values for this key are:

solace.messaging.config.solace_properties.receiver_properties module

This module contains dictionary keys for the solace.messaging.receiver.message_receiver.MessageReceiver properties.

solace.messaging.config.solace_properties.receiver_properties.DIRECT_BACK_PRESSURE_BUFFER_CAPACITY = 'solace.messaging.receiver.direct.back-pressure.buffer-capacity'

This is a property constant containing the key for configuring the back pressure buffer capacity of the DirectMessageReceiverBuilder. The acceptable value for this property is an integer that is greater than 0. This property-constant mapping can be used in a dict typed configuration object to configure back pressure for a direct receiver through the DirectMessageReceiverBuilder.from_properties() method. This property only has an effect if DIRECT_BACK_PRESSURE_STRATEGY is configured using RECEIVER_BACK_PRESSURE_STRATEGY_DROP_LATEST or RECEIVER_BACK_PRESSURE_STRATEGY_DROP_OLDEST. This method is an alternative to the direct means of setting the back pressure buffer capacity of a direct receiver by passing it as a parameter to the DirectMessageReceiverBuilder.on_back_pressure_drop_oldest() or DirectMessageReceiverBuilder.on_back_pressure_drop_latest() methods.

solace.messaging.config.solace_properties.receiver_properties.DIRECT_BACK_PRESSURE_STRATEGY = 'solace.messaging.receiver.direct.back-pressure.strategy'

This is a property constant containing the key for configuring the back pressure type/strategy of the DirectMessageReceiver.

The acceptable values for this property are:

This property-constant mapping can be used in a dictionary configuration object to configure back pressure for a direct receiver through the DirectMessageReceiverBuilder.from_properties() method. This method is an alternative to the direct means of setting the back pressure of a direct receiver through the DirectMessageReceiverBuilder.on_back_pressure_elastic(), DirectMessageReceiverBuilder.on_back_pressure_drop_oldest(), or DirectMessageReceiverBuilder.on_back_pressure_drop_latest(), methods.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MESSAGE_ACK_STRATEGY = 'solace.messaging.receiver.persistent.ack.strategy'

Property constant defining the key for configuring the acknowledgement strategy for the message receiver.

The acceptables values are PERSISTENT_RECEIVER_AUTO_ACK PERSISTENT_RECEIVER_CLIENT_ACK.

This property-constant mapping can be used in a dictionary configuration object to configure the strategy for acknowledging received messages through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to setting the strategy by PersistentMessageReceiverBuilder.with_message_auto_acknowledgement(). or by PersistentMessageReceiverBuilder.with_message_client_acknowledgement() method.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MESSAGE_REPLAY_STRATEGY = 'solace.messaging.receiver.persistent.replay.strategy'

Property constant defining the key for configuring the message replay strategy of the solace.messaging.receiver.persistent_message_receiver.PersistentMessageReceiver.

The acceptable values for this property are

This property-constant mapping can be used in a dictionary configuration object to configure replay strategy for a direct receiver through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to setting the replay strategey of a persistent receiver by PersistentMessageReceiverBuilder.with_message_replay()`.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MESSAGE_REPLAY_STRATEGY_ID_BASED_REPLICATION_GROUP_MESSAGE_ID = 'solace.messaging.receiver.persistent.replay.replication-group-message-id'

Property constant defining the key for configuring the Replication Group Message ID when PERSISTENT_REPLAY_ID_BASED replay strategy is configured for a solace.messaging.receiver.persistent_message_receiver.PersistentMessageReceiver.

The acceptable value for this property is a valid Replication Group Message Id in String format as returned by solace.messaging.receiver.inbound_message.ReplicationGroupMessageId

This property-constant mapping can be used in a dictionary configuration object to configure replay strategy for a persistent receiver through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to creating a solace.messaging.config.replay_strategy.ReplicationGroupMessageIdReplay to use in the persistent receiver builder method PersistentMessageReceiverBuilder.with_message_replay()`.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MESSAGE_REPLAY_STRATEGY_TIME_BASED_START_TIME = 'solace.messaging.receiver.persistent.replay.timebased-start-time'

Property constant defining the key for configuring the message replay start time when PERSISTENT_REPLAY_TIME_BASED replay strategy is configured for a solace.messaging.receiver.persistent_message_receiver.PersistentMessageReceiver.

The acceptable value for this property is a valid datetime.datetime objects with or without timezone information.

This property-constant mapping can be used in a dictionary configuration object to configure replay strategy for a persistent receiver through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to creating a solace.messaging.config.replay_strategy.TimeBasedReplay to use in the persistent receiver builder method PersistentMessageReceiverBuilder.with_message_replay()`.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MESSAGE_SELECTOR_QUERY = 'solace.messaging.receiver.persistent.selector-query'

Property constant defining the key for configuring a message-selection query.

When a selector is applied then the receiver receives only messages whose headers and properties match the selector. A message selector cannot select messages on the basis of the content of the message body.

An acceptable value for this property is a string formatted according to Solace Selectors.

This property-constant mapping can be used in a dictionary configuration object to configure the message-selection query for a persistent message receiver through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to setting the message-selection query of a persistent message receiver by PersistentMessageReceiverBuilder.with_message_selector().

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_MISSING_RESOURCE_CREATION_STRATEGY = 'solace.messaging.receiver.persistent.missing-resource-creation-strategy'

Property constant defining the key for configuring the messing resource strategy. If a remote resource (i.e. queue) is missing the API may optionaly create that object automatically. The valid values for this property are PERSISTENT_RECEIVER_CREATE_ON_START_MISSING_RESOURCES and PERSISTENT_RECEIVER_DO_NOT_CREATE_MISSING_RESOURCES.

This property-constant mapping can be used in a dictionary configuration object to configure the strategy for creating missing resources through the PersistentMessageReceiverBuilder.from_properties() method.

This method is an alternative to the setting the missing resource creation strategy of a persistent message receiver by PersistentMessageReceiverBuilder.with_missing_resources_creation_strategy.

solace.messaging.config.solace_properties.receiver_properties.PERSISTENT_NO_LOCAL_PUBLISHED_MESSAGES = 'solace.messaging.receivers.persistent.no-local-published-messages'

Reserved for future use.

solace.messaging.config.solace_properties.service_properties module

This module contains dictionary keys for solace.messaging.messaging_service.MessagingService properties.

solace.messaging.config.solace_properties.service_properties.GENERATE_RECEIVE_TIMESTAMPS = 'solace.messaging.service.generate-receive-timestamps'

Property constant defining the key for enabling receive timestamps in received messages.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When enabled, GENERATE_RECEIVE_TIMESTAMPS applies to all messages received by solace.messaging.receiver.message_receiver.MessageReceiver that exist on the messaging service. Each message received will include a receive timestamp that reflects the time the message was received from the PubSub+ event broker by the underlying native API.

solace.messaging.config.solace_properties.service_properties.GENERATE_SENDER_ID = 'solace.messaging.service.generate-sender-id'

Property constant defining the key for enabling sender-id auto-generation.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When enabled, GENERATE_SENDER_ID applies to all messages published by solace.messaging.publisher.message_publisher.MessagePublisher that exist on the messaging service. Each message published will include the SenderId property. The application_id set in MessagingServiceClientBuilder.build() is used as the SenderId.

solace.messaging.config.solace_properties.service_properties.GENERATE_SEND_TIMESTAMPS = 'solace.messaging.service.generate-send-timestamps'

Property constant defining the key for generating send timestamps in published messages.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When enabled, GENERATE_SEND_TIMESTAMPS applies to all messages published by solace.messaging.publisher.message_publisher.MessagePublisher that exist on the messaging service. Each message published includes a timestamp that reflects the time that the message was queued for transmission to the PubSub+ event broker by the underlying native API.

solace.messaging.config.solace_properties.service_properties.VPN_NAME = 'solace.messaging.service.vpn-name'

Property constant defining the key for configuring the message vpn name.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transactional_service_properties module

This module contains dictionary keys for solace.messaging.messaging_service.TransactionalMessagingService properties.

solace.messaging.config.solace_properties.transactional_service_properties.TRANSACTIONAL_SERVICE_REQUEST_TIMEOUT = 'solace.messaging.transactional.request-timeout'

Property constant defining the key for configuring the transactional messaging service request timeout that affects operation attempts for connect, disconnect, rollback and commit. This key may be used in the solace.messaging.messaging_service.TransactionalMessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transport_layer_properties module

This module contains dictionary keys for the solace.messaging.messaging_service.MessagingService transport layer properties.

solace.messaging.config.solace_properties.transport_layer_properties.COMPRESSION_LEVEL = 'solace.messaging.transport.compression-level'

Property constant defining the key for message compression.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When set the API compresses messages with ZLIB before transmission and decompressed on receive.

This property should preferably be set by MessagingServiceClientBuilder.with_compression_level()

The valid range is 0 (off) or 1..9, where 1 is less compression (fastest) and 9 is most compression (slowest).

Note: If no port is specified in the HOST property, the API will automatically connect to either the default non-compressed listen port (55555) or default compressed listen port (55003) based on the specified COMPRESSION_LEVEL. If a port is specified in the HOST property you must specify the non-compressed listen port if not using compression (compression level 0) or the compressed listen port if using compression (compression levels 1 to 9).

solace.messaging.config.solace_properties.transport_layer_properties.CONNECTION_ATTEMPTS_TIMEOUT = 'solace.messaging.transport.connection-attempts-timeout'

Property constant defining the key for configuring timeout period (in milliseconds) for a connect operation to a given host.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transport_layer_properties.CONNECTION_RETRIES = 'solace.messaging.transport.connection-retries'

Property constant defining the key for configuring connection retries.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

This property dictates how many times to try to connect to the PubSub+ broker (or list of PubSub+ broker) during connection setup.

Zero means no automatic connection retries (that is, try once and give up). -1 means try to connect forever. The default valid range is value that is greater than or equal to -1.

When using a host list, each time the API works through the host list without establishing a connection is considered a connect retry. For example, if a CONNECTION_RETRIES value of two is used, the API could possibly work through all of the listed hosts without connecting to them three times: one time through for the initial connect attempt, and then two times through for connect retries. Each connect retry begins with the first host listed. After each unsuccessful attempt to connect to a host, the API waits for the amount of time set for RECONNECTION_ATTEMPTS_WAIT_INTERVAL before attempting another connection to a host, and the number times to attempt to connect to one host before moving on to the next listed host is determined by the value set for CONNECTION_RETRIES_PER_HOST.

solace.messaging.config.solace_properties.transport_layer_properties.CONNECTION_RETRIES_PER_HOST = 'solace.messaging.transport.connection.retries-per-host'

Property constant defining the key for configuring connection retries per host.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When using a host list, this property defines how many times to try to connect or reconnect to a single host before moving to the next host in the list.

solace.messaging.config.solace_properties.transport_layer_properties.HOST = 'solace.messaging.transport.host'

Property constant defining the key for configuring the IPv4 or IPv6 address or host name of the PubSub+ event broker to connect to.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

Multiple entries are allowed, separated by commas. The entry for the HOST property should provide a protocol, host, and port.

solace.messaging.config.solace_properties.transport_layer_properties.KEEP_ALIVE_INTERVAL = 'solace.messaging.transport.keep-alive-interval'

Property constant defining the key for configuring keep alive timer in milliseconds.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transport_layer_properties.KEEP_ALIVE_WITHOUT_RESPONSE_LIMIT = 'solace.messaging.transport.keep-alive-without-response-limit'

Property constant defining the key for configuring maximum number of consecutive Keep-Alive messages that can be sent without receiving a response before the connection is closed by the API.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transport_layer_properties.RECONNECTION_ATTEMPTS = 'solace.messaging.transport.reconnection-attempts'

Property constant defining the key for configuring reconnection attempts after an active session has failed.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

This property dictates how many times to attempt to reconnect to the PubSub+ event broker (or list of PubSub+ event brokers) after a connected``MessagingService`` goes down.

Zero means no automatic reconnection attempts. -1 means try to reconnect forever. The default valid range is >= -1.

When using a host list, each time the API works through the host list without establishing a connection is considered a reconnect retry. Each reconnect retry begins with the first host listed. After each unsuccessful attempt to reconnect to a host, the API waits for the amount of time set for RECONNECTION_ATTEMPTS_WAIT_INTERVAL before attempting another connection to a PubSub+ broker, and the number times to attempt to connect to one PubSub+ broker before moving on to the next listed host is determined by the value set for CONNECTION_RETRIES_PER_HOST.

solace.messaging.config.solace_properties.transport_layer_properties.RECONNECTION_ATTEMPTS_WAIT_INTERVAL = 'solace.messaging.transport.reconnection-attempts-wait-interval'

Property constant defining the key for configuring reconnection delay after connect or reconnect attempt fails.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

This property dictates how much time (in milliseconds) to wait between each attempt to connect or reconnect to the configured HOST.

If a connect or reconnect attempt to the configured HOST (which may be a list) is not successful, the API waits for the amount of time set for RECONNECTION_ATTEMPTS_WAIT_INTERVAL, and then makes another connect or reconnect attempt. The valid range is greater than or equal to zero.

solace.messaging.config.solace_properties.transport_layer_properties.SOCKET_INPUT_BUFFER_SIZE = 'solace.messaging.transport.socket.input-buffer-size'

Property constant defining the key for configuring the socket receive buffer size (in bytes).

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When this key is assigned the values 0, it indicates the socket receive buffer is not set and left at operating system default. Otherwise it must have a value greater than or equal to 1024.

solace.messaging.config.solace_properties.transport_layer_properties.SOCKET_OUTPUT_BUFFER_SIZE = 'solace.messaging.transport.socket.output-buffer-size'

Property constant defining the key for configuring the socket send buffer size (in bytes).

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

When this key is assigned the values 0, it indicates the socket send buffer is not set and left at operating system default. Otherwise it must have a value greater than or equal to 1024.

solace.messaging.config.solace_properties.transport_layer_properties.SOCKET_TCP_OPTION_NO_DELAY = 'solace.messaging.transport.socket.tcp-option-no-delay'

Property constant defining the key for enabling no delay on the transport socket.

This key may be used in the solace.messaging.messaging_service.MessagingService properties when configured from a dictionary.

solace.messaging.config.solace_properties.transport_layer_security_properties module

This module contains dictionary keys for solace.messaging.messaging_service.MessagingService transport layer security (TLS) properties.

solace.messaging.config.solace_properties.transport_layer_security_properties.CERT_REJECT_EXPIRED = 'solace.messaging.tls.cert-reject-expired'

Boolean property to enable (default) or disable reject of expired certificates. When enabled the certificate received from the PubSub+ event broker must not be expired.

solace.messaging.config.solace_properties.transport_layer_security_properties.CERT_VALIDATED = 'solace.messaging.tls.cert-validated'

Boolean property to enable (default) or disable X.509 certificate validation. When enabled the certificate received from the PubSub+ event broker is validated by using certificates found in the TRUST_STORE_PATH.

solace.messaging.config.solace_properties.transport_layer_security_properties.CERT_VALIDATE_SERVERNAME = 'solace.messaging.tls.cert-validate-servername'

Boolean property to enable (default) or disable server certificate hostname or IP address validation. When enabled the certificate received from the PubSub+ event broker must match the host used to connect.

solace.messaging.config.solace_properties.transport_layer_security_properties.CIPHER_SUITES = 'solace.messaging.tls.cipher-suites'

This property specifies a comma separated list of the cipher suites. Allowed cipher suites are:

‘AES256-SHA’

‘ECDHE-RSA-AES256-SHA’

‘AES256-GCM-SHA384’

‘AES256-SHA256’

‘ECDHE-RSA-AES256-GCM-SHA384’

‘AES128-SHA256’

‘DES-CBC3-SHA’

‘ECDHE-RSA-DES-CBC3-SHA’

‘RC4-SHA’

‘ECDHE-RSA-AES256-SHA384’

‘AES128

‘ECDHE-RSA-AES128-SHA256’

‘AES128-GCM-SHA256’

‘RC4-MD5’

‘ECDHE-RSA-AES128-GCM-SHA256’

‘TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384’

‘ECDHE-RSA-AES128-SHA’

‘TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384’

‘TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA’

‘TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA’

‘TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256’

‘TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA’

‘TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256’

‘TLS_RSA_WITH_AES_128_GCM_SHA256’

‘TLS_RSA_WITH_AES_128_CBC_SHA256’

‘TLS_RSA_WITH_AES_256_GCM_SHA384’

‘TLS_RSA_WITH_AES_256_CBC_SHA256’

‘TLS_RSA_WITH_AES_256_CBC_SHA’

‘SSL_RSA_WITH_3DES_EDE_CBC_SHA

‘TLS_RSA_WITH_AES_128_CBC_SHA’

‘SSL_RSA_WITH_RC4_128_SHA’

‘SSL_RSA_WITH_RC4_128_MD5’

solace.messaging.config.solace_properties.transport_layer_security_properties.EXCLUDED_PROTOCOLS = 'solace.messaging.tls.excluded-protocols'

This property specifies a comma separated list of excluded SSL protocols.

Valid SSL protocols are ‘SSLv3’, ‘TLSv1’, ‘TLSv1.1’, ‘TLSv1.2’.

solace.messaging.config.solace_properties.transport_layer_security_properties.PROTOCOL_DOWNGRADE_TO = 'solace.messaging.tls.protocol-downgrade-to'

This property specifies a transport protocol that the SSL connection will be downgradedto after client authentication.

Allowed transport protocol is “PLAIN_TEXT”. May be combined with non-zero compression level to achieve compression without encryption.

solace.messaging.config.solace_properties.transport_layer_security_properties.TRUSTED_COMMON_NAME_LIST = 'solace.messaging.tls.trusted-common-name-list'

This property is provided for legacy installations and is not recommended as part of best practices. The API performs Subject Alternative Name verification when the Subject Alternative Name is found in the server certificate which is generally the best practice for a secure connection.

This property specifies a comma separated list of acceptable common names in certificate validation. The number of common names specified by an applications is limited to 16. Leading and trailing whitespaces are considered to be part of the common names and are not ignored. If the application does not provide any common names, there is no common name verification.

solace.messaging.config.solace_properties.transport_layer_security_properties.TRUST_STORE_PATH = 'solace.messaging.tls.trust-store-path'

This property specifies the directory where the trusted certificates are. The maximum depth for the certificate chain verification that shall be allowed is 3.