Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ name = "pypi"

[packages]
websocket-client= "==1.9.0"
urllib3 = "==2.6.3"
urllib3 = "==2.8.0"
loguru = "==0.7.3"
idna = "==3.11"
anyio = "==4.12.1"
idna = "==3.15"
anyio = "==4.14.2"
certifi = "==2026.10.19"
exceptiongroup = "==1.3.1"
h11 = "==0.16.0"
h2 = "==4.3.0"
hpack = "==4.1.0"
h2 = "==4.4.1"
hpack = "==4.2.0"
httpcore = "==1.0.9"
hyperframe = "==6.1.0"
sniffio = "==1.3.1"
Expand All @@ -24,8 +24,10 @@ httpx = {extras = ["http2"], version = "==0.28.1"}
pre-commit = "4.5.1"
pylint = "4.0.4"
flake8 = "7.3.0"
pytest = "7.4.4"
pytest = "9.0.3"
pdoc3 = "0.11.6"
mako = "1.4.2"
virtualenv = "21.7.13"

[requires]
python_version = "3.13.0"
378 changes: 229 additions & 149 deletions Pipfile.lock

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Change Log
All notable changes to this project will be documented in this file.

## [0.4.2] - TBA
## [0.4.2] - 2026-10-21

### Added
- Support for new version 3.7.
Expand All @@ -19,7 +19,7 @@ All notable changes to this project will be documented in this file.
- New method in reports-api v3.7: report `campaigns_conversion`.

### Changed
- Udated python version from 3.8 to 3.13.0 (version 3.8 was unsupported since 2024-10-07).
- Updated python version from 3.8 to 3.13.0 (version 3.8 was unsupported since 2024-10-07).
- Updated urllib3 dependency to a version which fixes a potential vulnerability.
- Updated dependencies: websocket-client, certifi, exceptiongroup, h11, h2, hpack, httpcore, hyperframe.
- Config now points to v3.6 as a stable and 3.7 as a dev-preview version.
Expand All @@ -32,7 +32,7 @@ All notable changes to this project will be documented in this file.
### Removed
- Support for versions 3.3 and 3.4.
- Removed support for billing-api.
- Support `get_predicted_agent` in customer-api v3.7.
- Support for `get_predicted_agent` in customer-api v3.7.
- Support for `create_customer` method removed in agent-api v3.6 and later.
- Support for `incoming_customer` webhook removed in v3.6 and later.

Expand Down
5 changes: 0 additions & 5 deletions docs/agent/rtm/api/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,6 @@ <h1 class="title">Module <code>livechat.agent.rtm.api</code></h1>
<section>
<h2 class="section-title" id="header-submodules">Sub-modules</h2>
<dl>
<dt><code class="name"><a title="livechat.agent.rtm.api.v34" href="v34.html">livechat.agent.rtm.api.v34</a></code></dt>
<dd>
<div class="desc"><p>Module containing Agent RTM API client implementation for v3.4.</p></div>
</dd>
<dt><code class="name"><a title="livechat.agent.rtm.api.v35" href="v35.html">livechat.agent.rtm.api.v35</a></code></dt>
<dd>
<div class="desc"><p>Module containing Agent RTM API client implementation for v3.5.</p></div>
Expand Down Expand Up @@ -64,7 +60,6 @@ <h1>Index</h1>
</li>
<li><h3><a href="#header-submodules">Sub-modules</a></h3>
<ul>
<li><code><a title="livechat.agent.rtm.api.v34" href="v34.html">livechat.agent.rtm.api.v34</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35" href="v35.html">livechat.agent.rtm.api.v35</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v36" href="v36.html">livechat.agent.rtm.api.v36</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v37" href="v37.html">livechat.agent.rtm.api.v37</a></code></li>
Expand Down
4,234 changes: 0 additions & 4,234 deletions docs/agent/rtm/api/v34.html

This file was deleted.

169 changes: 1 addition & 168 deletions docs/agent/rtm/api/v35.html
Original file line number Diff line number Diff line change
Expand Up @@ -750,45 +750,6 @@ <h1 class="title">Module <code>livechat.agent.rtm.api.v35</code></h1>
payload = prepare_payload(locals())
return self.ws.send({&#39;action&#39;: &#39;ban_customer&#39;, &#39;payload&#39;: payload})

def follow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Marks a customer as followed.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({&#39;action&#39;: &#39;follow_customer&#39;, &#39;payload&#39;: payload})

def unfollow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Removes the agent from the list of customer&#39;s followers.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({
&#39;action&#39;: &#39;unfollow_customer&#39;,
&#39;payload&#39;: payload
})

# Status

def login(self,
Expand Down Expand Up @@ -1041,7 +1002,7 @@ <h2 class="section-title" id="header-classes">Classes</h2>
<dl>
<dt id="livechat.agent.rtm.api.v35.AgentRtmV35"><code class="flex name class">
<span>class <span class="ident">AgentRtmV35</span></span>
<span>(</span><span>url: str, header: Union[list, dict, Callable, None])</span>
<span>(</span><span>url: str, header: Union[list, dict, Callable, ForwardRef(None)])</span>
</code></dt>
<dd>
<div class="desc"><p>Agent RTM API Class containing methods in version 3.5.</p></div>
Expand Down Expand Up @@ -1761,45 +1722,6 @@ <h2 class="section-title" id="header-classes">Classes</h2>
payload = prepare_payload(locals())
return self.ws.send({&#39;action&#39;: &#39;ban_customer&#39;, &#39;payload&#39;: payload})

def follow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Marks a customer as followed.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({&#39;action&#39;: &#39;follow_customer&#39;, &#39;payload&#39;: payload})

def unfollow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Removes the agent from the list of customer&#39;s followers.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({
&#39;action&#39;: &#39;unfollow_customer&#39;,
&#39;payload&#39;: payload
})

# Status

def login(self,
Expand Down Expand Up @@ -2526,48 +2448,6 @@ <h2 id="returns">Returns</h2>
return self.ws.send({&#39;action&#39;: &#39;follow_chat&#39;, &#39;payload&#39;: payload})</code></pre>
</details>
</dd>
<dt id="livechat.agent.rtm.api.v35.AgentRtmV35.follow_customer"><code class="name flex">
<span>def <span class="ident">follow_customer</span></span>(<span>self, id: str = None, payload: dict = None) ‑> livechat.utils.structures.RtmResponse</span>
</code></dt>
<dd>
<div class="desc"><p>Marks a customer as followed.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>id</code></strong> :&ensp;<code>str</code></dt>
<dd>ID of the Customer. UUID v4 format is required.</dd>
<dt><strong><code>payload</code></strong> :&ensp;<code>dict</code></dt>
<dd>Custom payload to be used as request's data.
It overrides all other parameters provided for the method.</dd>
</dl>
<h2 id="returns">Returns</h2>
<dl>
<dt><code>RtmResponse</code></dt>
<dd>RTM response structure (<code>request_id</code>, <code>action</code>,
<code>type</code>, <code>success</code> and <code>payload</code> properties)</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def follow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Marks a customer as followed.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({&#39;action&#39;: &#39;follow_customer&#39;, &#39;payload&#39;: payload})</code></pre>
</details>
</dd>
<dt id="livechat.agent.rtm.api.v35.AgentRtmV35.get_chat"><code class="name flex">
<span>def <span class="ident">get_chat</span></span>(<span>self, chat_id: str = None, thread_id: str = None, payload: dict = None) ‑> livechat.utils.structures.RtmResponse</span>
</code></dt>
Expand Down Expand Up @@ -3844,51 +3724,6 @@ <h2 id="returns">Returns</h2>
return self.ws.send({&#39;action&#39;: &#39;unfollow_chat&#39;, &#39;payload&#39;: payload})</code></pre>
</details>
</dd>
<dt id="livechat.agent.rtm.api.v35.AgentRtmV35.unfollow_customer"><code class="name flex">
<span>def <span class="ident">unfollow_customer</span></span>(<span>self, id: str = None, payload: dict = None) ‑> livechat.utils.structures.RtmResponse</span>
</code></dt>
<dd>
<div class="desc"><p>Removes the agent from the list of customer's followers.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>id</code></strong> :&ensp;<code>str</code></dt>
<dd>ID of the Customer. UUID v4 format is required.</dd>
<dt><strong><code>payload</code></strong> :&ensp;<code>dict</code></dt>
<dd>Custom payload to be used as request's data.
It overrides all other parameters provided for the method.</dd>
</dl>
<h2 id="returns">Returns</h2>
<dl>
<dt><code>RtmResponse</code></dt>
<dd>RTM response structure (<code>request_id</code>, <code>action</code>,
<code>type</code>, <code>success</code> and <code>payload</code> properties)</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def unfollow_customer(self,
id: str = None,
payload: dict = None) -&gt; RtmResponse:
&#39;&#39;&#39; Removes the agent from the list of customer&#39;s followers.

Args:
id (str): ID of the Customer. UUID v4 format is required.
payload (dict): Custom payload to be used as request&#39;s data.
It overrides all other parameters provided for the method.

Returns:
RtmResponse: RTM response structure (`request_id`, `action`,
`type`, `success` and `payload` properties)
&#39;&#39;&#39;
if payload is None:
payload = prepare_payload(locals())
return self.ws.send({
&#39;action&#39;: &#39;unfollow_customer&#39;,
&#39;payload&#39;: payload
})</code></pre>
</details>
</dd>
<dt id="livechat.agent.rtm.api.v35.AgentRtmV35.untag_thread"><code class="name flex">
<span>def <span class="ident">untag_thread</span></span>(<span>self, chat_id: str = None, thread_id: str = None, tag: str = None, payload: dict = None) ‑> livechat.utils.structures.RtmResponse</span>
</code></dt>
Expand Down Expand Up @@ -4189,7 +4024,6 @@ <h4><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35" href="#livechat.agen
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.delete_event_properties" href="#livechat.agent.rtm.api.v35.AgentRtmV35.delete_event_properties">delete_event_properties</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.delete_thread_properties" href="#livechat.agent.rtm.api.v35.AgentRtmV35.delete_thread_properties">delete_thread_properties</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.follow_chat" href="#livechat.agent.rtm.api.v35.AgentRtmV35.follow_chat">follow_chat</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.follow_customer" href="#livechat.agent.rtm.api.v35.AgentRtmV35.follow_customer">follow_customer</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.get_chat" href="#livechat.agent.rtm.api.v35.AgentRtmV35.get_chat">get_chat</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.get_customer" href="#livechat.agent.rtm.api.v35.AgentRtmV35.get_customer">get_customer</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.list_agents_for_transfer" href="#livechat.agent.rtm.api.v35.AgentRtmV35.list_agents_for_transfer">list_agents_for_transfer</a></code></li>
Expand All @@ -4214,7 +4048,6 @@ <h4><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35" href="#livechat.agen
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.tag_thread" href="#livechat.agent.rtm.api.v35.AgentRtmV35.tag_thread">tag_thread</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.transfer_chat" href="#livechat.agent.rtm.api.v35.AgentRtmV35.transfer_chat">transfer_chat</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.unfollow_chat" href="#livechat.agent.rtm.api.v35.AgentRtmV35.unfollow_chat">unfollow_chat</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.unfollow_customer" href="#livechat.agent.rtm.api.v35.AgentRtmV35.unfollow_customer">unfollow_customer</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.untag_thread" href="#livechat.agent.rtm.api.v35.AgentRtmV35.untag_thread">untag_thread</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.update_chat_properties" href="#livechat.agent.rtm.api.v35.AgentRtmV35.update_chat_properties">update_chat_properties</a></code></li>
<li><code><a title="livechat.agent.rtm.api.v35.AgentRtmV35.update_customer" href="#livechat.agent.rtm.api.v35.AgentRtmV35.update_customer">update_customer</a></code></li>
Expand Down
Loading
Loading