Python service for convenient work with uCaller API
Project description
pyucallerapi - Python service for convenient work with uCaller API
Documentation uCaller api: DOC
Установка
Пользуем pip:
pip install pyucallerapi
Зависимости
python>=3.10
requests
pydantic>=2.9.2
Как использовать
Все названия методов соответствуют action в ссылке (смотрите документацию). Пример названия метода:
- /v1.0/initCall/ -
init_сall
Варианты импорта Вы можете импортировать
UCallerAPI - с всеми доступными методами
SettingAPI - только методы для работы с аккаунтом
CallAPI - только запросы кода авторизации
Так же прошу вас обратить внимание на аннотацию типов аргументов
Если вам нужно чтобы ответ был в dict - то при инициализации укажите аргумент return_dict = True
api = UCallerAPI(service_id=service_id,key=key, return_dict=True)
# Либо
api = UCallerAPI(service_id=service_id,key=key,)
api.return_dict = True
Example
Использование сервиса
import logging
from pyucallerapi import APIUCaller, CallAPI, SettingAPI
logger = logging.getLogger(__name__)
logging.basicConfig(filename='example.log', encoding='utf-8', level=logging.DEBUG)
service_id = <int>
key = ""
# запрашиваем звонок
api = APIUCaller(
service_id=service_id,
key=key,
logger=logger
)
# Проверка работоспособности сервиса -> HealthModel | ErrorResponseModel
api.health()
# Запрос на авторизацию -> InitCallModel | ErrorResponseModel
out = api.init_call("+79000000001", "6123",)
# получить информацию о запросе авторизации
api.get_info(out.ucaller_id)
Получение данных webhook (например, из FastAPI)
from fastapi import APIRouter, Request
from pyucallerapi import UcallerWebhookModel
router = APIRouter()
@router.post("/ucaller-webhook")
async def handle_webhook(request: Request):
data = await request.json()
webhook = UcallerWebhookRequest(**data) # Валидация
if webhook.isMnp:
print(f"Номер портирован от {webhook.operatorName} к {webhook.operatorNameMnp}")
return {"status": "ok"}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyucallerapi-0.1.1.tar.gz
(13.8 kB
view details)
File details
Details for the file pyucallerapi-0.1.1.tar.gz.
File metadata
- Download URL: pyucallerapi-0.1.1.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
005253aa447c54391e0a7be86f5ffacc84c15bf0f35f642e1e2d98321d77d807
|
|
| MD5 |
78c4109dacd561b98d6b2bcadb9aadcd
|
|
| BLAKE2b-256 |
d004b52558d60c1373514958ac5eee224aecc385fab111a9cf5d54834cecc561
|