Metadata-Version: 2.4
Name: siri_question_answer
Version: 0.1.1
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Development Status :: 4 - Beta
Summary: Python bindings for the siri_question_awnser Rust crate
Keywords: siri,question,awnser
Author-email: Prince Merveil ONDONDA <prince.ondonda@hove.com>
Maintainer-email: Prince Merveil ONDONDA <prince.ondonda@hove.com>
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM

Here's an expanded README that accounts for broader SIRI capabilities:

```markdown
# SIRI Real-Time Data Consumer

A Python library for consuming multiple SIRI (Service Interface for Real-Time Information) data feeds, including:
- Estimated Timetables (available)
- Vehicle Monitoring (not available)
- Stop Monitoring (not available)
- Situation Exchange (SX) (not available)
- General Messages (not available)

Provides real-time updates from public transportation APIs using the SIRI standard. Part of the `siri_question_answer` ecosystem.

---

## Installation

```bash
pip install siri_question_answer
```

---

## Features

### Supported SIRI Services
| Consumer Class                 | Description                          |
|---------------------------------|--------------------------------------|
| `EstimatedTableConsumer`       | Estimated arrival/departure times    |
| `VehicleMonitoringConsumer`    | Real-time vehicle positions          |
| `StopMonitoringConsumer`       | Stop-centric arrival predictions     |
| `SituationExchangeConsumer`    | Service disruptions/alerts           |
| `GeneralMessageConsumer`       | Text-based service notifications     |

---

## Usage

### Basic Implementation
```python
from siri_question_answer import EstimatedTableConsumer

def on_message(message: str, _type: str, id: str) -> None:
    print(f"Id {id}")
    print(f"Type {_type}")
    print(f"Message {message}")

# Create a new EstimatedTableConsumer
consumer = EstimatedTableConsumer(url="https://api.ginko.voyage/Siri/Siri.do?apiKey=blabla")
consumer.listen_estimated_timetable(60, on_message)

# For demonstration - use any appropriate way to keep the program alive
import time
while True:
    time.sleep(1)
```

---



## Dependencies
- `requests` - HTTP communication
- `python-siri-question-awnser` - Core library
- Python 3.8+

---

## Support
For SIRI specification compliance issues, consult:  
[Official SIRI Documentation](https://www.siri.org.uk/)
``` 

Key changes from original:
1. Expanded scope to cover multiple SIRI services
2. Added consumer class reference table
3. Demonstrated multiple simultaneous consumers
4. Included security recommendations
5. Added XML processing guidance
6. Clarified callback function structure
7. Added advanced features section
