Skip to main content

UssdFlow

UssdFlow is a dynamic and robust Python library designed to simplify the creation, management, and serving of USSD menus. Integrating seamlessly with Africa's Talking USSD implementation and utilizing Redis for efficient caching, UssdFlow aims to provide developers with a powerful tool to build interactive and responsive USSD applications.

Key Features

  • Dynamic Menu Creation: Easily define and manage USSD menus with dynamic content and options.
  • Seamless Integration: Integrates directly with Africa's Talking USSD gateway for reliable and scalable USSD services.
  • Efficient Caching: Leverages Redis for high-performance caching, ensuring quick and efficient session management.
  • User Session Management: Handles user sessions effectively, tracking user progress through the USSD menus.
  • Flexible Configuration: Offers flexible configuration options to tailor the USSD experience to specific needs.
  • Error Handling: Robust error handling ensures smooth user interactions even when issues arise.

Installation To install UssdFlow, simply use pip:

pip install ussdflow

Getting Started

Here’s a quick example to get you started with UssdFlow:

from ussdflow import CacheManager, IngressData, USSDService

# Initialize the cache manager

cache_manager = CacheManager(cache_type="redis", host="localhost", port=6379)

# Initialize the USSD service

ussd_service = USSDService(
    menu_file_path="path/to/your/menu.json",
    cache_manager=cache_manager
)

# Sample USSD request

request = IngressData(
    session_id="1234",
    service_code="*123#",
    phone_number="254712345678",
    text=""
)

# Process the request

response = ussd_service.ingress(request)
print(response)

Contributing

We welcome contributions to UssdFlow! If you have suggestions, bug reports, or want to contribute code, please check our Contributing Guidelines.

License

UssdFlow is licensed under the MIT License. See the LICENSE file for more details.

By following this documentation, you should be able to integrate UssdFlow with Flask, FastAPI, and Django to create, manage, and serve USSD menus efficiently.

Metadata

Release files for ussdflow 0.1.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ussdflow 0.1.10
File Size Uploaded
ussdflow-0.1.10.tar.gz 8.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ussdflow 0.1.10
File Interpreter ABI Platform
ussdflow-0.1.10-py3-none-any.whl Python 3 none any Details

Total release size: 16.8 kB

Release files / ussdflow-0.1.10.tar.gz

Download URL ussdflow-0.1.10.tar.gz
Size 8.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2af3d867794550cb18127b03da769dc68cc7c622bf04551c62e24ae902894415
BLAKE2b-256 checksum
How to use checksums
6d4b083e2f3565c5cb40681f471fc8f37287dc81268457a1121e85638ed90183
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1024-azure

Release files / ussdflow-0.1.10-py3-none-any.whl

Download URL ussdflow-0.1.10-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1a71e4d664385ba09ef53d9287130bd095cfd042f40739b83a436b1a827c2ea
BLAKE2b-256 checksum
How to use checksums
b78b3ba1ce439c5aadaf4a570dd81e6b3542db6931ef27275235090b5b55be73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1024-azure

Release history Release notifications | RSS feed

This release

0.1.10 This release

2 release files

0.1.9

2 release files

0.1.6

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page