Javis OS
Javis OS는 기업가를 돕는 에이전시 AI로, 업무를 지원하고 함께 성장합니다
Open-source IP PBX & unified communications: Asterisk 22 web portal, WebRTC softphone, chat, fax, call center, Android & iOS apps — https://aipbx.bid
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Open-Source Enterprise IP PBX Management Portal & Unified Communications
Asterisk 22 · PHP 8 · MariaDB · WebRTC · Instant Messaging · Android & iOS Apps
Or clone manually and install the latest release:README 전문 보기 ↗# Recommended one-liner installation (installs the latest release)
curl -fsSL aipbx.bid/i | sudo bash
Or via direct GitHub raw URL:
# Alternative direct GitHub script
curl -fsSL https://raw.githubusercontent.com/mahirgul/AiPBX/main/install.sh | sudo bash
Or clone manually and install the latest release:
git clone https://github.com/mahirgul/AiPBX.git /opt/aipbx
cd /opt/aipbx
git checkout "$(git tag -l 'v*' --sort=-v:refname | head -1)"
sudo bash install.sh
The installer:
aipbx.local via mDNS/root/aipbx-credentials.txt💡 Requirements: Ubuntu 26.04 LTS · 2 GB RAM · 10 GB disk · root access
☁️ Cloud Server: Deploy on UpCloud (fast MaxIOPS storage) with $250 free cloud credits using promo code
affiliate-aipbx250.🛠️ Developers:
AIPBX_REF=maininstalls the current development branch instead of the latest release.
After installing, open https://<your-server> and log in with the admin credentials shown.
Narrated and with subtitles — on the AiPBX YouTube channel:
| English | Türkçe | Deutsch |
|---|---|---|
| English | Türkçe | Deutsch |
|---|---|---|
Releases are published as git tags (vX.Y.Z) with notes in CHANGELOG.md.
sudo aipbx-update --check # installed vs. latest release
sudo aipbx-update # update to the latest release
Or from the portal: System → System Update (admin only) shows the installed and latest version, the release notes and an Update button with live progress. A new release is also checked for every night.
Every update:
/etc/ai-pbx.env and /etc/asterisk to /var/backups/aipbx/;Keep customisations out of /opt/aipbx (use the portal, /etc/ai-pbx.env and *_custom.conf
files) so they survive updates. Installations older than 1.50.0 go through the 1.50.0 bridge
release first; aipbx-update does both steps in one run. See INSTALL.md for details.
0, 05, 00),
per-extension assignment, default allow-all*97 own mailbox, *98 mailbox login), in-browser player;
message limits and PIN rules (minimum length, not the extension number, random PIN for new mailboxes)7840 → 903704187840), per-trunk
dialled number format (strip / add a prefix), DTMF mode, session timers, 100rel and T.38 options;
limits for concurrent channels (inbound + outbound) and calls per minute stop loops and toll fraud+90…, 000…) into one format before the outbound routes; recommended rules per country,
a simulator, and one switch to turn them all off/phones) — automated discovery daemon (aipbx-phone-discovery) monitors local subnets, DHCP lease files, ARP cache, and dnsmasq logs every 5 minutes; new devices appear instantly in the Discovered on the network panelprovision_discovery_pool) and maps detected OUI vendors to default models (provision_discovery_models), producing TFTP/HTTP configuration files without manual entrySEP<MAC>.cnf.xml XML profile generation, XML directory services, and line keys across 11 enterprise models (cisco-cm-7941g through 7975g, 8841, 8851, 8861); see docs/cisco-callmanager.md.loads manifest validation before deployment*90/*91/*92aipbx-chat), group admins, member management/assistant) & Echo Reporter — plain-language PBX change planner with dry-run preview before apply, safety validation, audit trail and one-click undo (pbx_ai_changes), plus the Echo diagnostic box backed by an opt-in local HEPv3 SIP signaling capture daemon (aipbx-signaling → pbx_signaling_events)/api/v1/*) & OpenAPI 3.1 — 100+ endpoints covering extensions, trunks, inbound/outbound routes, queues, ring groups, IVRs, time conditions, conferences, dial permissions, call center, CDRs, recordings, voicemails, faxes, phones, sounds, AI, chat, system settings, and syncapbx_...) — per-token granular scopes (extensions:read, calls:write, system:read, …), IPv4/IPv6 CIDR allowlists, and per-minute sliding-window rate limits (/api-keys)/webhooks) — real-time event subscriptions (call.started, call.answered, call.ended, voicemail.received, fax.received, sync.applied, …) with X-AiPBX-Signature (HMAC-SHA256), exponential retry worker (aipbx-webhook-worker), and DNS-pinned SSRF protection/plugins) — zero-bloat modular integrations (google-auth, ms-teams, web-widgets, auto-dialer, ai-cloud, ai-tts, ai-apps, ai-models, ai-voicemail, ai-assistant), dedicated plg_* MySQL table sandbox (schema.sql), custom .zip plugin uploader, encrypted secret storage, and Safe Mode circuit breaker (auto-disables any plugin after 5 consecutive runtime errors)auto-dialer) — automated outbound calling campaigns with Asterisk Answering Machine Detection (AMD()), global & per-campaign AMD tuning, queue free-agent pacing, voicemail drop (WaitForSilence), and CSV call outcome export/privacy)Off / Custom) — zero rules enforced unless explicitly enabled by an administrator under Security → GDPR & Data Privacy (KVKK ve Veri Gizliliği in Turkish); see docs/privacy.mdnotice), allow DTMF Opt-Out (Press 9 for unrecorded call → sets __PRIVACY_NO_RECORD=1 across DID routes, Queues & Ring Groups and tags CDR(accountcode)=PRIVACY_OPTOUT), or enforce Explicit Consent Opt-In (Press 1 to allow recording)MixMonitor(...,B(15)) periodic beep interval (5–60 seconds) during recorded callsREDACTED-CARD / REDACTED-ID) masking on live AGI/AI transcripts and voicemail transcriptions before storage or external LLM callsprivacy_purge.php) — independent retention windows (in days) for call recordings, voicemails + transcripts, faxes, chat messages, and dual-DB CDRs (asteriskcdr + cdrs anonymized as REDACTED so call volume statistics remain intact)PRIVACY_SAR_EXPORT) or execute irreversible Right to Erasure (PRIVACY_ERASURE) with an immutable Audit Log certificateCloudAiService::configured() === false) so audio and transcripts never leave the local PBX server00, 0900 …)
are blocked or need a PIN, transit calls includedaipbx-backup, 14 days, optional off-server copy)aipbx-priv) — the portal never runs arbitrary commands as rootAiPBX/
├── web/ # 🌐 PHP MVC portal & REST API v1
│ ├── src/
│ │ ├── core/ # Router, PluginManager, ApiRequestContext, ResourceNormalizer
│ │ ├── controllers/ # Page controllers + ApiV1Controller (+ api/ sub-handlers)
│ │ ├── services/ # Business logic, PrivacyService, DialplanService, ApiTokenService, WebhookService
│ │ ├── repositories/ # Database repositories
│ │ └── sync/ # Asterisk configuration generators
│ ├── templates/ # Layouts + views (including /privacy, /api-keys, /webhooks, /plugins)
│ ├── api/ # Portal JSON endpoints + /api/v1/* rewrite
│ ├── openapi.json # OpenAPI 3.1 specification
│ ├── lang/ # 23 interface languages (100% key parity)
│ ├── db/migrations/ # Phinx migrations (the database schema)
│ └── tests/ # PHPUnit
├── plugins/ # 🔌 Bundled plugins: official (auto-dialer, ms-teams, web-widgets, ai-*, …) and community
├── ai/ # 🤖 Local & cloud AI service (aipbx-ai, Python)
├── chat/ # 💬 Go WebSocket chat service (aipbx-chat)
├── android/ # 📱 Pointer to [AiPBX-Android](https://github.com/mahirgul/AiPBX-Android)
├── ios/ # 🍎 Pointer to [AiPBX-ios](https://github.com/mahirgul/AiPBX-ios)
├── integrations/wordpress/ # 🧩 WordPress click-to-call & callback plugin
├── asterisk-config/ # ☎️ Asterisk base configuration
├── sounds/ # 🔊 bundled custom sounds + Turkish prompt texts (core-sounds-tr.txt)
├── asterisk-core-sounds-tr-*.tar.xz # 🇹🇷 Turkish prompts, one package per format (+ SHA256SUMS)
├── docs/ # 📚 administrator & developer documentation
├── conf/sbin/ # 🔐 aipbx-priv (root helper), aipbx-update (updater)
├── db/seed.sql # 🗄️ initial roles, permissions, settings
├── scripts/release.sh # 🚀 publishes a release
├── install.sh # 🛠️ installer (--upgrade mode used by aipbx-update)
├── VERSION · CHANGELOG.md
└── README.md · INSTALL.md · ARCHITECTURE.md
| Layer | Technology |
|---|---|
| ☎️ PBX | Asterisk 22 (PJSIP, res_fax, AMD, AMI, ODBC) |
| 🌐 Web | PHP 8, MVC, Composer; vanilla JS + CSS |
| 🗄️ Database | MariaDB (Phinx migrations + plg_* plugin sandbox) |
| 🛡️ Edge | nginx stream on 443 (ALPN + PROXY protocol) → Apache |
| 💬 Chat | Go + gorilla/websocket |
| 🎧 WebRTC | coturn TURN/STUN, DTLS-SRTP, Opus |
| 🤖 Android | Kotlin, WebRTC, FCM (AiPBX-Android) |
| 🍎 iOS | Swift, SwiftUI, CallKit (AiPBX-ios) |
| ⚙️ CI | GitHub Actions: PHPStan, PHPUnit, page smoke tests, Go tests |
/root/aipbx-credentials.txt — note them and delete the file./etc/ai-pbx.env.AiPBX follows a transparent, phased engineering roadmap. For the complete specification, architectural diagrams, and upcoming milestones, see ROADMAP.md (or online at aipbx.bid/docs/roadmap).
systemd-run), encrypted external database integrations, IVR caller lookup steps, PBX fine-tuning & Asterisk night restarts.aipbx-asterisk on host network for zero-jitter media, aipbx-web for zero-call-downtime hot updates, aipbx-db, aipbx-ai, aipbx-signaling).Contributions are welcome — see CONTRIBUTING.md for code style, commit conventions and testing.
git checkout -b feat/my-feature)git commit -m 'feat: add awesome feature')Code comments, commit messages and documentation are written in English.
⚠️ English — Disclaimer of Warranty & Regulatory Responsibility
- Provided "AS IS": AiPBX is open-source software provided under the MIT License "AS IS", without warranty of any kind, express or implied. In no event shall the author or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, without limitation, service interruptions, data loss, or toll fraud) arising out of the use or inability to use this software.
- Call Recording, AI Processing & Automated Outbound Dialing Compliance: Features such as call recording, AI speech-to-text / LLM processing, and automated outbound dialing (
auto-dialer/ AMD) are subject to strict telecommunications, wiretapping, and data protection laws worldwide (including GDPR, KVKK, FCC / TCPA, CCPA, HIPAA, and local two-party consent statutes). Configuring appropriate pre-call disclosures, obtaining caller/callee consent, and complying with local laws are the sole responsibility of the system administrator and deploying organization.- Emergency Calls (
112/911/E911): VoIP and IP PBX telephony depend on electrical power, network connectivity, and properly configured upstream SIP trunks. AiPBX is not a certified replacement for traditional PSTN emergency lines unless explicitly configured, tested, and maintained with a compliant carrier by the operator.- Network Security & Toll Fraud: While AiPBX generates strong random credentials and configures firewall/fail2ban rules by default, securing SIP trunks, outbound dial permissions, rate limits, and network exposure against unauthorized access or toll fraud remains the sole responsibility of the system administrator.
⚠️ Türkçe — Sorumluluk Reddi ve Yasal Uyarı
- "Olduğu Gibi" (AS-IS) Sunum: AiPBX, MIT Lisansı kapsamında açık kaynaklı olarak, açık veya zımni hiçbir garanti verilmeksizin "OLDUĞU GİBİ" sunulmaktadır. Yazılımın kullanımından veya kullanılamamasından doğabilecek doğrudan ya da dolaylı hiçbir zarardan (hizmet kesintisi, veri kaybı, yetkisiz arama/fatura maliyeti vb. dahil) geliştirici veya katkıda bulunanlar sorumlu tutulamaz.
- Çağrı Kaydı, Yapay Zeka ve Otomatik Arama Mevzuat Uyumu: Çağrı ses kaydı, yapay zeka ile ses-metin dönüştürme (STT/LLM) ve otomatik dış arama (
auto-dialer/ AMD) özellikleri; 6698 sayılı KVKK, BTK düzenlemeleri, İYS / Ticari Elektronik İleti mevzuatı, GDPR ve ilgili ülkelerin telekomünikasyon/dinleme yasalarına tabidir. Aydınlatma metinlerinin dinletilmesi, açık rıza alınması ve yasal saklama sürelerine uyum tamamen sistemi kuran ve işleten kurumun/yöneticinin sorumluluğundadır.- Acil Çağrı Hizmetleri (
112/911): VoIP ve IP santral üzerinden yapılan aramalar elektrik enerjisi, yerel ağ, internet erişimi ve SIP operatör (trunk) bağlantısına bağımlıdır. Uygun operatör yönlendirmesi ve yedeklilik sağlanmadığı sürece geleneksel sabit acil çağrı hatlarının (PSTN) yerini garanti etmez.- Ağ Güvenliği ve Ücretli Arama Güvenliği (Toll Fraud): Kurulum aracı rastgele güçlü parolalar ve güvenlik duvarı kuralları oluştursa da; SIP trunk limitlerinin, dış arama yetkilerinin (Call Barring) ve sunucu erişim güvenliğinin korunması sistem yöneticisinin sorumluluğundadır.
If you find AiPBX useful for your organization or projects, consider sponsoring its ongoing development and maintenance:
AiPBX runs great on UpCloud high-performance European and global cloud servers with ultra-fast MaxIOPS block storage.
Sign up via our affiliate link to claim $250 in free cloud credits:
affiliate-aipbx250*81/*80 queue login/logout, *72 call forward, *60 DND, *43 intercom,
*90/*91/*92 spy/whisper/barge, *97/*98 voicemailasterisk-core-sounds-tr packages in six formats (wav, ulaw, alaw, gsm and HD g722/sln16), so
Asterisk plays the file matching the call's codec — and any Asterisk server can use them