ultracart-rest-sdk 4.0.136__py3-none-any.whl → 4.0.138__py3-none-any.whl
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.
- ultracart/__init__.py +1 -1
- ultracart/api_client.py +1 -1
- ultracart/configuration.py +1 -1
- ultracart/model/conversation.py +6 -0
- ultracart/model/conversation_engagement.py +4 -0
- ultracart/model/conversation_sentiment.py +290 -0
- ultracart/model/conversation_summary.py +6 -0
- ultracart/models/__init__.py +1 -0
- {ultracart_rest_sdk-4.0.136.dist-info → ultracart_rest_sdk-4.0.138.dist-info}/METADATA +1 -1
- {ultracart_rest_sdk-4.0.136.dist-info → ultracart_rest_sdk-4.0.138.dist-info}/RECORD +13 -12
- {ultracart_rest_sdk-4.0.136.dist-info → ultracart_rest_sdk-4.0.138.dist-info}/LICENSE +0 -0
- {ultracart_rest_sdk-4.0.136.dist-info → ultracart_rest_sdk-4.0.138.dist-info}/WHEEL +0 -0
- {ultracart_rest_sdk-4.0.136.dist-info → ultracart_rest_sdk-4.0.138.dist-info}/top_level.txt +0 -0
ultracart/__init__.py
CHANGED
ultracart/api_client.py
CHANGED
|
@@ -77,7 +77,7 @@ class ApiClient(object):
|
|
|
77
77
|
self.default_headers[header_name] = header_value
|
|
78
78
|
self.cookie = cookie
|
|
79
79
|
# Set default User-Agent.
|
|
80
|
-
self.user_agent = 'OpenAPI-Generator/4.0.
|
|
80
|
+
self.user_agent = 'OpenAPI-Generator/4.0.138/python'
|
|
81
81
|
|
|
82
82
|
def __enter__(self):
|
|
83
83
|
return self
|
ultracart/configuration.py
CHANGED
|
@@ -422,7 +422,7 @@ conf = ultracart.Configuration(
|
|
|
422
422
|
"OS: {env}\n"\
|
|
423
423
|
"Python Version: {pyversion}\n"\
|
|
424
424
|
"Version of the API: 2.0.0\n"\
|
|
425
|
-
"SDK Package Version: 4.0.
|
|
425
|
+
"SDK Package Version: 4.0.138".\
|
|
426
426
|
format(env=sys.platform, pyversion=sys.version)
|
|
427
427
|
|
|
428
428
|
def get_host_settings(self):
|
ultracart/model/conversation.py
CHANGED
|
@@ -33,8 +33,10 @@ from ultracart.exceptions import ApiAttributeError
|
|
|
33
33
|
def lazy_import():
|
|
34
34
|
from ultracart.model.conversation_message import ConversationMessage
|
|
35
35
|
from ultracart.model.conversation_participant import ConversationParticipant
|
|
36
|
+
from ultracart.model.conversation_sentiment import ConversationSentiment
|
|
36
37
|
globals()['ConversationMessage'] = ConversationMessage
|
|
37
38
|
globals()['ConversationParticipant'] = ConversationParticipant
|
|
39
|
+
globals()['ConversationSentiment'] = ConversationSentiment
|
|
38
40
|
|
|
39
41
|
|
|
40
42
|
class Conversation(ModelNormal):
|
|
@@ -109,6 +111,7 @@ class Conversation(ModelNormal):
|
|
|
109
111
|
'message_count': (int,), # noqa: E501
|
|
110
112
|
'messages': ([ConversationMessage],), # noqa: E501
|
|
111
113
|
'participants': ([ConversationParticipant],), # noqa: E501
|
|
114
|
+
'sentiment': (ConversationSentiment,), # noqa: E501
|
|
112
115
|
'start_dts': (str,), # noqa: E501
|
|
113
116
|
'unread_messages': (bool,), # noqa: E501
|
|
114
117
|
'visible': (bool,), # noqa: E501
|
|
@@ -135,6 +138,7 @@ class Conversation(ModelNormal):
|
|
|
135
138
|
'message_count': 'message_count', # noqa: E501
|
|
136
139
|
'messages': 'messages', # noqa: E501
|
|
137
140
|
'participants': 'participants', # noqa: E501
|
|
141
|
+
'sentiment': 'sentiment', # noqa: E501
|
|
138
142
|
'start_dts': 'start_dts', # noqa: E501
|
|
139
143
|
'unread_messages': 'unread_messages', # noqa: E501
|
|
140
144
|
'visible': 'visible', # noqa: E501
|
|
@@ -196,6 +200,7 @@ class Conversation(ModelNormal):
|
|
|
196
200
|
message_count (int): [optional] # noqa: E501
|
|
197
201
|
messages ([ConversationMessage]): [optional] # noqa: E501
|
|
198
202
|
participants ([ConversationParticipant]): [optional] # noqa: E501
|
|
203
|
+
sentiment (ConversationSentiment): [optional] # noqa: E501
|
|
199
204
|
start_dts (str): Start of the conversation date/time. [optional] # noqa: E501
|
|
200
205
|
unread_messages (bool): [optional] # noqa: E501
|
|
201
206
|
visible (bool): [optional] # noqa: E501
|
|
@@ -299,6 +304,7 @@ class Conversation(ModelNormal):
|
|
|
299
304
|
message_count (int): [optional] # noqa: E501
|
|
300
305
|
messages ([ConversationMessage]): [optional] # noqa: E501
|
|
301
306
|
participants ([ConversationParticipant]): [optional] # noqa: E501
|
|
307
|
+
sentiment (ConversationSentiment): [optional] # noqa: E501
|
|
302
308
|
start_dts (str): Start of the conversation date/time. [optional] # noqa: E501
|
|
303
309
|
unread_messages (bool): [optional] # noqa: E501
|
|
304
310
|
visible (bool): [optional] # noqa: E501
|
|
@@ -96,6 +96,7 @@ class ConversationEngagement(ModelNormal):
|
|
|
96
96
|
'active': (bool,), # noqa: E501
|
|
97
97
|
'conversation_engagement_oid': (int,), # noqa: E501
|
|
98
98
|
'customer_greeting': (str,), # noqa: E501
|
|
99
|
+
'customer_initiated': (bool,), # noqa: E501
|
|
99
100
|
'department_oids': ([int],), # noqa: E501
|
|
100
101
|
'engagement_name': (str,), # noqa: E501
|
|
101
102
|
'equation': (ConversationEngagementEquation,), # noqa: E501
|
|
@@ -112,6 +113,7 @@ class ConversationEngagement(ModelNormal):
|
|
|
112
113
|
'active': 'active', # noqa: E501
|
|
113
114
|
'conversation_engagement_oid': 'conversation_engagement_oid', # noqa: E501
|
|
114
115
|
'customer_greeting': 'customer_greeting', # noqa: E501
|
|
116
|
+
'customer_initiated': 'customer_initiated', # noqa: E501
|
|
115
117
|
'department_oids': 'department_oids', # noqa: E501
|
|
116
118
|
'engagement_name': 'engagement_name', # noqa: E501
|
|
117
119
|
'equation': 'equation', # noqa: E501
|
|
@@ -163,6 +165,7 @@ class ConversationEngagement(ModelNormal):
|
|
|
163
165
|
active (bool): [optional] # noqa: E501
|
|
164
166
|
conversation_engagement_oid (int): [optional] # noqa: E501
|
|
165
167
|
customer_greeting (str): [optional] # noqa: E501
|
|
168
|
+
customer_initiated (bool): [optional] # noqa: E501
|
|
166
169
|
department_oids ([int]): [optional] # noqa: E501
|
|
167
170
|
engagement_name (str): [optional] # noqa: E501
|
|
168
171
|
equation (ConversationEngagementEquation): [optional] # noqa: E501
|
|
@@ -256,6 +259,7 @@ class ConversationEngagement(ModelNormal):
|
|
|
256
259
|
active (bool): [optional] # noqa: E501
|
|
257
260
|
conversation_engagement_oid (int): [optional] # noqa: E501
|
|
258
261
|
customer_greeting (str): [optional] # noqa: E501
|
|
262
|
+
customer_initiated (bool): [optional] # noqa: E501
|
|
259
263
|
department_oids ([int]): [optional] # noqa: E501
|
|
260
264
|
engagement_name (str): [optional] # noqa: E501
|
|
261
265
|
equation (ConversationEngagementEquation): [optional] # noqa: E501
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
"""
|
|
2
|
+
UltraCart Rest API V2
|
|
3
|
+
|
|
4
|
+
UltraCart REST API Version 2 # noqa: E501
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 2.0.0
|
|
7
|
+
Contact: support@ultracart.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
"""
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
import re # noqa: F401
|
|
13
|
+
import sys # noqa: F401
|
|
14
|
+
|
|
15
|
+
from ultracart.model_utils import ( # noqa: F401
|
|
16
|
+
ApiTypeError,
|
|
17
|
+
ModelComposed,
|
|
18
|
+
ModelNormal,
|
|
19
|
+
ModelSimple,
|
|
20
|
+
cached_property,
|
|
21
|
+
change_keys_js_to_python,
|
|
22
|
+
convert_js_args_to_python_args,
|
|
23
|
+
date,
|
|
24
|
+
datetime,
|
|
25
|
+
file_type,
|
|
26
|
+
none_type,
|
|
27
|
+
validate_get_composed_info,
|
|
28
|
+
OpenApiModel
|
|
29
|
+
)
|
|
30
|
+
from ultracart.exceptions import ApiAttributeError
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class ConversationSentiment(ModelNormal):
|
|
35
|
+
"""NOTE: This class is auto generated by OpenAPI Generator.
|
|
36
|
+
Ref: https://openapi-generator.tech
|
|
37
|
+
|
|
38
|
+
Do not edit the class manually.
|
|
39
|
+
|
|
40
|
+
Attributes:
|
|
41
|
+
allowed_values (dict): The key is the tuple path to the attribute
|
|
42
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
43
|
+
with a capitalized key describing the allowed value and an allowed
|
|
44
|
+
value. These dicts store the allowed enum values.
|
|
45
|
+
attribute_map (dict): The key is attribute name
|
|
46
|
+
and the value is json key in definition.
|
|
47
|
+
discriminator_value_class_map (dict): A dict to go from the discriminator
|
|
48
|
+
variable value to the discriminator class name.
|
|
49
|
+
validations (dict): The key is the tuple path to the attribute
|
|
50
|
+
and the for var_name this is (var_name,). The value is a dict
|
|
51
|
+
that stores validations for max_length, min_length, max_items,
|
|
52
|
+
min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
|
|
53
|
+
inclusive_minimum, and regex.
|
|
54
|
+
additional_properties_type (tuple): A tuple of classes accepted
|
|
55
|
+
as additional properties values.
|
|
56
|
+
"""
|
|
57
|
+
|
|
58
|
+
allowed_values = {
|
|
59
|
+
('sentiment',): {
|
|
60
|
+
'POSITIVE': "POSITIVE",
|
|
61
|
+
'NEUTRAL': "NEUTRAL",
|
|
62
|
+
'NEGATIVE': "NEGATIVE",
|
|
63
|
+
'MIXED': "MIXED",
|
|
64
|
+
},
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
validations = {
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@cached_property
|
|
71
|
+
def additional_properties_type():
|
|
72
|
+
"""
|
|
73
|
+
This must be a method because a model may have properties that are
|
|
74
|
+
of type self, this must run after the class is loaded
|
|
75
|
+
"""
|
|
76
|
+
return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
|
|
77
|
+
|
|
78
|
+
_nullable = False
|
|
79
|
+
|
|
80
|
+
@cached_property
|
|
81
|
+
def openapi_types():
|
|
82
|
+
"""
|
|
83
|
+
This must be a method because a model may have properties that are
|
|
84
|
+
of type self, this must run after the class is loaded
|
|
85
|
+
|
|
86
|
+
Returns
|
|
87
|
+
openapi_types (dict): The key is attribute name
|
|
88
|
+
and the value is attribute type.
|
|
89
|
+
"""
|
|
90
|
+
return {
|
|
91
|
+
'last_detect_sentiment': (str,), # noqa: E501
|
|
92
|
+
'mixed': (float,), # noqa: E501
|
|
93
|
+
'negative': (float,), # noqa: E501
|
|
94
|
+
'neutral': (float,), # noqa: E501
|
|
95
|
+
'positive': (float,), # noqa: E501
|
|
96
|
+
'sentiment': (str,), # noqa: E501
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@cached_property
|
|
100
|
+
def discriminator():
|
|
101
|
+
return None
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
attribute_map = {
|
|
105
|
+
'last_detect_sentiment': 'last_detect_sentiment', # noqa: E501
|
|
106
|
+
'mixed': 'mixed', # noqa: E501
|
|
107
|
+
'negative': 'negative', # noqa: E501
|
|
108
|
+
'neutral': 'neutral', # noqa: E501
|
|
109
|
+
'positive': 'positive', # noqa: E501
|
|
110
|
+
'sentiment': 'sentiment', # noqa: E501
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
read_only_vars = {
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
_composed_schemas = {}
|
|
117
|
+
|
|
118
|
+
@classmethod
|
|
119
|
+
@convert_js_args_to_python_args
|
|
120
|
+
def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
|
|
121
|
+
"""ConversationSentiment - a model defined in OpenAPI
|
|
122
|
+
|
|
123
|
+
Keyword Args:
|
|
124
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
125
|
+
will be type checked and a TypeError will be
|
|
126
|
+
raised if the wrong type is input.
|
|
127
|
+
Defaults to True
|
|
128
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
129
|
+
drill down to the model in received_data
|
|
130
|
+
when deserializing a response
|
|
131
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
132
|
+
are serialized names, as specified in the OpenAPI document.
|
|
133
|
+
False if the variable names in the input data
|
|
134
|
+
are pythonic names, e.g. snake case (default)
|
|
135
|
+
_configuration (Configuration): the instance to use when
|
|
136
|
+
deserializing a file_type parameter.
|
|
137
|
+
If passed, type conversion is attempted
|
|
138
|
+
If omitted no type conversion is done.
|
|
139
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
140
|
+
classes that we have traveled through so that
|
|
141
|
+
if we see that class again we will not use its
|
|
142
|
+
discriminator again.
|
|
143
|
+
When traveling through a discriminator, the
|
|
144
|
+
composed schema that is
|
|
145
|
+
is traveled through is added to this set.
|
|
146
|
+
For example if Animal has a discriminator
|
|
147
|
+
petType and we pass in "Dog", and the class Dog
|
|
148
|
+
allOf includes Animal, we move through Animal
|
|
149
|
+
once using the discriminator, and pick Dog.
|
|
150
|
+
Then in Dog, we will make an instance of the
|
|
151
|
+
Animal class but this time we won't travel
|
|
152
|
+
through its discriminator because we passed in
|
|
153
|
+
_visited_composed_classes = (Animal,)
|
|
154
|
+
last_detect_sentiment (str): The last time the detect sentiment was run on this conversation. [optional] # noqa: E501
|
|
155
|
+
mixed (float): The mixed score. [optional] # noqa: E501
|
|
156
|
+
negative (float): The negative score. [optional] # noqa: E501
|
|
157
|
+
neutral (float): The neutral score. [optional] # noqa: E501
|
|
158
|
+
positive (float): The positive score. [optional] # noqa: E501
|
|
159
|
+
sentiment (str): The overall sentiment. [optional] # noqa: E501
|
|
160
|
+
"""
|
|
161
|
+
|
|
162
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
163
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', True)
|
|
164
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
165
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
166
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
167
|
+
|
|
168
|
+
self = super(OpenApiModel, cls).__new__(cls)
|
|
169
|
+
|
|
170
|
+
if args:
|
|
171
|
+
for arg in args:
|
|
172
|
+
if isinstance(arg, dict):
|
|
173
|
+
kwargs.update(arg)
|
|
174
|
+
else:
|
|
175
|
+
raise ApiTypeError(
|
|
176
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
177
|
+
args,
|
|
178
|
+
self.__class__.__name__,
|
|
179
|
+
),
|
|
180
|
+
path_to_item=_path_to_item,
|
|
181
|
+
valid_classes=(self.__class__,),
|
|
182
|
+
)
|
|
183
|
+
|
|
184
|
+
self._data_store = {}
|
|
185
|
+
self._check_type = _check_type
|
|
186
|
+
self._spec_property_naming = _spec_property_naming
|
|
187
|
+
self._path_to_item = _path_to_item
|
|
188
|
+
self._configuration = _configuration
|
|
189
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
190
|
+
|
|
191
|
+
for var_name, var_value in kwargs.items():
|
|
192
|
+
if var_name not in self.attribute_map and \
|
|
193
|
+
self._configuration is not None and \
|
|
194
|
+
self._configuration.discard_unknown_keys and \
|
|
195
|
+
self.additional_properties_type is None:
|
|
196
|
+
# discard variable.
|
|
197
|
+
continue
|
|
198
|
+
setattr(self, var_name, var_value)
|
|
199
|
+
return self
|
|
200
|
+
|
|
201
|
+
required_properties = set([
|
|
202
|
+
'_data_store',
|
|
203
|
+
'_check_type',
|
|
204
|
+
'_spec_property_naming',
|
|
205
|
+
'_path_to_item',
|
|
206
|
+
'_configuration',
|
|
207
|
+
'_visited_composed_classes',
|
|
208
|
+
])
|
|
209
|
+
|
|
210
|
+
@convert_js_args_to_python_args
|
|
211
|
+
def __init__(self, *args, **kwargs): # noqa: E501
|
|
212
|
+
"""ConversationSentiment - a model defined in OpenAPI
|
|
213
|
+
|
|
214
|
+
Keyword Args:
|
|
215
|
+
_check_type (bool): if True, values for parameters in openapi_types
|
|
216
|
+
will be type checked and a TypeError will be
|
|
217
|
+
raised if the wrong type is input.
|
|
218
|
+
Defaults to True
|
|
219
|
+
_path_to_item (tuple/list): This is a list of keys or values to
|
|
220
|
+
drill down to the model in received_data
|
|
221
|
+
when deserializing a response
|
|
222
|
+
_spec_property_naming (bool): True if the variable names in the input data
|
|
223
|
+
are serialized names, as specified in the OpenAPI document.
|
|
224
|
+
False if the variable names in the input data
|
|
225
|
+
are pythonic names, e.g. snake case (default)
|
|
226
|
+
_configuration (Configuration): the instance to use when
|
|
227
|
+
deserializing a file_type parameter.
|
|
228
|
+
If passed, type conversion is attempted
|
|
229
|
+
If omitted no type conversion is done.
|
|
230
|
+
_visited_composed_classes (tuple): This stores a tuple of
|
|
231
|
+
classes that we have traveled through so that
|
|
232
|
+
if we see that class again we will not use its
|
|
233
|
+
discriminator again.
|
|
234
|
+
When traveling through a discriminator, the
|
|
235
|
+
composed schema that is
|
|
236
|
+
is traveled through is added to this set.
|
|
237
|
+
For example if Animal has a discriminator
|
|
238
|
+
petType and we pass in "Dog", and the class Dog
|
|
239
|
+
allOf includes Animal, we move through Animal
|
|
240
|
+
once using the discriminator, and pick Dog.
|
|
241
|
+
Then in Dog, we will make an instance of the
|
|
242
|
+
Animal class but this time we won't travel
|
|
243
|
+
through its discriminator because we passed in
|
|
244
|
+
_visited_composed_classes = (Animal,)
|
|
245
|
+
last_detect_sentiment (str): The last time the detect sentiment was run on this conversation. [optional] # noqa: E501
|
|
246
|
+
mixed (float): The mixed score. [optional] # noqa: E501
|
|
247
|
+
negative (float): The negative score. [optional] # noqa: E501
|
|
248
|
+
neutral (float): The neutral score. [optional] # noqa: E501
|
|
249
|
+
positive (float): The positive score. [optional] # noqa: E501
|
|
250
|
+
sentiment (str): The overall sentiment. [optional] # noqa: E501
|
|
251
|
+
"""
|
|
252
|
+
|
|
253
|
+
_check_type = kwargs.pop('_check_type', True)
|
|
254
|
+
_spec_property_naming = kwargs.pop('_spec_property_naming', False)
|
|
255
|
+
_path_to_item = kwargs.pop('_path_to_item', ())
|
|
256
|
+
_configuration = kwargs.pop('_configuration', None)
|
|
257
|
+
_visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
|
|
258
|
+
|
|
259
|
+
if args:
|
|
260
|
+
for arg in args:
|
|
261
|
+
if isinstance(arg, dict):
|
|
262
|
+
kwargs.update(arg)
|
|
263
|
+
else:
|
|
264
|
+
raise ApiTypeError(
|
|
265
|
+
"Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
|
|
266
|
+
args,
|
|
267
|
+
self.__class__.__name__,
|
|
268
|
+
),
|
|
269
|
+
path_to_item=_path_to_item,
|
|
270
|
+
valid_classes=(self.__class__,),
|
|
271
|
+
)
|
|
272
|
+
|
|
273
|
+
self._data_store = {}
|
|
274
|
+
self._check_type = _check_type
|
|
275
|
+
self._spec_property_naming = _spec_property_naming
|
|
276
|
+
self._path_to_item = _path_to_item
|
|
277
|
+
self._configuration = _configuration
|
|
278
|
+
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
|
|
279
|
+
|
|
280
|
+
for var_name, var_value in kwargs.items():
|
|
281
|
+
if var_name not in self.attribute_map and \
|
|
282
|
+
self._configuration is not None and \
|
|
283
|
+
self._configuration.discard_unknown_keys and \
|
|
284
|
+
self.additional_properties_type is None:
|
|
285
|
+
# discard variable.
|
|
286
|
+
continue
|
|
287
|
+
setattr(self, var_name, var_value)
|
|
288
|
+
if var_name in self.read_only_vars:
|
|
289
|
+
raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
|
|
290
|
+
f"class with read only attributes.")
|
|
@@ -32,7 +32,9 @@ from ultracart.exceptions import ApiAttributeError
|
|
|
32
32
|
|
|
33
33
|
def lazy_import():
|
|
34
34
|
from ultracart.model.conversation_participant import ConversationParticipant
|
|
35
|
+
from ultracart.model.conversation_sentiment import ConversationSentiment
|
|
35
36
|
globals()['ConversationParticipant'] = ConversationParticipant
|
|
37
|
+
globals()['ConversationSentiment'] = ConversationSentiment
|
|
36
38
|
|
|
37
39
|
|
|
38
40
|
class ConversationSummary(ModelNormal):
|
|
@@ -105,6 +107,7 @@ class ConversationSummary(ModelNormal):
|
|
|
105
107
|
'merchant_id': (str,), # noqa: E501
|
|
106
108
|
'message_count': (int,), # noqa: E501
|
|
107
109
|
'participants': ([ConversationParticipant],), # noqa: E501
|
|
110
|
+
'sentiment': (ConversationSentiment,), # noqa: E501
|
|
108
111
|
'start_dts': (str,), # noqa: E501
|
|
109
112
|
'unread_messages': (bool,), # noqa: E501
|
|
110
113
|
'visible': (bool,), # noqa: E501
|
|
@@ -129,6 +132,7 @@ class ConversationSummary(ModelNormal):
|
|
|
129
132
|
'merchant_id': 'merchant_id', # noqa: E501
|
|
130
133
|
'message_count': 'message_count', # noqa: E501
|
|
131
134
|
'participants': 'participants', # noqa: E501
|
|
135
|
+
'sentiment': 'sentiment', # noqa: E501
|
|
132
136
|
'start_dts': 'start_dts', # noqa: E501
|
|
133
137
|
'unread_messages': 'unread_messages', # noqa: E501
|
|
134
138
|
'visible': 'visible', # noqa: E501
|
|
@@ -188,6 +192,7 @@ class ConversationSummary(ModelNormal):
|
|
|
188
192
|
merchant_id (str): [optional] # noqa: E501
|
|
189
193
|
message_count (int): [optional] # noqa: E501
|
|
190
194
|
participants ([ConversationParticipant]): [optional] # noqa: E501
|
|
195
|
+
sentiment (ConversationSentiment): [optional] # noqa: E501
|
|
191
196
|
start_dts (str): Start of the conversation date/time. [optional] # noqa: E501
|
|
192
197
|
unread_messages (bool): [optional] # noqa: E501
|
|
193
198
|
visible (bool): [optional] # noqa: E501
|
|
@@ -289,6 +294,7 @@ class ConversationSummary(ModelNormal):
|
|
|
289
294
|
merchant_id (str): [optional] # noqa: E501
|
|
290
295
|
message_count (int): [optional] # noqa: E501
|
|
291
296
|
participants ([ConversationParticipant]): [optional] # noqa: E501
|
|
297
|
+
sentiment (ConversationSentiment): [optional] # noqa: E501
|
|
292
298
|
start_dts (str): Start of the conversation date/time. [optional] # noqa: E501
|
|
293
299
|
unread_messages (bool): [optional] # noqa: E501
|
|
294
300
|
visible (bool): [optional] # noqa: E501
|
ultracart/models/__init__.py
CHANGED
|
@@ -178,6 +178,7 @@ from ultracart.model.conversation_permissions_response import ConversationPermis
|
|
|
178
178
|
from ultracart.model.conversation_response import ConversationResponse
|
|
179
179
|
from ultracart.model.conversation_search_request import ConversationSearchRequest
|
|
180
180
|
from ultracart.model.conversation_search_response import ConversationSearchResponse
|
|
181
|
+
from ultracart.model.conversation_sentiment import ConversationSentiment
|
|
181
182
|
from ultracart.model.conversation_start_request import ConversationStartRequest
|
|
182
183
|
from ultracart.model.conversation_start_response import ConversationStartResponse
|
|
183
184
|
from ultracart.model.conversation_summary import ConversationSummary
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
ultracart/__init__.py,sha256=
|
|
2
|
-
ultracart/api_client.py,sha256=
|
|
3
|
-
ultracart/configuration.py,sha256=
|
|
1
|
+
ultracart/__init__.py,sha256=UeOHgyxL4CqPtCyWYhRZLiFSrysCwIF8EUJjUdgj620,699
|
|
2
|
+
ultracart/api_client.py,sha256=_bEZsqNbmp4IAtUcuUx88qD45r9Od9dSwKs-WwQPujk,39072
|
|
3
|
+
ultracart/configuration.py,sha256=qlm1yQsOcbyFacqlUEC7ruErmA_ECr6goMnqtDJgh88,17842
|
|
4
4
|
ultracart/exceptions.py,sha256=dwRtrWJsW4H_jKk3B1w2chykcQ7E2FSlhftUByD9e9E,5069
|
|
5
5
|
ultracart/model_utils.py,sha256=X_RAfA-TlvDKBICnIve7PPVDM34Nl58aV1bqCrVmoTo,82574
|
|
6
6
|
ultracart/rest.py,sha256=2lM6zwrjGp_SjkddamoKdpk3jFuc8Ow7fKIXRdKNp24,14268
|
|
@@ -149,7 +149,7 @@ ultracart/model/checkout_setup_browser_key_request.py,sha256=v5vJkF5PA10Qt4tlRB0
|
|
|
149
149
|
ultracart/model/checkout_setup_browser_key_response.py,sha256=HHkfgHDcOps7jAp8RBKO78kHpCEuhLQP1nIq_sr6mmc,11633
|
|
150
150
|
ultracart/model/checkout_state_province_response.py,sha256=QD6yupUWG_6ocSN83krfw7-eaN0YzxtLvatnUuci10Y,11698
|
|
151
151
|
ultracart/model/city_state_zip.py,sha256=goGnlh4nzcsV1p8iNeFm4y6LP2TrtHIVjBPrHCDNBas,12129
|
|
152
|
-
ultracart/model/conversation.py,sha256=
|
|
152
|
+
ultracart/model/conversation.py,sha256=GzwEq5ZCV02WfWPE7zyJvbZz-MX1KIdBxij-zelOfYc,17213
|
|
153
153
|
ultracart/model/conversation_agent_auth.py,sha256=ke4hV8nHawpdbCThDZQemlvTNGFx1vApPCC-kVJZvsk,12970
|
|
154
154
|
ultracart/model/conversation_agent_auth_response.py,sha256=boVaC_JNOUGPlmxX2E-QdQWFLAJMS8GC4OWMRYaCjNM,12906
|
|
155
155
|
ultracart/model/conversation_agent_profile.py,sha256=vqIOHdbPLr3tgNMwe_Ufx_disp3Q_80aOStSZSXwAEQ,13813
|
|
@@ -166,7 +166,7 @@ ultracart/model/conversation_department_member.py,sha256=iIZcXmio5-5jFXGxCBUg8GW
|
|
|
166
166
|
ultracart/model/conversation_department_members_response.py,sha256=oOkJHrPPFpBZhLTYp-32WiTRPQ-5v0ytG4tScoJeNFk,13090
|
|
167
167
|
ultracart/model/conversation_department_response.py,sha256=uV8qhqycI5ql5F4RXi0bjqT5E2E3jVZ2HfNL5BJZW4w,12980
|
|
168
168
|
ultracart/model/conversation_departments_response.py,sha256=7YghxyQKhDNgiBlzMpQtFz3D9QyyS3xIYhFNRb3ohrg,12994
|
|
169
|
-
ultracart/model/conversation_engagement.py,sha256=
|
|
169
|
+
ultracart/model/conversation_engagement.py,sha256=PRXonQ-0z46uqGJjZptsb__2-tiw4gGhjw64Cf5bJ_I,13829
|
|
170
170
|
ultracart/model/conversation_engagement_equation.py,sha256=P2_gPSOIU5l0ACFugvf8KfrTMHPCRhHSYd5QadnPXAE,11813
|
|
171
171
|
ultracart/model/conversation_engagement_equation_function.py,sha256=MivF3PoQFdPJc_1Qbvx0UhwHblsNE1doy2X_uHeGgPg,17501
|
|
172
172
|
ultracart/model/conversation_engagement_equation_group.py,sha256=U5On1tFVykoRXu7xvsmuHjSf7KJbb_1H0ifa9XUFV6k,11864
|
|
@@ -195,9 +195,10 @@ ultracart/model/conversation_permissions_response.py,sha256=WDLHPVHpGxn52LTF5T6Q
|
|
|
195
195
|
ultracart/model/conversation_response.py,sha256=nP_Ng_8fY_xkH28C58vY3H9C1FDIpVATSPSzsag9g2g,12824
|
|
196
196
|
ultracart/model/conversation_search_request.py,sha256=VMcr9FoykkjETsaGzPoC7Y9Muoop1E-Y1R-r7cLOVEY,14007
|
|
197
197
|
ultracart/model/conversation_search_response.py,sha256=r2C8RXvwnAjpkMpIc2ZexGRhDuZnACpIGZwUvxPHU04,12291
|
|
198
|
+
ultracart/model/conversation_sentiment.py,sha256=XVzHy5urJSo6t-h81cFOwDzhA4Vsdg2Ne2RHtP9G0Sc,12997
|
|
198
199
|
ultracart/model/conversation_start_request.py,sha256=mbZl9q9T0UlZ3ovD95PWvip2B9UtZVn8EuJ2VIvpLWU,12123
|
|
199
200
|
ultracart/model/conversation_start_response.py,sha256=cdedcO74YbVZ9U32304E1HydJ8BTskfVBCaTcAH-mp0,11658
|
|
200
|
-
ultracart/model/conversation_summary.py,sha256=
|
|
201
|
+
ultracart/model/conversation_summary.py,sha256=0i8GstJNBSy6uItPgsIXA02V2zehOpUhjAl7qK4oPvg,16418
|
|
201
202
|
ultracart/model/conversation_twilio_account.py,sha256=E-UV15UQjZJwQDfG_9qggZjoSDSP72YnXu8LyE7q-TQ,11723
|
|
202
203
|
ultracart/model/conversation_webchat_context.py,sha256=_DgYNiy2WOVMcEuM9Un-aLqRuWUstG0IC3BLnFmYtCk,13789
|
|
203
204
|
ultracart/model/conversation_webchat_queue_status.py,sha256=s2o5xhzatNYdo6jWwjDl76rzjbgRLJcU-qr9BoPB3Zg,16005
|
|
@@ -765,9 +766,9 @@ ultracart/model/webhook_sample_request.py,sha256=Qvt7FJPvECdYKv5MZztkSSmDxPDTSyt
|
|
|
765
766
|
ultracart/model/webhook_sample_request_response.py,sha256=Ni-3WiNhVLt9a7yX_MNdD16NsRehVpJWiTdN_myLRk4,12956
|
|
766
767
|
ultracart/model/webhooks_response.py,sha256=RVGQ76kc7X0XY5iJdLgnwVr5V50uCoYCGaRtc03FKc4,12763
|
|
767
768
|
ultracart/model/weight.py,sha256=LTxs6KqiARegRkcShAviWKILAMAdw9KXwI-QgBtpoM0,11726
|
|
768
|
-
ultracart/models/__init__.py,sha256=
|
|
769
|
-
ultracart_rest_sdk-4.0.
|
|
770
|
-
ultracart_rest_sdk-4.0.
|
|
771
|
-
ultracart_rest_sdk-4.0.
|
|
772
|
-
ultracart_rest_sdk-4.0.
|
|
773
|
-
ultracart_rest_sdk-4.0.
|
|
769
|
+
ultracart/models/__init__.py,sha256=sDCh5kEXCKO0Wj6ljv8ZYbfG8PSPI-Uz1ppGTCKOm1o,56449
|
|
770
|
+
ultracart_rest_sdk-4.0.138.dist-info/LICENSE,sha256=4DukHX-rIHAHaf5BGLq1DYAMt0-ZA1OgXS9f_xwig2M,11558
|
|
771
|
+
ultracart_rest_sdk-4.0.138.dist-info/METADATA,sha256=ee854QEtVqPFjG0aDIKyfvP3HK2-j05EfZ3YcDxxiHg,403
|
|
772
|
+
ultracart_rest_sdk-4.0.138.dist-info/WHEEL,sha256=OqRkF0eY5GHssMorFjlbTIq072vpHpF60fIQA6lS9xA,92
|
|
773
|
+
ultracart_rest_sdk-4.0.138.dist-info/top_level.txt,sha256=90IoRqV6KX58jTyx9MwEBqh4j38_10hWrrvqsmXWZYo,10
|
|
774
|
+
ultracart_rest_sdk-4.0.138.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|