Інтеграція Asterisk/FreePBX з AI для обробки дзвінків

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Інтеграція Asterisk/FreePBX з AI для обробки дзвінків
Середній
від 1 тижня до 3 місяців
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1196
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Інтеграція Asterisk/FreePBX з AI для обробки дзвінків Asterisk - open-source АТС з величезною екосистемою. Інтеграція з AI дозволяє додати розпізнавання мови та синтез до існуючої телефонної інфраструктури без заміни всієї платформи. Популярний вибір для on-premise розгортання. ### Методи інтеграції Asterisk + AI AGI (Asterisk Gateway Interface) — скрипт запускається при вхідному дзвінку:```python

agi_bot.py - AGI скрипт

import sys from asterisk.agi import AGI

agi = AGI() agi.answer() agi.set_variable("CHANNEL(audioreadformat)", "slin16")

Запись аудио от пользователя

agi.record_file( "/tmp/user_audio", "wav", "#", # stop key 3000, # timeout ms 0, # offset True, # beep 3 # silence threshold )

STT + LLM + TTS в отдельном сервисе

import requests with open("/tmp/user_audio.wav", "rb") as f: stt_response = requests.post("http://ai-service/stt", files={"audio": f}) transcript = stt_response.json()["text"]

llm_response = requests.post("http://ai-service/chat", json={"text": transcript}) response_text = llm_response.json()["response"]

tts_response = requests.post("http://ai-service/tts", json={"text": response_text}) with open("/tmp/response.wav", "wb") as f: f.write(tts_response.content)

agi.stream_file("/tmp/response") **ARI (Asterisk REST Interface)** — потужніший підхід для real-time:python import asyncio import aiohttp from ari_client import ARIClient

async def handle_stasis(channel_id: str, ari: ARIClient): """Обработчик входящего звонка через ARI""" await ari.answer(channel_id)

# Создаём снэпшот аудио канала
await ari.channel.record(
    channelId=channel_id,
    name=f"call_{channel_id}",
    format="wav",
    terminateOn="silence",
    maxSilenceSeconds=2
)

### Діалплан Asteriskini ; extensions.conf [ai-bot-context] exten => _X.,1,NoOp(Входящий звонок) same => n,Answer() same => n,AGI(agi://127.0.0.1/ai_bot) same => n,Hangup() ### FreePBX IVR через AGI FreePBX надає веб-інтерфейс для налаштування, а AGI додає AI-логіку:python

Заменяем стандартные IVR-пункты на AI-распознавание

вместо "нажмите 1" → "скажите что хотите"