Omnitouch IMS Application Server
IMS Application server providing comprehensive telephony application services including call routing, supplementary services, online charging, and subscriber management.
Quick Links
Operations & Monitoring
- Operations Guide - Control Panel features, subscriber monitoring, CDR viewing, active calls, testing tools
- Metrics Reference - Complete Prometheus metrics documentation with query examples and dashboards
- IMS Conference Server - Multi-party conferencing with 3GPP compliance
- HLR & Call Simulator - Testing tools for HLR integration and call simulation
Configuration
- Configuration Guide - Complete configuration reference for Event Socket, Control Panel, API, SIP Trunks, and Diameter
- Sh Interface - Subscriber data retrieval from HSS/Repository
- Online Charging (Ro) - OCS integration and credit control
- SS7 MAP - HLR queries for roaming and call forwarding
Call Routing & Services
- Dialplan Configuration - XML dialplan fundamentals, variables, and call routing logic
- Number Translation - E.164 normalization and country-specific translation
- Supplementary Services - Call forwarding, CLI blocking, and emergency calling
- Voicemail - Voicemail service with SMS notifications
- TTS Prompts - Text-to-Speech prompt configuration
Compliance
- ANSSI R226 Compliance - French market regulatory compliance documentation
Call Processing Overview
Features Overview
Core Functionality
- IMS-Compliant Call Processing - Full 3GPP IMS Application Server functionality
- Diameter Integration - Sh (subscriber data) and Ro (online charging) interfaces
- SIP Trunk Management - Multiple gateway support with monitoring and failover
- Call Routing - Flexible XML-based dialplan with comprehensive variable support
- Number Translation - E.164 normalization for multiple countries (AU, US, PF, extendable)
Supplementary Services
- Call Forwarding - All variants (CFA, CFB, CFNRy, CFNRc) with MMTel-Config support
- CLI Blocking - Prefix-based and SIP header-based caller ID withholding
- Emergency Calling - Dedicated routing for emergency services with OCS bypass
- Voicemail - Full voicemail service with deposit, retrieval, and SMS notifications
- IMS Conferencing - 3GPP-compliant multi-party conferencing (RFC 4579, RFC 4575)
Monitoring & Operations
- Control Panel Web UI - Comprehensive monitoring interface (HTTPS on port 443)
- Real-time subscriber registrations with cell tower locations
- Call Detail Records with advanced search and filtering
- Active call monitoring
- Gateway and Diameter peer status
- System logs and metrics
- Testing tools (Sh, OCS, HLR, Number Translation, Call Simulator)
- REST API - OpenAPI/Swagger-documented API for programmatic access (port 8444)
- Prometheus Metrics - Extensive metrics across 3 endpoints (8080, 9090, 9093)
Integration Points
- HSS/Repository (Sh) - Subscriber profile and MMTel-Config retrieval
- OCS (Ro) - Real-time credit control with periodic reauthorization
- HLR (SS7 MAP) - MSRN retrieval for roaming subscribers
- SMSc - Voicemail and missed call notifications
- OpenAI TTS - Dynamic prompt generation
- SBCs/Gateways - Multiple SIP trunk support
Quick Start
Configuration Structure
Configuration Files
All configuration is in config/runtime.exs:
# Event Socket - Call control interface
config :tas,
fs_event_socket: %{
host: "127.0.0.1",
port: 8021,
secret: "YourSecretPassword"
}
# Allowed source IPs for call routing
config :tas,
allowed_sbc_source_ips: ["10.5.198.200"],
allowed_cscf_ips: ["10.8.3.34"]
# Number translation
config :tas,
number_translate: %{
country_code: :AU, # :AU, :US, :PF
localAreaCode: "617"
}
# Online charging
config :tas,
online_charging: %{
enabled: true,
periodic_ccr_time_seconds: 10,
schedule_hangup_auth: false,
skipped_regex: ["^2222", "^911"] # Bypass OCS for these destinations
}
# Emergency calling
config :tas,
emergency_call_codes: ["911", "112", "000", "sos"]
# Voicemail
config :tas,
voicemail: %{
timezone: "Pacific/Tahiti",
smsc: %{
smsc_url: "http://10.8.81.215",
smsc_api_key: "your_api_key",
source_msisdn: "2222"
}
}
See the Configuration Guide for complete parameter reference.
Monitoring & Access Architecture
Access Points
- Control Panel:
https://your-server-ip/(configured inconfig/runtime.exs) - REST API:
https://your-server-ip:8444/api/swaggerui - Prometheus Metrics:
http://your-server-ip:8080/metrics(TAS engine, Diameter, OCS, HLR)http://your-server-ip:9090/metrics(System, gateways, telephony core)http://your-server-ip:9093/esl?module=default(RTP/RTCP media quality)
Dialplan Templates
Dialplan XML templates are located in priv/templates/:
mo_dialplan.xml- Mobile Originated callsmt_dialplan.xml- Mobile Terminated callsmo_emergency_dialplan.xml- Emergency calls
See Dialplan Configuration for detailed dialplan documentation.
Documentation Structure
This README provides a high-level overview. Detailed documentation is organized by topic:
By Role
Operators & Administrators:
- Start with Operations Guide for monitoring and day-to-day tasks
- Review Metrics Reference for setting up monitoring and alerts
- Use Control Panel at
https://your-server-ip/for operational tasks
System Integrators & Engineers:
- Start with Configuration Guide for system setup
- Review Dialplan Configuration for call routing logic
- Configure interfaces: Sh Interface, Online Charging, SS7 MAP
- Implement services: Supplementary Services, Voicemail
Developers:
- Review REST API documentation (OpenAPI/Swagger)
- See Metrics Reference for Prometheus integration
- Check Configuration Guide for API configuration
By Topic
Call Processing:
- Dialplan Configuration - XML dialplan, variables, routing logic
- Number Translation - E.164 normalization
- Supplementary Services - Call forwarding, CLI blocking, emergency
Subscriber Data:
- Sh Interface - HSS/Repository integration
- Online Charging - Real-time credit control (Ro/OCS)
- SS7 MAP - HLR integration for roaming
System Configuration:
- Configuration Guide - Complete configuration reference
- Operations Guide - Control Panel and operational features
- Metrics Reference - Monitoring and observability
Value-Added Services:
- Voicemail - Voicemail with SMS notifications
- TTS Prompts - Dynamic prompt generation
- IMS Conference Server - Multi-party conferencing
System Requirements
Requirements
- Elixir/OTP runtime
- PostgreSQL or SQLite for CDR storage
- Access to IMS Core (S-CSCF)
- Network connectivity to:
- DRA/HSS (Diameter: Sh and optionally Ro)
- SIP Gateways/SBCs
- Optional: SS7 MAP Gateway, SMSc, OpenAI TTS API
Support & Documentation
- Issues & Feature Requests: Contact your integration engineer
- Metrics & Monitoring: See doc/metrics.md
- API Documentation: Access Swagger UI at
https://your-server-ip:8444/api/swaggerui - Control Panel: Access at
https://your-server-ip/
License
Proprietary - Omnitouch Systems