lightstreamer-client-lib 2.0.0__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/PKG-INFO +8 -6
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/README.md +5 -5
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/pyproject.toml +3 -3
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer/client/ls_python_client_api.py +17 -14
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer/client/ls_python_client_haxe.py +1343 -2888
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer/client/ls_python_client_wrapper.py +19 -10
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer_client_lib.egg-info/PKG-INFO +8 -6
- lightstreamer_client_lib-2.2.0/src/lightstreamer_client_lib.egg-info/requires.txt +2 -0
- lightstreamer-client-lib-2.0.0/src/lightstreamer_client_lib.egg-info/requires.txt +0 -2
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/LICENSE +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/setup.cfg +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/setup.py +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer/client/__init__.py +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer/client/com_lightstreamer_net.py +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer_client_lib.egg-info/SOURCES.txt +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer_client_lib.egg-info/dependency_links.txt +0 -0
- {lightstreamer-client-lib-2.0.0 → lightstreamer_client_lib-2.2.0}/src/lightstreamer_client_lib.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: lightstreamer-client-lib
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Lightstreamer Client SDK
|
|
5
5
|
Author-email: Lightstreamer Srl <support@lightstreamer.com>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -13,6 +13,8 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
13
13
|
Requires-Python: >=3.7
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
15
15
|
License-File: LICENSE
|
|
16
|
+
Requires-Dist: aiohttp>=3.8.6
|
|
17
|
+
Requires-Dist: jsonpatch>=1.33
|
|
16
18
|
|
|
17
19
|
# Lightstreamer Python Client SDK
|
|
18
20
|
|
|
@@ -32,7 +34,7 @@ The sdk is supported on Python 3.7 and above.
|
|
|
32
34
|
|
|
33
35
|
## Quickstart
|
|
34
36
|
|
|
35
|
-
To connect to a Lightstreamer Server, a [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.
|
|
37
|
+
To connect to a Lightstreamer Server, a [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.LightstreamerClient) object has to be created, configured, and instructed to connect to the Lightstreamer Server.
|
|
36
38
|
A minimal version of the code that creates a LightstreamerClient and connects to the Lightstreamer Server on *https://push.lightstreamer.com* will look like this:
|
|
37
39
|
|
|
38
40
|
```python
|
|
@@ -42,7 +44,7 @@ client = LightstreamerClient("http://push.lightstreamer.com/","DEMO")
|
|
|
42
44
|
client.connect()
|
|
43
45
|
```
|
|
44
46
|
|
|
45
|
-
For each subscription to be subscribed to a Lightstreamer Server a [Subscription](https://lightstreamer.com/api/ls-python-client/2.
|
|
47
|
+
For each subscription to be subscribed to a Lightstreamer Server a [Subscription](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.Subscription) instance is needed.
|
|
46
48
|
A simple Subscription containing three items and two fields to be subscribed in *MERGE* mode is easily created (see [Lightstreamer General Concepts](https://lightstreamer.com/docs/ls-server/latest/General%20Concepts.pdf)):
|
|
47
49
|
|
|
48
50
|
```python
|
|
@@ -52,7 +54,7 @@ sub.setRequestedSnapshot("yes")
|
|
|
52
54
|
client.subscribe(sub)
|
|
53
55
|
```
|
|
54
56
|
|
|
55
|
-
Before sending the subscription to the server, usually at least one [SubscriptionListener](https://lightstreamer.com/api/ls-python-client/2.
|
|
57
|
+
Before sending the subscription to the server, usually at least one [SubscriptionListener](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_api.SubscriptionListener) is attached to the Subscription instance in order to consume the real-time updates. The following code shows the values of the fields *stock_name* and *last_price* each time a new update is received for the subscription:
|
|
56
58
|
|
|
57
59
|
```python
|
|
58
60
|
class SubListener(SubscriptionListener):
|
|
@@ -86,7 +88,7 @@ client.connect()
|
|
|
86
88
|
|
|
87
89
|
## Logging
|
|
88
90
|
|
|
89
|
-
To enable the internal client logger, create a [LoggerProvider](https://lightstreamer.com/api/ls-python-client/2.
|
|
91
|
+
To enable the internal client logger, create a [LoggerProvider](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_api.LoggerProvider) and set it as the default provider of [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.LightstreamerClient.setLoggerProvider).
|
|
90
92
|
|
|
91
93
|
```python
|
|
92
94
|
import sys, logging
|
|
@@ -105,7 +107,7 @@ Compatible with Lightstreamer Server since version 7.4.0.
|
|
|
105
107
|
|
|
106
108
|
- [Live demos](https://demos.lightstreamer.com/?p=lightstreamer&t=client&lclient=python)
|
|
107
109
|
|
|
108
|
-
- [API Reference](https://lightstreamer.com/api/ls-python-client/2.
|
|
110
|
+
- [API Reference](https://lightstreamer.com/api/ls-python-client/2.2.0/index.html)
|
|
109
111
|
|
|
110
112
|
## Support
|
|
111
113
|
|
|
@@ -16,7 +16,7 @@ The sdk is supported on Python 3.7 and above.
|
|
|
16
16
|
|
|
17
17
|
## Quickstart
|
|
18
18
|
|
|
19
|
-
To connect to a Lightstreamer Server, a [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.
|
|
19
|
+
To connect to a Lightstreamer Server, a [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.LightstreamerClient) object has to be created, configured, and instructed to connect to the Lightstreamer Server.
|
|
20
20
|
A minimal version of the code that creates a LightstreamerClient and connects to the Lightstreamer Server on *https://push.lightstreamer.com* will look like this:
|
|
21
21
|
|
|
22
22
|
```python
|
|
@@ -26,7 +26,7 @@ client = LightstreamerClient("http://push.lightstreamer.com/","DEMO")
|
|
|
26
26
|
client.connect()
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
For each subscription to be subscribed to a Lightstreamer Server a [Subscription](https://lightstreamer.com/api/ls-python-client/2.
|
|
29
|
+
For each subscription to be subscribed to a Lightstreamer Server a [Subscription](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.Subscription) instance is needed.
|
|
30
30
|
A simple Subscription containing three items and two fields to be subscribed in *MERGE* mode is easily created (see [Lightstreamer General Concepts](https://lightstreamer.com/docs/ls-server/latest/General%20Concepts.pdf)):
|
|
31
31
|
|
|
32
32
|
```python
|
|
@@ -36,7 +36,7 @@ sub.setRequestedSnapshot("yes")
|
|
|
36
36
|
client.subscribe(sub)
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
Before sending the subscription to the server, usually at least one [SubscriptionListener](https://lightstreamer.com/api/ls-python-client/2.
|
|
39
|
+
Before sending the subscription to the server, usually at least one [SubscriptionListener](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_api.SubscriptionListener) is attached to the Subscription instance in order to consume the real-time updates. The following code shows the values of the fields *stock_name* and *last_price* each time a new update is received for the subscription:
|
|
40
40
|
|
|
41
41
|
```python
|
|
42
42
|
class SubListener(SubscriptionListener):
|
|
@@ -70,7 +70,7 @@ client.connect()
|
|
|
70
70
|
|
|
71
71
|
## Logging
|
|
72
72
|
|
|
73
|
-
To enable the internal client logger, create a [LoggerProvider](https://lightstreamer.com/api/ls-python-client/2.
|
|
73
|
+
To enable the internal client logger, create a [LoggerProvider](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_api.LoggerProvider) and set it as the default provider of [LightstreamerClient](https://lightstreamer.com/api/ls-python-client/2.2.0/lightstreamer.html#lightstreamer.client.ls_python_client_wrapper.LightstreamerClient.setLoggerProvider).
|
|
74
74
|
|
|
75
75
|
```python
|
|
76
76
|
import sys, logging
|
|
@@ -89,7 +89,7 @@ Compatible with Lightstreamer Server since version 7.4.0.
|
|
|
89
89
|
|
|
90
90
|
- [Live demos](https://demos.lightstreamer.com/?p=lightstreamer&t=client&lclient=python)
|
|
91
91
|
|
|
92
|
-
- [API Reference](https://lightstreamer.com/api/ls-python-client/2.
|
|
92
|
+
- [API Reference](https://lightstreamer.com/api/ls-python-client/2.2.0/index.html)
|
|
93
93
|
|
|
94
94
|
## Support
|
|
95
95
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "lightstreamer-client-lib"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.2.0"
|
|
8
8
|
description = "Lightstreamer Client SDK"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "Lightstreamer Srl", email = "support@lightstreamer.com" }]
|
|
@@ -17,8 +17,8 @@ classifiers = [
|
|
|
17
17
|
]
|
|
18
18
|
keywords = ["lightstreamer", "push", "realtime", "real-time"]
|
|
19
19
|
dependencies = [
|
|
20
|
-
"aiohttp >= 3.8.
|
|
21
|
-
"jsonpatch >= 1.
|
|
20
|
+
"aiohttp >= 3.8.6",
|
|
21
|
+
"jsonpatch >= 1.33"
|
|
22
22
|
]
|
|
23
23
|
requires-python = ">=3.7"
|
|
24
24
|
|
|
@@ -107,27 +107,29 @@ class ClientListener:
|
|
|
107
107
|
* serverAddress
|
|
108
108
|
* user
|
|
109
109
|
* password
|
|
110
|
+
* contentLength
|
|
111
|
+
* requestedMaxBandwidth
|
|
112
|
+
* reverseHeartbeatInterval
|
|
113
|
+
* httpExtraHeaders
|
|
114
|
+
* httpExtraHeadersOnSessionCreationOnly
|
|
115
|
+
* forcedTransport
|
|
116
|
+
* retryDelay
|
|
117
|
+
* firstRetryMaxDelay
|
|
118
|
+
* sessionRecoveryTimeout
|
|
119
|
+
* stalledTimeout
|
|
120
|
+
* reconnectTimeout
|
|
121
|
+
* slowingEnabled
|
|
122
|
+
* serverInstanceAddressIgnored
|
|
123
|
+
* cookieHandlingRequired
|
|
124
|
+
* proxy
|
|
110
125
|
* serverInstanceAddress
|
|
111
126
|
* serverSocketName
|
|
112
127
|
* clientIp
|
|
113
128
|
* sessionId
|
|
114
|
-
*
|
|
129
|
+
* realMaxBandwidth
|
|
115
130
|
* idleTimeout
|
|
116
131
|
* keepaliveInterval
|
|
117
|
-
* requestedMaxBandwidth
|
|
118
|
-
* realMaxBandwidth
|
|
119
132
|
* pollingInterval
|
|
120
|
-
* reconnectTimeout
|
|
121
|
-
* stalledTimeout
|
|
122
|
-
* retryDelay
|
|
123
|
-
* firstRetryMaxDelay
|
|
124
|
-
* slowingEnabled
|
|
125
|
-
* forcedTransport
|
|
126
|
-
* serverInstanceAddressIgnored
|
|
127
|
-
* reverseHeartbeatInterval
|
|
128
|
-
* earlyWSOpenEnabled
|
|
129
|
-
* httpExtraHeaders
|
|
130
|
-
* httpExtraHeadersOnSessionCreationOnly
|
|
131
133
|
|
|
132
134
|
.. seealso:: :attr:`.LightstreamerClient.connectionDetails`
|
|
133
135
|
.. seealso:: :attr:`.LightstreamerClient.connectionOptions`
|
|
@@ -254,6 +256,7 @@ class SubscriptionListener:
|
|
|
254
256
|
* 28 - unfiltered dispatching is not allowed by the current license terms (for special licenses only)
|
|
255
257
|
* 29 - RAW mode is not allowed by the current license terms (for special licenses only)
|
|
256
258
|
* 30 - subscriptions are not allowed by the current license terms (for special licenses only)
|
|
259
|
+
* 61 - there was an error in the parsing of the server response
|
|
257
260
|
* 66 - an unexpected exception was thrown by the Metadata Adapter while authorizing the connection
|
|
258
261
|
* 68 - the Server could not fulfill the request because of an internal error.
|
|
259
262
|
* <= 0 - the Metadata Adapter has refused the subscription or unsubscription request; the code value is dependent on the specific Metadata Adapter implementation
|