Hopeit Apps Client Plugin
Project description
# hopeit.engine apps-client plugin
This library is part of hopeit.engine:
> check: https://github.com/hopeit-git/hopeit.engine
### Install using hopeit.engine extras [apps-client]:
```
pip install hopeit.engine[apps-client]
```
### Config app_connection section in your app to use this client implementation:
Configre a connection in `app_connections` section and specify which events to invoke
inside `event.connections` section:
```
...
"app_connections": {
"target-app-conn": {
"name": "target-app",
"version": "1.0",
"client": "hopeit.apps_client.AppsClient"
}
},
...
"events": {
"my-event": {
...
"connections": [
{
"app_connection": "target-app-conn",
"event": "target-event",
"type": "GET"
}
],
...
}
}
```
To configure `apps-client` add a settings section like this to app config file:
```
...
"settings": {
"simple_example_conn": {
"connection_str": "http://host1,http://host2"
}
}
```
The only required setting is `connection_str` but many other values can be configured:
```
...
"settings": {
"simple_example_conn": {
"connection_str": "${HOPEIT_SIMPLE_EXAMPLE_HOSTS}",
"circuit_breaker_open_failures": 10,
"circuit_breaker_failure_reset_seconds": 90.0,
"circuit_breaker_open_seconds": 60.0,
"retries": 2,
"retry_backoff_ms": 10,
"ssl": true,
"max_connections": 100,
"max_connections_per_host": 0,
"dns_cache_ttl": 10,
"routes_override": {
"__list-somethings": "simple-example/${HOPEIT_APPS_ROUTE_VERSION}/list-somethings"
}
}
}
```
### Usage
Invoking target-app target-event from your application code:
```
from hopeit.app.client import app_call
...
def my_event(payload: ..., context: EventContext) -> ...:
response = await app_call(
"target-app-conn", event="target-event",
datatype=ResposeDataType, payload=..., context=context
)
...
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file hopeit_apps_client-0.25.2.tar.gz
.
File metadata
- Download URL: hopeit_apps_client-0.25.2.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac312680b6c865c81d88d7747d7999d1c0634be7edf6419b032328361aebd58f |
|
MD5 | 4ff90ba2ec109c44b722f6cbc282a14f |
|
BLAKE2b-256 | dd1178a8be152d7f8d3724813af553f540948f15e91ae5083aadcb96d8960d9e |
File details
Details for the file hopeit.apps_client-0.25.2-py3-none-any.whl
.
File metadata
- Download URL: hopeit.apps_client-0.25.2-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5616e4e2ef2c972a75709af4b79c514403411e3ca0bbb7419374a20141eeeb1c |
|
MD5 | 979aaaa31171fe24b29823df983399b8 |
|
BLAKE2b-256 | 2fe5333389802c50a69e22ba80b3d640e331590a08c31bec1828aaa1ee0a2837 |