Metadata-Version: 2.4
Name: heyno-enterprise
Version: 0.1.19
Summary: Heyno enterprise on-prem relay — thin SIP forwarder + watchdog for client deployments.
Author-email: "HeyNo Inc." <ops@heyno.net>
License: Proprietary
License-File: LICENSE
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Communications :: Telephony
Requires-Python: >=3.10
Requires-Dist: anyio<5,>=4
Requires-Dist: click<9,>=8.1
Requires-Dist: httpx[http2]<1,>=0.27
Requires-Dist: pydantic-settings<3,>=2.3
Requires-Dist: pydantic<3,>=2.7
Requires-Dist: structlog>=24
Requires-Dist: tenacity<10,>=8
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: rich<14,>=13; extra == 'dev'
Requires-Dist: ruff>=0.5; extra == 'dev'
Requires-Dist: twine>=5; extra == 'dev'
Provides-Extra: kcc
Requires-Dist: rich<14,>=13; extra == 'kcc'
Description-Content-Type: text/markdown

# heyno-enterprise

On-prem relay for Heyno enterprise client deployments.

The relay is a **thin SIP forwarder**: it accepts calls from the client's PBX and
hands them to ElevenLabs via SIP. No application logic, no knowledge base, no AI
runs on the client's box. All intelligence lives on Heyno's backend.

## Installation (KCC POC)

```bash
sudo pip install --break-system-packages \
  "heyno-enterprise[kcc] @ git+https://<DEPLOY_TOKEN>@github.com/HeyNo-INC/heyno-enterprise.git@v0.1.0"

sudo heyno-kcc init             # interactive — writes /etc/heyno/kcc.env
sudo heyno-kcc service install  # lays down Asterisk configs + watchdog systemd unit
heyno-kcc verify                # end-to-end checks
```

## What lives where

| Component                          | Location                          |
|------------------------------------|-----------------------------------|
| Asterisk PJSIP wizard configs      | `/etc/asterisk/{pjsip_wizard,extensions,ari,http,rtp}.conf` |
| Settings (secrets)                 | `/etc/heyno/kcc.env` (0600 root)  |
| Watchdog daemon                    | `systemctl status heyno-kcc-watchdog` |
| Watchdog logs                      | `journalctl -u heyno-kcc-watchdog -f` |

## Call flow

```
KCC user phone
  → KCC corporate PBX
  → Asterisk relay (this package, on KCC box)
  → ElevenLabs SIP trunk
  → Heyno Arabic agent (via Heyno init webhook)
  → audio back along the same path
```

## Uninstall

```bash
sudo heyno-kcc service uninstall
sudo pip uninstall heyno-enterprise
sudo rm -rf /etc/heyno
```

## Adding a new client

Copy `src/heyno_enterprise/clients/kcc` to `clients/<new>`, swap the per-client
defaults in `settings.py`, register a new `[project.scripts]` entry in
`pyproject.toml`, add an optional extras key.
