Every VitalPBX Release, In Detail.
The major changes, improvements, new features and fixes added with each version of VitalPBX. We keep improving our applications and modules with every release.
4.5.5 R1
Added- Added color-coded RTT indicators to the PJSIP Endpoints report, including trunks. Green indicates optimal latency, yellow indicates moderate latency, and red indicates high latency.
- Added a device details window in the PJSIP Endpoints report, accessible by clicking any status badge. It displays live RTT, remote IP address, User Agent, and a direct link to the phone's web interface when using a local or internal IP address.
- Made AI Realtime Voice Agents DID-aware.
- Added support for the Yealink T85W expansion module.
- Added provisioning support for the VTech CTM-S2212 hospitality phone.
- Expanded the Provisioning add-on with support for more than 15 additional Intelbras IP phone models, including the TIP 120/125/235/425/435/635/638 series and V-series.
Improved- Preserve the original diversion and caller headers when routing calls to custom destinations.
- Intrusion protection now automatically follows custom SIP, HTTP, and WebRTC ports configured in the GUI, so Fail2ban always protects the active ports instead of the defaults.
- Accurate tracking of real client public IP addresses for WebRTC and web phone connections behind reverse proxies.
- Optimized internal event processing between Asterisk and the GUI to reduce CPU and memory usage, particularly during periods of high call activity.
- Improved Sonata Switchboard queue monitoring by removing disconnected callers immediately, reducing unnecessary screen updates and flickering.
Updated- Updated Asterisk to 20.22.0.
- Set gpt-transcribe as the default transcription engine in VoiceHub for processing voicemails and call recordings.
Compatibility- Migrated AI Assistants from OpenAI's Assistants API to the Responses API for continued compatibility and improved handling of multi-turn conversations.
Fixed- Fixed an issue where Portal users could not access call transcriptions and AI-generated sentiment summaries.
- Fixed an issue where UDP registration traffic from banned IP addresses could still reach Asterisk through existing connection tracking states. Blocked traffic is now dropped before reaching Asterisk.
- Fixed incorrect default start-date formatting in User Portal CDR that prevented proper pagination.
- Fixed an issue where permission changes were not saved correctly when removing all read or write permissions from Asterisk Manager (AMI) users.
- Fixed call recording folder initialization in multi-tenant environments to ensure correct permissions without recursive operations that could cause the system to hang when using S3 or other network-mounted storage.
- Fixed queue monitoring issues in Sonata Switchboard, including callers remaining visible after disconnecting, incorrect queue position ordering, and inaccurate agent in-call status across multiple queues.
4.5.4 R2
Added- Pass caller phone number (CALLERID(num)) to agent system prompts, custom tool/API template variables, and transfer announcements.
- Add CSV import and export support for the cidondiversions parameter (caller / callee).
- Add config-web-server (and configure-web-server) command to regenerate and update NGINX configurations directly from the database.
- Add Sangoma remote reboot notify configuration (reboot-sangoma with check-sync event).
Improved- Implement outbound audio flow control (XOFF/XON) and queued media delivery for jitter-free playback and reliable call completion/transfers.
Updated- Update Geo Firewall IP sets.
Fixed- Include VitalPBX Connect credentials, user portal password, and updated ${QR_CODE} variable in device welcome email notifications.
- Fix real-time provisioning for the contacts column in PJSIP trunk report.
- Fix user portal account creation and auto_portal setting evaluation during bulk creation and CSV imports.
- Allow external/emergency Caller ID construction for hot desking calls when no extension is assigned to the device.
- Resolve appqueue lock-inversion deadlock occurring during state callbacks when sharedlastcall is enabled.
4.5.4 R1
Added- Call recordings and voicemails can now be protected with secure access methods, including support for embedded playback in CRM platforms such as Zoho, Salesforce, and Odoo.
- Realtime AI Agents now support OpenAI GPT-Realtime 2.1 and GPT-Realtime 2.1 Mini models.
- The Realtime AI Agents module now includes a built-in email tool for sending call summaries, lead details, and other collected information during calls.
- SIP and SMS messages sent to offline devices are now queued and delivered automatically once the device reconnects.
Updated- Asterisk has been updated to version 20.21.0, bringing improved PJSIP TCP transport stability, call handling reliability, and other upstream fixes.
Compatibility- PJSIP now includes legacy TLS 1.0 and TLS 1.1 compatibility for older IP phones.
Fixed- PJSIP trunk registrations now avoid unintended contact limits by default.
- Missed call notifications are no longer sent to queue or ring group members when the call was answered by another agent.
- Recording previews now correctly play concatenated system audio files.
- PBX Monitor no longer shows stale TCP contacts as active after they have disconnected.
4.5.3 R8
Updated- Upgraded Asterisk dependency to 20.20.1 to resolve high-traffic/concurrency issues (Asterisk Issue #1946).
Fixed- Fixed default fallback value for PJSIP Trunk fatal retry interval parameter.
4.5.3 R7
Added- Introduced a new registration status filter in the PJSIP Endpoints report to easily identify active devices.
- Expose
support_pathandfatal_retry_intervalparameters on the PJSIP Trunks - Implemented drag-and-drop file upload capabilities for customer certificate files.
- The extensions API read endpoint now populates and returns SMS connection numbers and provider details.
Improved- Added robust OpenSSL-based certificate chain verification to prevent misconfigurations on Custom certificates.
- Optimized Nginx proxy settings and configured a specialized WebSocket proxy to improve performance and stability for real-time event streaming.
- Updated dynamic routing dialplan configuration to utilize FastAGI actions for faster and more efficient call routing.
Updated- Enforced NGINX (>= 1.22.1-9+deb12u8) to mitigate critical security vulnerabilities (CVE-2026-9256 and CVE-2026-42946)
Fixed- Fixed call traffic tracking on the main tenant to ensure it displays all calls across all tenants
4.5.3 R6
####Important: > This update includes the creation of a new database index for the CDR table. On systems with large CDR datasets, this process may take additional time, so we recommend applying the update outside working hours.
Added- Added wallpaper support for Yealink T7 series devices.
- Added Israel Daylight Saving Time support for Grandstream devices.
Improved- Improved call history search performance when filtering records by tenant, call type, and date.
- Improved call traffic report performance and reduced system overhead when processing tenant call activity.
- Improved Grandstream provisioning by dynamically mapping the correct scheme value for HTTP, TFTP, and HTTPS.
Updated- Updated Geo Firewall IP sets.
Fixed- Fixed Time Condition device state updates (BLF)
- Fixed Grandstream time zone consistency by disabling automatic time zone detection from DHCP.
- Fixed duplicated tags in the Dynamic Routing dialplan.
- Fixed Phonebooks handling to avoid escaping empty strings.
- Fixed time format handling for Grandstream GXP2130, GXP2135, GXP2140, GXP2160, and GXP2170 devices.
4.5.3 R5
Added- Added support for the GPT Realtime-2 model in AI Voice Agents
Improved- Improved Geo Firewall IP rule updates by using atomic in-memory IP set swaps, eliminating the need for firewall service reloads and allowing rule changes to apply without downtime.
- Improved the Time Conditions system and background override checks to process changes faster, use less memory, and provide better performance tracking.
Updated- Updated Geo Firewall IP sets with the latest regional IP data.
Fixed- Fixed an issue where Let's Encrypt certificate renewals could fail in environments with strict geo-blocking enabled.
- Fixed Let's Encrypt renewal handling to prevent existing valid certificates from being replaced or removed when a renewal attempt fails.
- Fixed dialplan handling to preserve external Caller ID in scenarios where the called number is not an existing extension.
- Fixed a provisioning configuration issue that could prevent certain phone brands from being configured correctly when setup files contained numbering gaps.
4.5.3 R4
Added- Introduced IXICA as a supported provider for the SMS add-on.
- Added new CLI optimization commands (optimize-server / optimize-pbx-engine) to fine-tune Stasis and PJSIP task pools.
Improved- Upgraded Dial Plan architecture using Asterisk DB and FastAGI for faster, more efficient call processing.
Updated- Updated the Asterisk engine to version 20.19.0
Fixed- Implemented auto-generated IDs for BulkVS to ensure SMS tracking remains consistent even when provider IDs are missing.
- Fixed Monitor service cache synchronization to ensure Real-Time Reports display precise, live information.
- Resolved contact synchronization issues for CRM entries containing Cyrillic or Latin characters.
- Corrected the Zoho CRM integration URL to properly support the Australian Datacenter.
- Corrected Agent status synchronization within Queues for the Sonata Switchboard.
- Fixed extension cache invalidation for Hot-Desking to ensure the Switchboard accurately reflects extensions Login/Logout status.
- Resolved intermittent issues that occasionally blocked Spy and Hangup actions on the Sonata Switchboard.
4.5.3 R3
Added- AI Voice Agents now deliver dynamic transfer announcements, giving recipients clear context about the call before the conversation begins
- Support for new OpenAI models in Realtime, AI Wizard, and Call Analysis
- Broader language support across AI Voice Agents
- Added support for generating AI Agent instructions in multiple languages via the AI Wizard
- Yealink W90 and W80 models are now available in Phone Provisioning
Improved- The AI Wizard now shows a loading indicator while generating instructions
- Improved instruction generation in the AI Wizard for more accurate results
- Better handling of ambiguous situations during AI-driven call transfers
Fixed- Fixed Fanvil pickup options
- Resolved UI rendering issues with checkboxes and searchable select fields in Provisioning
- Fixed contacts cache behavior on PJSIP trunks when getting disabled
- Added periodic synchronization of Queues data to avoid inaccurate statistics
- Added periodic synchronization of the Active Calls cache to prevent calls from getting stuck
- Resolved problems with the Agents Call Transfer feature
- Fixed database language support issues affecting AI Voice Agents
4.5.3 R2
Fixed- Resolved an issue where BLF keys did not execute their configured actions due to a missing hints context.
4.5.3 R1
Added- Introduced the new AI Voice Agents add-on to enable AI-powered voice automation and interactions.
- Additional PJSIP Profile Network Settings. Added support for MWI Subscription Enforcement, Session Timers, and Minimum Subscribe Expiry.
- Added a new option to enable Symmetric Transport for global SIP transports.
- Added support for Yealink T7 series devices in the provisioning module.
Improved- Optimized Firewall Whitelist management by converting entries to IP Sets for better performance and scalability.
- Improved hint definitions to enhance system performance.
Updated- Updated the Asterisk engine to version 20.18.2
Fixed- API now automatically cleans cache after voicemails are listened to or deleted.
- Implemented proper URI encoding for SMS messages to ensure special characters are handled correctly.
- Fix certificate bundle generation to include the full certificate chain without duplicates.
- Updated Gigaset provisioning files to be generated in XML format instead of CFG.
- Fixed incorrect account count detection for Gigaset N870 IP PRO and N870E IP PRO.
- Fixed configuration issues in Gigaset provisioning templates.
- Fixed default NAT settings for Yealink provisioning templates.
- Fixed WebSocket server event responsible for populating PJSIP registration data in the GUI.
- Fixed licensing validation problems for licenses activated through Add-ons.
- Fixed validation issues for Music on Hold sorting options.
- Fixed scrolling issues affecting Firefox browsers.
4.5.2 R1
Added- Added expansion module support for Yealink T58v
- Added support for Yealink T8 series models
Improved- Improved the performance of the Asterisk Realtime Monitor, providing faster and smoother live monitoring.
Updated- Updated the system to Asterisk 20.17.0
- Refreshed global GUI styling
- Updated Geo Firewall IP Sets
Fixed- Updated Yealink T27p DSS Keys count
- Updated Grandstream GXP1628 DSS Keys count
- Fixed incorrect BLF values for Fanvil devices, improving key behavior and monitoring accuracy.
- Fixed handling of phone templates containing empty/null values.
- Fixed DSS Keys generation issues to improve provisioning reliability on supported phones.
- Fixed an issue in the Active Calls Report where the call duration timer could increase too fast when new calls were added, instead of updating normally every second.
- Resolved a problem in the Sonata Recordings Report where users were unable to create, edit, or delete filtering items.
4.5.1 R6
Added- Added new DHCP settings to let you choose interfaces and set authoritative mode for more flexibility.
Improved- Improved firewall performance by writing configuration updates faster and skipping reloads when no changes are needed.
- Optimized how the firewall matches rules to make IPTables run more efficiently.
Fixed- Fixed a licensing issue by moving the PBX license cache to a global scope to prevent tenant-related errors.
- Fixed database migrations so they can safely run multiple times without causing problems.
4.5.1 R5
Added- Introduced new API endpoints to retrieve plan extension limits for integrations.
- Added real-time Twilio SMS delivery tracking with webhook callbacks for precise delivery statuses.
Improved- Refined the "Answered Elsewhere" detection for more accurate call logs and smarter recording handling.
- Improved the CDR API with better pagination, caching, and advanced filtering tools.
- Enhanced database performance with new high-selectivity indexes, making CDR and report lookups much faster.
- The Sonata Recordings database performance received a major upgrade with optimized indexes for faster recording searches.
Updated- Updated log cleanup routines to include automatic rotation for both Asterisk and VitalPBX logs.
- Updated Geo Firewall IP sets
Fixed- Resolved an OpenVPN bug that caused “undefined index” errors during client-to-client configurations.
- Fixed an issue in Parking to validate extensions only when the range is numeric and non-empty.
- In Sonata Recordings, calls are now filtered by disposition “Answered” to prevent duplicate recordings when using Ring All strategies in queues or ring groups.
4.5.1 R4
Added- Provisioning now supports the Yealink AX86R model.
- Expanded provisioning with new Fanvil models: V61W, V62 Pro, V62W, X303-2 Wire, and W610W.
- PJSIP ACL handling extended to include contact ACLs.
Improved- REST client enhanced with stronger API error handling and clearer exception codes.
- Forms in Sonata Recordings provide a smoother UX with button state toggling during submission.
Updated- VitalPBX user permissions streamlined and noisy AMI events filtered out.
- Fanvil V65 keys count updated for better accuracy.
- Time format values refreshed for Fanvil V series models.
- Fanvil V66 accounts configuration refined in provisioning.
Fixed- My Voicemail DataTables made responsive with actions rewired to work correctly with child rows.
- Resolved cron job (vpbx_clean_old_logs) issue by preventing xargs errors when no files are found.
- Adjusted vitalpbx script to properly assign InnoDB buffer pool size.
- Sonata Recordings search_calls corrected to block multiple clicks and restore the button after table reload.
4.5.1 R3
Improved- Redesigned the installation page to respect PBX branding and present a more generic look when the database is disconnected.
- Initiate a T.38 re-INVITE if the remote endpoint does not, improving fax transmission reliability.
Fixed- Fixed the Active Calls report so it displays correctly again.
4.5.1 R2
Added- Added Odoo CRM integration to the CRM add-on.
- Introduced GPT‑4.1 model for AI Assistants.
- Added Swedish translations for the GUI.
- Added database usage tracking utility (vitalpbx track-db-usage).
- Added firewall troubleshooting utilities (vitalpbx check-geo-block, vitalpbx check-ports).
- Added "VPN Peer Access" option to OpenVPN for client-to-client communication.
- Added support for Fanvil W610W model.
Improved- Show fax icon for fax calls in the CDR.
- Enhanced security by hiding the NGINX server version.
- Increased Let’s Encrypt certificate renewal interval from 30 to 60 days.
- Implemented cache_size for Asterisk ODBC connections to better handle connection spikes.
- Optimized maximum database connections for MariaDB and Asterisk. For existing installations or after upgrading server specs, run vitalpbx optimize-mariadb or vitalpbx optimize-server to apply these optimizations.
- Improved fax handling by sending faxes directly to trunk endpoints for T.38 support.
- Escaped special characters in the Phonebooks add-on to avoid XML errors.
Updated- Updated Asterisk to version 20.15.0.
- Updated third-party vendor libraries (JS, CSS) to patch vulnerabilities and strengthen security.
- Updated GEO Firewall IP sets.
- Updated keys count for Yealink T27P.
- Updated account limits for Grandstream HT814.
- Updated keys count for Fanvil V65.
- Updated time format values for Fanvil V series models.
- Updated account limits for Fanvil V66 models.
Fixed- Corrected invalid XML parameter in the Grandstream GRP2602 template.
- Fixed extensions import when follow-me numbers were empty.
- Fixed database migration for the Queues Callback add-on.
- Fixed provisioning device accounts exportation
4.5.1 R1
Added- New CLI command to create backups via the command line using a UUID. You can now run vitalpbx make-backup by specifying the Backup Identifier field in the Backup & Restore module.
- Support for uploading call recordings to Salesforce call logs from the CRM.
- Added support for Fanvil V66 series models.
Improved- Completely disable global limits warnings when the setting is turned off via the GUI.
- Rename NGINX configuration files for add-ons to prevent service disruptions during PBX or add-on updates.
- Update usage text for the VitalPBX CLI tool for better guidance and usability.
- Force IPv4 for Postfix, improving mail delivery in environments with inconsistent IPv6 support.
- Use tls+sip: for TLS connections to enhance VitalPBX Connect stability over secure channels.
- Avoid unnecessary value updates when queuing Asterisk drivers for reload, reducing redundant operations.
Updated- Updated Asterisk to version 20.14.0
Fixed- Resolved provisioning permission issues after tenant restoration, ensuring restored tenants are properly secured with their original HTTP authentication credentials.
- Fixed a provisioning vulnerability where a tenant’s index.php could serve provisioning files for devices belonging to other tenants. This fix enforces strict tenant ownership validation before serving any configuration files.
- Fixed incorrect key mapping for expansion modules on Yealink T29G and T48G phones.
- Sanitized the "From" name and email address fields to prevent malformed data.
- Removed invalid parameters from Salesforce lead integration in the CRM module.
- Applied appropriate permissions to the Asterisk monitor folder to prevent errors when accessing call recordings.
- Resolved an issue with Let's Encrypt certificate updates where updating certificates from the GUI would return a blank error screen.
- Corrected the Voice Hub add-on uninstall script to ensure complete removal.
- Corrected the AI Assistants add-on uninstall script to properly clean up associated resources.
- Allow editing orphan AI Assistants when the Assistant has been deleted from the OpenAI portal.
4.5.0 R7
Added- Voicemail transcription is now available to Enterprise and Call Center users, in addition to Carrier Plus and VitalPBX One.
- Users can now select the Speech-to-Text (STT) model used for voicemail transcription.
- VoiceHub adds support for the latest OpenAI voices for more expressive TTS.
- The new GPT-4o-Mini-TTS model is available in VoiceHub, along with an Instructions field for speech control.
- Each AI Agent can now use its own STT model for transcription.
- The AI Assistants module now lets you disable the "Wait Message" prompt by setting it to "None".
- Phonebooks now support ClearlyIP as a recognized device brand.
- xpansion key support has been added for Yealink T58A devices.
- A new maintenance log file is created at /var/log/vitalpbx/maintenance-Y-m-d.log.
- Errors from phonebook operations are now logged under /var/log/vitalpbx/phonebook_access.log.
- On Sonata Recordings and Switchboard, Introduce Czech translations for improved multilingual support.
Improved- The maintenance script now caches recording durations to reduce FFPROBE execution.
- On Sonata Recordings, cached call recordings duration to avoid running FFPROBE on each search, improving performance.
Updated- The provisioning template for Fanvil V64 has been updated.
- In Ring Groups, when ANSWERED_ELSEWHERE is disabled, missed calls now default to NO_ANSWER.
Fixed- It was impossible to set up unlimited interaction for the AI Assistants.
- Inactive users are skipped when syncing users from Salesforce CRM.
- Fixed an issue where queue-originated calls were not fully recorded after blind transfers.
- Corrected an issue where outbound calls routed internally to tenant DIDs were not being recorded.
- It’s now possible to send voicemails without audio attachments even when MP3 conversion is enabled.
- You can now delete Voice Profiles correctly—missing methods have been implemented.
- It's now possible to import extensions without specifying a voicemail password.
- Emergency calls are no longer affected by outbound call restrictions in the Tenants module.
- Resolved the inability to export provisioned devices.
- Corrected provisioning filenames for SNOM devices
- Fixed query filters on Sonata Recordings to ensure accurate call searches.
4.5.0 R6
Added- Introduced Redis as a caching server for multiple API endpoints, significantly improving the performance of Sonata add-ons that rely on the VitalPBX API.
- The system now sends email alerts to the configured address when a Let's Encrypt certificate fails to renew.
Updated- Updated IP sets for the Geo Firewall add-on to enhance security and accuracy.
Fixed- Prevent unexpected exceptions when deleting audio files used in the "System Prompts" section of the "System General" module.
- Reset the ring time before forwarding calls to the final destination, resolving unexpected behavior when routing calls to extensions.
- Disabled persistent database connections on the Switchboard to prevent overloading the database engine with multiple idle connections.
4.5.0 R5
Added- Introduced the Conversational AI add-on, leveraging Twilio integration with OpenAI Realtime WebSockets to create AI-powered conversational agents.
- Added support for the Yealink AX83H model in the provisioning add-on.
Fixed- Fixed an issue that prevented scheduling a queue callback if the caller had a previous callback with the status "expired."
- Resolved a bug where configuring callback expiration incorrectly marked all scheduled callbacks as expired.
- Fixed an issue preventing connections to Zoho when using the UK data center.
4.5.0 R4
Added- Introduced the PBX Assistant feature to the AI Tools module. This innovative feature adds a chatbot function accessible from the top navbar, enabling users to chat with an AI assistant specialized in PBX configurations.
- Added the ability to perform massive synchronization of Connect devices with the provisioning server directly from the Connect Settings module.
Improved- Updated the default codec priority for Yealink devices to optimize compatibility.
- Updated the GEO Firewall IP addresses to ensure better accuracy and security.
Updated- Upgraded Asterisk to v20.11.1 for improved stability and performance.
Fixed- Included comfort silence to Asterisk audio files to avoid faster playbacks.
- Added missed silence audio folder for the English audio package.
- Fixed a bug where importing extensions inadvertently overwrote Secretary settings.
- Addressed an issue where deleting time groups linked to time conditions resulted in orphaned destinations, preventing the deletion of associated destinations.
- Corrected the Call Analysis report in the CDR to ensure proper translation based on the configured language in the AI Tools.
- Fixed an issue where refreshing the PJSIP session during parked call retrieval caused calls to drop.
- Resolved compatibility issues with Let’s Encrypt API that prevented certificate renewal and creation.
4.5.0 R3
Added- Add API endpoint to retrieve the extensions' account codes.
- Add API CRUD endpoints for Authorization Codes, Customer Codes, and AI API Keys.
Improved- Improve regex to remove annotations from AI responses.
- A validation is added for time groups to avoid spanning multiple months in a single range.
Fixed- It was possible to retrieve extensions per id that belong to other tenants via API.
- It was impossible to load CEL event details on CDR.
- It was impossible to delete tenants with the AI Tools configured.
- Vonage SMS provider didn't support Unicode characters.
- A missed property avoids showing the "Key Expansion Modules" tab.
- Latest changes on Let's Encrypt API make it impossible to renew/create certificates.
4.5.0 R2
Added- Added the "optimize-server" command to optimize server cache, swap, PHP-FPM, Nginx, and MariaDB, with all services restarted after optimization.
- Added global limit parameters in the System General module to control the number of tenants and extensions, with an additional parameter for limiting queue agents using the "Ring All" strategy.
Improved- The IP Address whitelist module now overrides IPs blocked by the GEO firewall.
- Enhanced indexing of database tables.
- Improve the extensions' dial plan.
- Optimize database settings for small servers.
Updated- Introduce Asterisk v20.10.0.
- Introduce PHP v8.2
- Introduce Debian 12.
- Rename the command "optimize-apache" to "optimize-web-server."
- Rename the command "reset-apache-conf" to "reset-web-server."
Compatibility- Switch from Apache2 to NGINX.
4.2.0 R6
Added- Provisioning now supports the Yealink AX86R model.
- Expanded provisioning with new Fanvil models: V61W, V62 Pro, V62W, X303-2 Wire, and W610W.
- PJSIP ACL handling extended to include contact ACLs.
Improved- REST client enhanced with stronger API error handling and clearer exception codes.
- Forms in Sonata Recordings provide a smoother UX with button state toggling during submission.
Updated- Asterisk version bumped to 18.26.4.
- VitalPBX user permissions streamlined and noisy AMI events filtered out.
- Fanvil V65 keys count updated for better accuracy.
- Time format values refreshed for Fanvil V series models.
- Fanvil V66 accounts configuration refined in provisioning.
Fixed- Resolved cron job (vpbx_clean_old_logs) issue by preventing xargs errors when no files are found.
- Adjusted vitalpbx script to properly assign InnoDB buffer pool size.
- Sonata Recordings search_calls corrected to block multiple clicks and restore the button after table reload.
4.2.0 R5
Added- Add support for Fanvil V65, V66, and HT814 models.
- Added expansion module support for Yealink T29G and T48G.
Updated- Updated key counts for Yealink T27P and Fanvil V65 models.
Fixed- Corrected invalid parameter in Salesforce CRM lead integration.
- Fixed empty responses when updating certificates.
- Applied correct permissions to the Asterisk monitor folder for call recording access.
- Replaced invalid XML parameter in GRP2602 device template.
- Recreate provisioning authentication files during backup restoration to maintain integrity.
- Scoped provisioning access in index.php strictly to tenant boundaries.
4.2.0 R4
Added- On Sonata Recordings and Switchboard, Introduce Czech translations for improved multilingual support.
Improved- On Sonata Recordings, cached call recordings duration to avoid running FFPROBE on each search, improving performance.
Updated- Updated IP Sets for the Geo Firewall Add-on to enhance security and accuracy.
Fixed- Optimized Salesforce integration to retrieve only active users, improving data efficiency.
- Enabled voicemail transcription support for all subscription plans.
- Resolved an issue where call recordings were being overwritten during blind transfers.
- Ensured that tenant outbound call limits do not apply to emergency calls, preventing restrictions on critical calls.
- Fixed an issue on Ring Groups where the ring time was not reset before forwarding to the final destination.
- Fixed query filters on Sonata Recordings to ensure accurate call searches.
- Disabled database persistent connections on Sonata Recordings and Switchboard to avoid multiple SLEEP connections.
4.2.0 R3
Added- Added the ability to perform massive synchronization of Connect devices with the provisioning server directly from the Connect Settings module.
Updated- Update Asterisk to v18.26.0
- Update default Codec priority for Yealink devices.
Fixed- Fixed a bug where importing extensions inadvertently overwrote Secretary settings.
- Addressed an issue where deleting time groups linked to time conditions resulted in orphaned destinations, preventing the deletion of associated destinations.
- Corrected the Call Analysis report in the CDR to ensure proper translation based on the configured language in the AI Tools.
- Fixed an issue where refreshing the PJSIP session during parked call retrieval caused calls to drop.
- Resolved compatibility issues with Let's Encrypt API that prevented certificate renewal and creation.
3.2.5 R5
Fixed- Backup and Restore: the faxes folder didn't get backed up.
- Backup and Restore: When there are a large number of voicemail files, the backup fails to back up all the files.
- IVR Stats: exporting results threw an unexpected exception.
- Multi-Tenant: deleting tenants with a large number of CDR records threw an unexpected exception.
- Core: saving settings with long values were producing unexpected exceptions.
3.2.5 R4
Fixed- Core: do not use the multi-thread method during post-installation to prevent incomplete installations.
- Core: handle session exceptions to prevent issues when the CSFR token field doesn't exist.
- Core: do not force secure cookies over HTTP to avoid login issues.
3.2.5 R3
Fixed- The Checkboxes didn't show correctly
- Running Multi-Thread scripts overloaded the CPU
- Some Apache CSPs were affecting other add-ons
3.2.5 R2
Fixed- Core: some Apache headers avoided playing media files on VitXi, Sonata Recordings, and other add-ons.
- Dynamic Routing: in some circumstances, the CID number didn't match with the stored numbers when it should.
3.2.5 R1
Improved- Core: protects the PBX against reflected XSS(CVE-2023-0486)
- Core: protects the PBX against CSRF (CVE-2023-0480)
Fixed- API: the queue hints didn't get updated when logging in/out from Queues through the API.
- DialPlan: calls didn't reach the callee voicemail when transferred from ring groups.
- Class of Service: Some apps and features stopped working after changing the CoS name.
3.2.4 R6
Improved- Backup and Restore: Optimize the commands to backup and restore backups
Updated- Geo Firewall: the IP addresses got updated
Fixed- Certificates: Let's Encrypt was using an expired intermedia CA
- Trunks: do not load disabled custom headers
- Queues Callback: avoid calls duplicity
3.2.4 R5
Updated- Geo Firewall: update the IP addresses
Fixed- GUI: update default URLs to avoid deceptive site ahead warning
- GUI: applying changes throwed exceptions under certain conditiosn
3.2.4 R4
Added- GUI: add "robots.txt" to avoid search engines indexing the app.
Improved- AMI: improve performance
Updated- Geo Firewall: the list of IP addresses got updated.
Fixed- Classes of Services: avoid deleting CoS when deleting a Route Selection or Feature Category associated with it.
- Outbound Routes: fix calls duplication on CDR
- IVR: generate CDR entry even if the customer/caller hangup before selecting an option.
- Queues: inherit MoH from Queues when agents put customers on hold.
- Speed Dials: do not list items from other tenants.
3.2.4 R2
Improved- DialPlan: allow multiple tries for the directory app/feature.
Updated- Core: update base translations
Fixed- Core: the application was throwing a MySQL/MariaDB error with code 2006 under certain conditions.
- Trunks: calls through the tenant trunks were getting duplicated
- Virtual Faxes: it was impossible deleting faxes after applying search filters
3.2.4 R1
Improved- Maintenance: The script executed got a performance improvement.
Updated- Geo Firewall: the list of IP addresses got updated.
Fixed- Certificates: The certificates got not updated after adding a new sub-domain to an existing Let's Encrypt cert.
- Queues Callbacks: The reports module was showing information from other tenants.
- Extensions: The dial string got not updated after removing a virtual device from an extension.
3.2.3 R9
Improved- Core: avoid deleting Asterisk logs too frequently
- Firewall: avoid downloading the Firewall blacklist too frequently.
- DialPlan: Improve anonymous callers detection
Fixed- Extensions: The portal parameters were getting reset after updating extensions from the Import module
- Queues: validate if extension is in use before creating a new queue
- Switchboard: it was not possible to show more than two calls in the Extensions widget
3.2.3 R8
Improved- Provisioning: a default password is now configured when creating new templates.
- Firewall: the API Ban and VoIPBL blacklist are now downloaded more frequently.
Updated- Firewall: the push server IP for the VitalPBX Mobile got updated.
Fixed- Dialplan: the CDR didn't get generated under certain conditions.
- Extensions: it was impossible defining multiple IP Addresses for the Deny and Permit fields.
- GUI: the license modal was not showing the branded name.
- API: it was impossible creating tenants with the parameter "allow_recordings" disabled.
- Core: the tenant prefix gets removed incorrectly in some circumstances.
- Switchboard: it was impossible to search for an extension in the extensions widget in the console mode.
3.2.3 R7
Added- Phonebooks: We've added support for the Gigasets NX70.
- Custom Destinations: now, it is possible to set up a Caller ID.
Improved- DISA: Now, the password is optional.
- Provisioning: the number of keys gets updated for the Yealink T43U.
Updated- Geo Firewall: we've updated the list of IP addresses.
- Asterisk: we've updated the Slovenian audio package.
Fixed- DISA: The caller ID was getting overwritten.
- Provisioning: It was impossible to provision Aastra phone devices.
- Core: the database settings were getting replaced on each update.
3.2.3 R6
To keep the app stable, we're releasing a new minor upgrade to address issues raised by customers and the community. Additionally, we are adding a few improvements.
Added- Branding: now, the text color of the login slogan is customizable.
Improved- DialPlan: now, the call waiting tone is optional. You can enable it from the System General module. It comes disabled by default.
- Backup and Restore: now, the dialer database can be backed up and restored.
Updated- Geo Firewall: we've updated the list of IP addresses.
Fixed- Branding: the links were pointing to our old domain.
- GUI: the links were pointing to our old domain.
- Outbound Routes: some calls didn't get added to the Dialer data.
- GUI: we've given a specific format to time pickers to avoid issues with some Languages.
3.2.3 R5
We are glad to deliver another minor VitalPBX v3 upgrade. This update aims to improve PBX security and address issues reported by customers and the community at large.
Added- Core: now, we're adding a CRON to clean the Asterisk and Fail2Ban logs.
Improved- Asterisk: now, the system will play a busy ringback tone to the caller when the callee is busy.
Updated- GEO Firewall: we've updated the list of IP addresses per country.
- GEO Firewall: we've updated the list of countries in the GEO Firewall map.
Fixed- Trunks: due to changes in the previous version, the follow-me feature didn't work as expected when using tenant trunks.
- Core: now, applying changes from the API will include all the modules.
- Core: the multi-tenant notifications template didn't replace the domain variable with the actual domain.
- Users: in some conditions, editing sub-tenant users on the primary tenant converted them into super-admin users.
- Switchboard: the app was not updating the correct hint device when login/logout or pausing/unpausing from a queue.
3.2.3 R4
We are pleased to announce another minor update for VitalPBX v3. This update intends to enhance PBX security and fix issues raised by customers and the community in general.
Added- Firewall: now, it is possible to enable the APIBAN blacklist as part of the Firewall. To activate it, you must add your APIBAN key in the file "/etc/vitalpbx/firewall.conf." To get your APIBAN key, you must go to "apiban.org."
Improved- GUI: now, the multi-select fields grow depending on the number of items added.
Updated- Geo Firewall: we've updated the list of IP addresses for the GEO firewall add-on.
Fixed- Extensions: the secretary extension got removed when updating from the Portal.
- Trunks: it was impossible to force call recording on Tenant trunks.
- Provisioning: it was impossible to restart Polycom devices from the Provisioning module.
3.2.3 R2
We are glad to release a minor version of VitalPBX 3, which includes some fixes and improvements. Plus, we are updating the Asterisk version to v18.12.0.
Added- Provisioning: we're introducing the Dinstar Gateways.
- Sonata Recordings: it now comes translated to Brazilian Portuguese.
Improved- Extensions: now, the CSV file with exported extensions uses a pipe symbol to separate values previously separated by a comma. This minor change will avoid issues reading the CSV files with tools like Excel.
Updated- Asterisk: we've updated Asterisk to version 18.12.0.
- GEO Firewall: we've updated the list of IP Addresses per country.
Fixed- Asterisk: in some circumstances, the log files didn't get deleted automatically.
- Provisioning: it was impossible to provision some Dinstar and ClearlyIP devices.
- Sonata Billing: it was not possible to schedule weekly automatic reports.
- Sonata Recordings: the FTP feature was not working as expected.
- Sonata Recordings: it was impossible to play audio files containing the hashtag character.
3.2.3 R1
We are excited to announce the release of a new VitalPBX version. This new version includes several improvements, bug fixes, and a few new features.
Added- Ring Groups: it is now possible to define an announcement to be played back to the callers before ringing the members of the ring group.
Improved- Multi-Tenant: it is now possible to search for a tenant by description or DID.
- Speed Dials: now, it is possible to use patterns on this module.
- CDR: the header and footer of the PDF reports are now translatable.
- GUI: now, the default Asterisk sounds from Follow-me, Queues, and other modules are played using the current user's language. Nonetheless, the Asterisk prompts have to be installed for this to happen.
- Ring Groups: we've added a validation to avoid using the same ring group as the final destination to avoid generating infinite loops on Asterisk.
- Emergency Calls: now, the default dispatchable location is used for email notifications when the designated one cannot be found.
Fixed- Queues: now, the Join Announcement isn't played back when the parameter "Join Empty" is set to "No" or "Strict."
- CDR: clicking the refresh button (located in the bottom nav bar) didn't reload the CDR info.
- Users: it was impossible to create portal users in sub-tenants.
- Emergency Calls: in some circumstances, getting the CID name and number from the default dispatchable location was impossible.
- Provisioning: In the previous version, it was impossible to save the scanned devices.
3.2.2 R1
We are pleased to announce a new version of VitalPBX. This new version includes improvements in the provisioning add-on, Switchboard, Phonebooks, and Virtual Faxes. Additionally, we are addressing a couple of issues and introducing database optimizations.
Added- Provisioning: on the provisioning templates module, it is now possible to configure the date and time format for the phones' brands and models that support it.
- Provisioning: the phone models "Yealink T58W, Yealink T30, Yealink CP935, and Alcatel M8" are now available.
Improved- Core: we are releasing a new script that optimizes MariaDB's performance. This script gets applied automatically for new installations. In the case of existing installs, you can run the command "vitalpbx —optimize-mariadb" after business hours.
- Switchboard: after retrieving a parked call, the call gets updated with the actual CID info on the extensions widget.
- Queues: the parameter "shared_lastcall" comes enabled by default. This parameter makes the last call and calls received be the same in members logged in more than one queue; this is useful to make the queue respect the wrap-up time of another one for a shared member.
Fixed- Email Settings: avoid sending emails from system users ([email protected], [email protected], etc.)
- Phonebooks: it was impossible to read phonebooks from some Yealink devices.
- Conferences: the calls were getting mixed between tenants when using the same conference extension numbers.
- Virtual Faxes: the issue for filtering faxes by fax device was still present.
- Switchboard: the application now filters all calls without CID Name and Number.
3.2.1 R1
The VitalPBX version 3.2.1 R1 is now available. This new version includes significant security patches along with regular fixes and enhancements. To provide some context, we got notified that the backup files could be retrieved in the previous versions using a browser and a brute force script. Hence, this version implements security enhancements to protect the backup files. Fortunately, the incident was kept under wraps, and no users have been affected by the problem. Thereby, we recommend updating your PBX as soon as you can.
Added- Virtual Faxes: After successfully sending fax, an email notification is now sent.
Improved- Backup and Restore: the backup files are no longer accessible via a public web address. Additionally, only authenticated users could now download the backups.
- Call Recordings: now, the call recordings are played using an authenticated route. The public path utilized in the previous versions is still available, but we expect to remove it in future versions.
Fixed- Follow-me: formerly, when using the parameter "Prompt Callee" in a list of multiple phones(Internal and Externals), the call for the rest of the phones gets hanged up if one of the callees answers, even before the callee press one to accept the call.
- Follow-me: the caller didn't get forward to the called voicemail after failing to reach the list of phones set in the follow-me.
- Extensions: previously, it was allowed to use the same device name for trunks and extensions' devices. When using PJSIP, declaring two devices with the same name resulted in the server dropping registration requests.
- Virtual Faxes: it was impossible to retrieve the list of faxes filtered by a specific fax device.
- Provisioning: after picking specific phone models and brands, an unexpected exception happened.
- Parking: the option "Return to Originator" was not working for outbound calls.
- Extensions: the stored DTMF option was not being loaded by the GUI.
- Extensions: an unexpected exception occurred in certain circumstances after modifying the DTMF parameter.
3.1.7 R1
We are pleased to announce a new release of VitalPBX. This new version includes substantial improvements for the Provisioning add-on. Additionally, we are addressing various issues reported by customers and the community.
Added- Provisioning: Now, it is possible to overwrite the templates' keys and phonebooks settings per device.
Improved- CEL Events: The CEL events come deactivated by default for new installs. When these events are enabled on busy PBX systems, we've noticed that the database may crash.
- System General: now, it is possible to enable/disable the diversion headers generated by VitalPBX. This option comes disabled by default.
Updated- Geo Firewall: the list of IP Addresses got updated.
- i18n: the Brazilian translations get updated
Fixed- Provisioning: there were a few missing translations in the provisioning module.
- Recording Management: in certain circumstances, closing the audio player was impossible.
- AMI: the deny and permit fields generated empty values when concatenating multiple IP addresses.
- Extensions: it was possible selecting invalid values for the DTMF field.
- PJSIP Transports: got an unexpected exception when creating a PJSIP Transport with local networks.
- Parking: in some circumstances, the parking gets into a loop when trying to return the call to the originator.
- Parking: the parameter "Comeback to Origin" wasn't honored.
- Parking: when editing existing parking lots, it was possible to assign parking spaces used by other parking lots.
- ClearlyIP: configuring and enabling this module collapsed the PJSIP driver.
- Maintenance: in some circumstances, the CDR's data wasn't getting removed by this module.
- Switchboard: The search feature didn't work in the extensions widget.
- Switchboard: An unexpected exception happened on systems with no queues(Only visible through the browser console).
- Sonata Billing: it was not possible to calculate rates for incoming calls. For existing installations, you have to re-synchronize the trunks.
- Sonata Billing: the system was generating costs for unanswered calls.
3.1.6 R1
We are excited to announce a new VitalPBX version. This new version brings up various bug repairs, enhancements, and a couple of new features. Additionally, we are introducing Asterisk 18.10.0.
Added- Dialing Restrictions: now, it is possible to define call restrictions for local numbers like conferences, paging & intercom, etc.
Improved- Queues CallBack: now, it is possible to customize the DTMF digit for requesting a queue callback.
Updated- Asterisk: we are updating Asterisk to the 18.10.0 version.
- i18n: we've updated the Brazilian translations on the VitalPBX GUI.
- Audios: we've updated several audio packages to include all of the Asterisk prompts for those languages.
Fixed- Trunks: in certain circumstances, the dial prefix didn't get prepended.
- Parking: unpicked calls from parking lots with the option "Return to Originator" enabled got hung up instead of ringing the number that parked the call.
- Ring Groups: calling ring groups with the option "Allow Diversions" enabled end up in Voicemail instead of ringing the members; this happened when the group members had Follow-me or DND enable.
- Import Extensions: when attempting to import extensions, the GUI threw an error in some cases.
- Dialplan: in some circumstances, the call got into an infinite loop when calling the queues login/logout feature.
3.1.5 R4
We are more than glad to announce the fourth release of VitalPBX 3.1.5. We addressed the majority of the issues identified by the community in this release. Additionally, we have implemented several improvements under the hood.
Improved- Feature Codes: now, it is possible to pick up single-digit extensions with the "Direct Pick Up" feature code.
- Firewall(Fail2Ban): The sending of emails every time the fail2ban is restarted is now turned off by default.
Updated- Provisioning: the list of MAC addresses for Alcatel phone devices gets updated.
- I18n: the Brazilian Portuguese gets updated.
Fixed- Phonebook: it was impossible to use the VitalPBX's phonebooks on SNOM devices.
- Firewall(Fail2ban): in previous versions of VitalPBX, the email sender wasn't correctly configured.
- Provisioning: it was impossible to load the Cisco configuration files from the VitalPBX GUI.
- Speed Dialing: imported speed dial codes didn't get created in Asterisk's dial-plan.
- Certificates: generating certificates without defining a subdomain caused an unexpected exception in the prior version of VitalPBX.
- Switchboard: the status of the DND feature didn't get updated appropriately.
- Switchboard: the number of available members in the queues widgets didn't get updated correctly.
Deprecated- Extensions: With the new VitalPBX mobile app, we are deprecating the "Push Notifications" parameter. Instead, we are adding a new parameter to enable or disable the generation of the QR codes.
3.1.5 R3
We are glad to announce the third release of VitalPBX 3.1.5. This version's goal is to stabilize the platform. Hence, it doesn't feature many modifications.
Added- PhoneBooks: Phonebooks are now compatible with SNOM devices.
Fixed- PhoneBooks: the URL generated didn't use the correct protocol.
- Outbound Routes: the dial-plan to route the calls to Tenants DIDs is now only generated if the Multi-Tenant add-on is installed.
- System General: now, the option to route calls to Tenants DIDs internally is shown only if the Multi-Tenant add-on is installed.
- Core: in some cases, applying changes resulted in an unexpected exception.
3.1.5 R2
We are pleased to announce the second release of VitalPBX 3.1.5. This new version includes fixes and improvements on certificates, backup and restore, and more.
Improved- Backup and Restore: Now, Asterisk gets fully restarted when finishing the restoration process.
- Backup and Restore: The add-on migrations are applied when required.
- Extensions: now, it is possible to export and import Virtual Devices.
Updated- i18n: The Brazilian and Russian translations are now updated.
Fixed- Core: some hints didn't get update correctly.
- Certificates: it was impossible creating certificates without defining the sub-domains.
3.1.5 R1
A day before Christmas, we are pleased to deliver a new version of VitalPBX. This version includes a couple of new features, general fixes and improvements, and more. It has been a long year full of challenges, with ups and downs, and we really want to say thank you to those that have been through thick and thin during all these years. Again, from the VitalPBX team, thanks to all of you for being part of VitalPBX. We wish you happy holidays.
Added- Certificates: now, you can define multiple sub-domains when creating a Let's Encrypt certificate. The hostname or base domain wouldn't be part of the certificate but the sub-domains. So, if your base domain is mybpx.com, in the sub-domains field, you should define "sip01.mypbx.com," "sip02.mypbx.com," and so on.
- Core: a new module is now available to create custom transport for the PJSIP technology. With this module, you can define new PJSIP transports to bind a different address and port or use a distinct TLS method.
- Extensions: now, it is possible to assign virtual devices to extensions. Virtual Devices are practical for users or agents who need to accept calls on their mobile phones.
- Asterisk: now, the ARI modules are enabled by default.
Improved- CDR: now, the PDF reports support the Korean language.
- Conferences: a validation got implemented to avoid using the same password for admin and users.
Fixed- Asterisk CLI: commands sent from this module got lowercase automatically. Thereby, no results were returned if a portion of the command was supposed to be in uppercase.
- Core: now, the QR code is generated with some margins to improve its readability for Android devices.
- Outbound Routes: deleting a PIN set attached to an Outbound Route didn't update the DialPlan. Hence the outbound routes with that PIN set assigned were still asking for a password.
- Provisioning: fixes for Polycom and Cisco base templates are now included.
- Provisioning: it was impossible to pick templates for devices discovered during network scanning.
- Custom Contexts: in the previous update, the existing custom contexts items disappear from the menu.
- Switchboard: calls generated from the switchboard with a virtual extension(Hot Desking) didn't show the right call source in the CDR.
- Switchboard: in some circumstances, the Extensions Summary widget didn't get updated in real-time.
3.1.4 R2
To address the queue concerns highlighted by customers, we are releasing VitalPBX 3.1.4 R2. It appears that the latest modifications to Queues implemented in Asterisk 18.8.0 are causing Agents to behave incorrectly. For those using Asterisk 18.8.0, after updating VitalPBX, you can downgrade to the previous version using the command: yum downgrade asterisk asterisk-paging asterisk-dpma asterisk-core asterisk-voicemail asterisk-pjsip asterisk-doc asterisk-curl asterisk-odbc asterisk-dahdi -y
Improved- Security: The GUI now blocks GET and POST requests from non-browser applications.
- Core: Introduce some performance improvements.
Fixed- Core: Allow downgrading to the previous Asterisk version.
3.1.4 R1
We are pleased to announce the availability of VitalPBX 3.1.4 R1. This update fixes concerns highlighted by customers and the community while adding new features and refinements.
Added- Queues: A new field is now available for defining if rings or not unavailable agents.
- API: Creating, updating, and deleting queues is now possible.
- API: New endpoints get included to retrieve PBX destinations.
Improved- API: The click-to-call endpoint now supports passing variables for the generated channels. Nonetheless, the request has to be in JSON format.
- Security: Requests to VitalPBX GUI from non-browsers applications now got rejected. Furthermore, if the same IP generates multiple requests, the Fail2Ban app will add it to the block list.
- Dynamic Destinations: You can now configure a timeout for the URL source type.
- Custom Contexts: This application is now accessible from Tenants. Nonetheless, it is not available for the Community version of VitalPBX. It has to be considered an extended feature.
Updated- Core: Asterisk comes updated to version 18.8.0
- i18n: The French langue has been updated. Thanks to Sébastien Le Moal for helping us with this regard.
Fixed- DialPlan: The message context was not processing SIP messages when the To parameter was in the format pjsip:"1234"
- Security: When someone accessed the API using HTTP while Apache was configured to redirect any request to HTTPS, the Fail2Ban program banned the redirection requests.
- Paging & Intercom: The application rang the caller even if it was part of the callee list.
- Follow-me: Internal extensions ceased to ring while an external callee confirmed whether or not to accept the call.
- Trunks: Calls were still being routed to trunks that had been disabled.
- Outbound Routes: The combination of PIN sets in the outbound routes and extensions with the Pinless feature enabled made outgoing calls to fail.
- Follow-me: The language configuration got ignored by the feature. If the extension got set to en_UK and the caller got diverted to the follow-me functionality, the prompts reverted to en_US.
- Sonata Billing: in some conditions, the scheduled reports didn't get generated.
- Sonata Recordings: Previous versions of the software didn't include the FTP functionality.
3.1.3 R1
We are pleased to announce the availability of VitalPBX 3.1.3. This release addresses issues raised by our customers and the community. It also has some new features and enhancements.
Added- Multi-Tenant: Now, it is possible to route calls to tenants' DIDs internally instead of sending them out using the trunks. You can enable this behavior by setting the parameter "Route Calls to Tenant DIDs Internally" to "Yes" on the System General module.
- Provisioning: Some phone models from Polycom and Cisco are now part of the provisioning templates.
Improved- Virtual Faxes: Now, it is possible to create a fax device with multiple email addresses.
- Sonata Billing: Now, the PDF reports support Hebrew and Arabic strings.
Fixed- Sonata Billing: It was impossible to calculate rates for numbers that contained the "*" symbol.
- Time Groups: Adding a new row with no values resulted in unexpected Time Conditions behavior.
- OpenVPN: It was impossible to enable the VPN server with the VitalPBX firewall turned off.
- Provisioning: The wallpaper parameters for Yealink phones were not well applied. Hence, the wallpaper image didn't get shown on the phone.
- Provisioning: In some conditions, the provisioning didn't load the wallpaper image.
- Virtual Faxes: Incoming faxes were arriving via email without attachments.
- Provisioning: Now, the logo set in the branding add-on is the placeholder for the Wallpaper entry.
- Extensions: Importing extension devices with an incorrect profile caused Asterisk to crash. Now, the profiles got validated under the hood before generating the configuration files.
- Dashboard: In some circumstances, the time displayed in the dashboard differs from the time shown on the server.
- Extensions: Revert the functionality of supervising the DND along with the devices' status.
- Import Extensions: Importing extensions with a different delimiter did not work, particularly on macOS devices.
- CID Lookup: The use of phonebooks as a CID Lookup source did not work.
- Log File Viewer: In some circumstances, it was not possible to load the log files.
- Microsoft Teams: Attended transfers from MS Team users were not possible.
3.1.2 R1
We are more than glad to announce VitalPBX 3.1.2 R1. This version introduces Asterisk 18.6.0, improvements and fixes for the provisioning add-on, a couple of new features, and much more.
Added- Provisioning: now, it is possible to upload the phone's wallpapers in the provisioning templates.
- Provisioning: now, it is possible to overwrite an existing template with the base template content; this is useful when a new version of the provisioning add-on is released and includes fixes related to a specific phone model template.
- Provisioning: now, it is possible to define the default phones' GUI password in the provisioning templates.
- Inbound Routes: a new field labeled as "Drop Anonymous Calls" is now available. Enabling this option will drop any anonymous call coming through a specific inbound route.
- Sonata Billing: now, it is possible to generate reports by call categories.
Improved- IVR Stats: now, the caller and callee info is stored by the IVR Stats to avoid empty values when calls get forward to announcements, queues, etc.
- Portal: now, the date range on the CDR comes configured to today's calls.
- Sonata Recordings: the CSS styles come updated for better performance on iOS devices.
- Sonata Billing: the CSS styles come updated for better performance on iOS devices.
- Sonata Switchboard: the CSS styles come updated for better performance on iOS devices.
Updated- Core: Asterisk comes updated to version 18.6.0.
- i18n: new translations updates for the German(Deutsch) language.
Fixed- Sonata Switchboard: now, the call's origination from the switchboard doesn't generate multiple entries in the CDR.
- Extensions: the image icon in QR codes got removed to avoid scanning issues with some mobile devices.
- Extensions: the DND was part of the extensions hints producing invalid states values. In previous versions, the extensions hints with devices disconnected from the server got shown as Idle instead of Unavailable.
- Queues: it was impossible to log in on queues in systems with more than two hundred queues.
- Core: in some cases, it was impossible to play audio files from the CDR report.
- Phone Books: correct the URL generated for retrieving phonebook contacts.
- Provisioning: repair the URL generated for provisioning.
- MS Teams: fix transfer feature for MS Team users.
- Provisioning: some language values for Alcatel H2 phone models were invalid.
- Provisioning: in the previous version saving the HTTP Settings form generated an unexpected exception.
3.1.1 R3
We are pleased to announce the third release of VitalPBX 3.1.1. This version iron out various issues, add some improvements, and introduce the Deutsch language for the GUI.
Added- GUI: Now, the GUI comes translated to Deutsch.
- Provisioning: the notify command for restarting Atcom devices is now available.
Improved- Provisioning: Now, it is possible to define the HTTPS port in the server settings.
- Provisioning: Use a static name for Atcom's firmware.
- Core: now, the mobile logo is shown on the login page when accessing the PBX GUI from a mobile device.
- Core: now, the double click is not allowed when submitting forms; This is to avoid saving duplicated items, especially in the extensions module.
- Sonata Billing: now, it is possible sharing carrier rates with tenants.
Fixed- Provisioning: the provisioning URL showed the public IP instead of the domain name.
- Provisioning: the DSS Keys for various phone brands and models got generated in the wrong key positions.
- Provisioning: it was not possible to provision SNOM devices.
- Extensions: unlinking devices from extensions made the devices drop-down filled up with all the device items in the tenant.
- Extensions: it was impossible to save extension info in the users' portal when using multiple email addresses.
- Hot Desking: the emergency CID was unshown when editing a device.
- Hot Desking: the module allowed creating devices with duplicated names.
- Maintenance: recordings were not getting converted due to a path issue.
- Sonata Billing: total column in reports returned zero when using a numbering format different from the USA numbering format.
- Sonata Recordings: the user profiles were unshown on tenants.
3.1.1 R2
We are glad to announce the second release of VitalPBX 3.1.1. This version carries off some issues related to provisioning, paging & intercom, dial-plan, and others. It also includes new feature codes and some core improvements. We want to thank our customers and the community for their contributions to the VitalPBX Project by reporting issues, buying licenses, and suggesting improvements and new features.
Added- Feature Codes: a new feature code to perform anonymous outbound calls on demand is now available. The default code for using this feature is *88 plus the number to be called.
- Feature Codes: a new feature code to do two ways audio paging is now available. The default code for using this feature is *83 plus the number to be page.
- Switchboard: a new widget called "Extensions Summary" is now available.
Improved- Switchboard: the extensions widget now keeps the order of the selected items.
- Sonata Billing: a new field is now available in the report builder that allows defining if the ringing time must be considered or not as part of the duration of the calls.
Fixed- Hot-Desking: some variables did not get configured after the confirmation audio; this was producing that users who hanged up before the confirmation message finished would not get their hot desking devices configured.
- Virtual Faxes: sending any fax was generating an error notification.
- Queues: after switching the agent announcement from existing audio to none, the previous announcement was still playing.
- Paging & Intercom: the auto-answer for paging devices was not working with the follow-me diversion enabled.
- Phonebooks: some MySQL migrations remained after uninstalling the phonebooks add-on; this produced issues when someone uninstalled and then reinstalls this add-on.
- Provisioning: it was impossible to restart Alcatel devices from the provisioning form.
- Provisioning: the line value of the Flying Voice' DSS keys started from zero instead of starting from one.
- Provisioning: the remote phonebook items were not being created for Flying Voice devices.
- Provisioning: it was impossible to retrieve configuration files for some Alcatel phones models.
- Switchboard: it was impossible to monitor extension with IAX2 devices.
- Sonata Billing: some summary reports returned all fields with zero value when using the CSV format.
3.1.1
We are pleased to announce VitalPBX 3.1.1; this version irons out issues reported by Customers and VitalPBX's community. Additionally, this version includes significant improvements and additions in modules like the provisioning add-on, the API, and others.
Added- Asterisk: this new version of VitalPBX comes with Asterisk 18.5.1.
- Mini HTTP Server: now, it is possible to define the limit of HTTP/WS connections.
- Parking: now, it is possible to enable recordings per parking lot.
- Outbound Routes: now, it is possible to enable call recordings at the outbound routes level.
- Trunks: now, it is possible to enable call recordings at the trunks level.
- API: now, it is possible to create, delete and update tenants. Additionally, two new API endpoints were added to add or delete the inbound numbers of a specific tenant.
- API: a new set of endpoints are now available to retrieve information from Route Selections, Outbound Routes, Roles, and Users.
- Provisioning: the phone models H3G, H3P, and H6 from Alcatel Lucent are now available for provisioning.
Improved- API: now, it is possible to define the Caller ID name and number in the click-to-call endpoint.
- Phonebook: now, accessing a phonebook URL through the browser returns "Forbidden" instead of "Not Found" to avoid confusion.
- CDR: now, the CDR report use as default range the current date instead of the whole month.
Fixed- Provisioning: the DSS keys on Flyingvoices templates were defined wrongly.
- Provisioning: saving Alcatel Lucent devices was producing unexpected exceptions.
- Provisioning: images for Alcatel Lucent and Flyingvoice devices were not loaded.
- Provisioning: the activation license was not read correctly.
- Extensions: the follow-me feature didn't work when enabling the auto-answer option.
- Bulk Extensions: when creating extensions with the bulk extensions add-on, the internal caller ID was used as the emergency caller ID.
- GEO Firewall: the previous list of IP addresses was blocking addresses of allowed countries.
- Feature Codes: the attended and the blind transfer were disabled in the previous version. This issue was also affecting features and calls that required the caller to press the hash key.
- GUI: module titles were displayed wrong when using dark mode with the multi-tab feature disabled.
3.1.0
We are pleased to announce VitalPBX version 3.1.0; this version iron out issues reported by our customers and the community, introduce some improvements, and the most exciting, introduce the long-awaited Microsoft Teams add-on.
Added- Microsoft Teams: the new add-on for ms-teams integration is now available.
- Ring Groups: a new option for adding/removing the no release flag(/n) from the ring groups members is now available. Disabling this option can help with transfer issues in some phone brands like Polycom.
- API: add an endpoint to retrieve the faxes logs.
- API: now, the endpoint for sending faxes returns the log IDs.
- Virtual Faxes: now, when sending faxes by GUI or API, it is possible defining the resolution, max retries, and retry time.
Improved- Users: users with the "Super Administrator" role are now considered super admin users. Before, it was impossible creating super admin users.
Updated- Asterisk: Asterisk comes updated to version 18.4.0.
Fixed- Certificates (Let's Encrypt): validate if the private key matches with the certificate before replacing the current certificate files; this avoids the HTTP service crashes when the system cannot renew the certificate.
- Backup and Restore: it was impossible restoring backups in the previous version.
- Queues CallBack: skip "join announcement" on queues to avoid calls get answered by the announcement instead of an agent.
- Tenants: deleting a tenant was throwing an unexpected exception.
- API: The phonebook endpoint didn't return the email address of internal contacts.
- Tenants: the "Concurrents Call Limit" field was getting saved but not read in the GUI.
3.0.9 R5
Added- Trunks: now, it is possible to define the list of allowed identifiers for a trunk endpoint. Additionally, it is possible defining a match header parameter to match endpoint by headers.
- PJSIP Settings: A new field that allows defining the order to match endpoints on incoming requests is now available.
Improved- Virtual Faxes: the error information got while sending or receiving a fax is now stored and shown as a tooltip in the fax viewer module.
- CDR: now, the PDF reports show the APP name configured in the branding module.
Fixed- Dashboard: the IAX2 registration counter was not showing the registered device after the last VitalPBX update.
- Virtual Faxes: incoming faxes without CID name or number were not stored rightly.
3.0.9 R3
Added- Virtual Faxes: this add-on has been rebuilt to get rid of Hylafax dependencies in favor of native Asterisk functions/applications (SendFAX() - [res_fax], ReceiveFAX() - [res_fax]). With the new version of this add-on, the "General Settings" module has been removed, and the tab in the "IAX Reports" module for monitoring the devices state is now removed as well.
- Virtual Faxes: now, it is possible to customize the email templates for received faxes and error notifications of sent faxes.
- Recording Management: now, it is possible to define a dialing code to re-record any existing audio through the phone.
- Branding: now, it is possible to define different logos for the dark mode style.
- PJSIP Profiles: three new fields are now available for handling the expiration time of endpoints.
- Trunks: a new field is now available to define a prefix to append before sending the call to the provider.
- Provisioning: the Grandstream WP820 is now listed as a supported model.
- Provisioning: The key type "BLF/NEW Call" is now available for Fanvil phones.
Improved- IVR Stats: the stats reports now only list the IVRs with the option "Generate Stats" enabled.
Updated- GEO Firewall: the list of IP addresses got updated for all countries.
Fixed- Extensions: the portal feature now comes disabled by default (for new installations only). Additionally, extensions with this feature enable and using the extension number as a password will be updated with a stronger password to avoid security risks.
- Voicemail: a malformed email was sent when the "MP3 Attachment" was enabled on the "Voicemail General Settings" module, and the extensions have the voicemail attachment disabled.
- Voicemail: passwords did not save in Asterisk files, so they got overwritten in multi-tenant environments after applying changes.
- PhoneBooks: the home number is getting saved now as expected.
- Active Calls Reports: the IAX2 calls are now displayed rightly.
- ClearlyIP: the unexpected exception thrown while synchronizing the emergency locations is solved now.
3.0.8 R3
Added- Trunks: now, it is possible to disable from the GUI the hangup audios played after getting an abnormal hangup cause.
- Ring Groups: a new parameter to enable or disable skipping busy extensions is now present in the GUI.
Fixed- Dial-Plan: extensions without external CID defined were sending the internal CID when the Outbound Routes or Trunks have the "Overwrite CID" parameter set to "If not provided."
- Parking Lots: it was impossible creating the same parking lot range in different tenants.
3.0.8 R2
Added- Provisioning: the brand "Aastra/Mitel" has been added as part of the supported brands.
- Queues Callback: now, it is possible to define the priority that queued calls will use when entering the queues.
- Switchboard: the Portugues(pt_BR) language is now available in the application's GUI.
Improved- Features: now, when the DND feature is enabled, the extensions are set as "IN_USE" to avoid delivering calls from queues to those agents with the DND feature turned on.
- Switchboard: the project's head libraries are now updated to improve the application performance.
- Sonata Recordings: now, it is possible selecting the desired extensions during the synchronization.
Updated- I18n: we have updated the Russian and Italian languages.
Fixed- PJSIP Reports: the contacts' status doesn't show correctly in un-multi-tenant environments.
- Backup and Restore: the restore functionality didn't work when restoring backups with external add-ons included(Switchboard, Stats, Recordings, VitXi, etc.)
- Switchboard: various fixes for the better functionality of widgets like extensions and queues are now applied.
3.0.8
We are more than glad to release a new version of VitalPBX, which brings some remarkable changes, improvements, and fixes.
Added- A short key (a) is added to run asterisk -rvvvvvvvvvvvv from the ssh console. Thanks to Federico Pereira for his contribution.
- Asterisk: The asterisk version has been upgraded to version 18.3.0.
- Linux CLI: A new command has been added for resetting the Apache configurations. vitalpbx --reset-apache-conf
- VitalPBX Communicator: This add-on has been marked as an extended feature
- Backup & Restore: The possibility of optionally backing up and restoring the Sonata Add-ons have been added.
- Video Conferences: The default URL for the video conference server has been changed to " https://meet.vitxi.org/"
- Phonebook: Now it is possible to export external contacts to CSV format.
- Phonebook: Now it is possible to add up to 3 phone numbers for external contacts.
- Extensions: A new “Contact Info” tab is shown when the phonebook add-on is installed. This tab allows adding additional information for the internal phonebook.
- API: Several endpoints have been implemented on API, most of them focused on Call Center features, like login/logout, pause/un-pause from queues. Nevertheless, we have added an endpoint for sending faxes right from the API.
- Switchboard: A new widget for embedding URL has been added, which might be useful for showing internal applications like CRM, customers’ info, and others.
Improved- Queues Callback: A higher priority is assigned to any caller coming from the queue callback.
- Queues Callback: The field for configuring the queued calls ring time now is an open field instead of a dropdown.
- Queues Callback: Queued callers are retrieved in ascending order
- Provisioning: Now, the provisioning module shows the URL to be used for option 66 on routers or DHCP servers.
- Hot Desking: Now it is possible to use the “*90” feature code to log into a hot-desking device.
- Core: Now, the database configurations for the MariaDB/MySQL “root” user and VitalPBX user are read from a plain text file located at “/etc/vitalpbx/database.conf”. This file adds more flexibility at the moment of installing the VitalPBX database on a different server.
- Branding: HTML tags like “description”, “application-name”, “theme-color” and others are now taken from branding add-on.
Fixed- Hot Desking: it was using the wrong hints for retrieving the devices’ status on MT environments.
- Provisioning: Folders for storing provisioning files on a Multi-Tenant environment didn’t have the right permissions.
- MultiTenant: It was not possible to switch between tenants when using mobile devices.
- Import Extensions: It was not possible to import extensions when the column “followme-enabled” was undefined/empty.
- IVR Stats: The stats reports were not showing the CDR data for some calls or destinations.
- GUI: It was not possible to read QR codes when using dark mode.
- Maintenance: The conversion process of audios from “wav” to “mp3” was not converting all the recordings.
- Maintenance: The cleaning process for CDR data didn’t consider the tenant. This was producing that data from other tenants was deleted in an invalid range of time, ignoring the module configurations.
- Provisioning: The command for rebooting Fanvil’s phones has been changed.
- Provisioning: Internal fixes and improvements have been added for Alcatel and Flying Voice brands.
2.4.2-7
A new release of VitalPBX 2.4.2 has been released. This version comes to stabilize VitalPBX v2 and its addons. Next we will list the changes included on this new release.
Improved- Queues Callback: Now, there's a logrotate item to delete old logs to avoid disk get full of logs
- Queues Callback: Starting and sleep message of queues callback service has been suppressed to avoid disk get full of logs
- Time Conditions: Now, the script for normalizing/switching time conditions is executed every five minutes. This change has been made to avoid the server get overload when there are too many time conditions to be processed.
Updated- Maintenance add-on: The methods for converting recordings from WAV to MP3 has been updated. In previous versions, the methods for converting recordings were not working in some cases.
- Voicemail: Default charset has been set now to UTF-8
2.4.2-6
Here’s a new update for VitalPBX 2, that includes various fixes regarding PJSIP Devices, Multi-Tenant, and more. Below, we will list the changes on this release.
Improved- Extensions: Create PJSIP devices with two contacts by default.
- Extensions: Remove existing contacts when trying to connect a new device to an account that has reached the maximum number of allowed contacts.
- Backup: Now, the asterisk dialplan is included as part of the backup. This has been made with the intention to preserve any dialplan customization in case of restoring in a new PBX.
- Security: Asterisk Filters, the Fail2Ban’ filter for matching asterisk attackers has been updated in order to interpret in a better way all the asterisk security events.
- Security: Ban Actions, the ban action for jailing attackers has been customized to avoid being overwritten by the Firewall updates.
Fixed- Voicemail: In a multi-tenant environment, the voicemail password gets overwritten when an extension with the same number as in other tenants updates its password by phone.
- System Misc: Time zones updates from GUI were not applied to asterisk nor apache, this was producing that the BLF for time conditions and time group matching didn't give the expected results.
- Features: Spy features didn’t work as expected when the extension to be spied had more than one device.
- Trunks: It was not possible to create custom trunks if not DAHDI devices were present.
2.4.2
We are glad to announce the release of the new update: VitalPBX 2.4.2, this version solves various issues reported by the community, and also introduces new features on add-ons and core.
Added- EPM: Add Fanvil X6U and X210
Improved- Features: Add quick mode on the hot desking feature, for login/logout. (*80*1 -> Login, *80*2 -> Logout)
- Portal: Added the “Click to Call” action on the module “My CDR”. Only for external calls
- DialPlan: Send calls to voicemail destination when DND is enabled on the called extensions. If the called extension has not voicemail enabled, then, the call will be sent to the configured DND announcement.
- DialPlan: Only send calls to busy voicemail, when the call result returns busy.
- Trunks: Now, it is possible to create a trunk without a technology profile, this is for avoiding unexpected behaviors due to the profile.
- Branding: The theme name (that is shown in the “users” Module), now is labeled according to the app name configured in the branding module.
- Branding: Allows updating the meeting URL for video conferences.
- Phonebooks: Now, it is possible to add/edit/delete contacts from external phonebook through the GUI. This is an extended feature, so, it will only be available if your current installation has any license activated (donation, any add-on, or any subscription). API:
- API: Improve click to call endpoint
- API: Try getting the caller Class of Service when not provided.
- API: Validate if the Class of Service ID provided belongs to the tenant requested
- API: Allow using tenant id or tenant path in the API requests
- Security: Improve asterisk filter for matching attackers
- Security: Fix filter to avoid DDoS attacks over SSH port
- Dynamic Routing: Fetch any call when the option “Only Keep Missed” is disabled
Compatibility- We FULLY RECOMMEND updating your add-ons after updating VitalPBX. This is to keep compatibility, and always have the newest features and fixes.
Fixed- Extensions Status: An unexpected error was received when trying to get the extension status of an extension with multiple devices assigned to it.
- Music on Hold: The mime-type of the uploaded files were not validated as expected.
2.4.1
We’re glad to announce a new update for VitalPBX, version 2.4.1. We’re releasing this version to stabilize the previous version and include some new improvements and fixes.
Added- Communicator add-on: Added Multi-Tenant capabilities. To allow these modules to be used by other tenants, you must modify the tenant users’ profiles, and allow the communicator modules.
- Communicator add-on: Add missed softkey (Dialer Pause, Open Form) on the “Softkey Profiles” module.
- Virtual Faxes add-on: Added Multi-Tenant capabilities. Now, you will be able to share the virtual faxes devices with other tenants, for this, you must allow the desired modules (Fax Devices, Fax Viewer, Fax Sending) on the tenant users’ profiles.
Improved- Queues: Set members type to dynamic by default when creating new queues.
- Certificates: Allows Let’s Encrypt to challenge over HTTP, even when the option “Force HTTPS” is enabled.
- Extensions Status: Show user agent as part of the device info.
- Dashboard: Use a reverse proxy to provide dashboard information without open any additional port. So, with this update, it is not necessary to open ports 3000, and, 3005 for the dashboard.
- Branding: Now, the “APP Name” field value, is used as an application name through the GUI, not only as a tenant name. (only available for the licensed version)
- Branding: Now, the mobile logo will be used as an image placeholder and for the modules menu. (only for the licensed version)
- Virtual Faxes: The application name will be used as a signature for email faxes.
- Virtual Faxes add-on: Show current fax status on fax devices when editing.
Updated- i18n: Updated Italian translations
Fixed- Virtual Faxes add-on: Fixed the fax filtering by the device on the fax viewer
- Dashboard: The dashboard was not showing info when using uncommon ports to access the Web GUI.
- Paging: The “Skip Busy” option was not working as expected.
- Parking: The parking application was not playing the courtesy tone at all.
- Trunks: IAX2 trunks were not loading the register string after saving. This produced that the register string gets erased after updating the trunk configurations.
2.4.0
After some time of hard-work, we are glad to announce our new update: VitalPBX 2.4.0, a major release that includes all the changes announced on the RC version 2.3.9, and other important changes, especially, on security and certificates (Let’s Encrypt).
Added- Outbound Campaigns (Dialer): We are introducing a new commercial add-on named “Communicator” that allows creating simple outbound campaigns in conjunction with the VitalPBX Communicator Softphone. This add-on deprecates the “Sonata Communicator” module, so, after installing this add-on the “Sonata Communicator” will be uninstalled automatically.
- Security: Now, VitalPBX comes with some IP sets to block the most common attackers (VoIP, SSH, etc.) by default. These IP sets get updated automatically daily at midnight through a CRON job.
- Intrusion Detection (Fail2Ban): Added new jails to protect PBX server against HTTP scanners.
- OpenVPN: Now, it is possible to generate OpenVPN certificates for Fanvil phones (You must update the OpenVPN add-on from add-ons module on VitalPBX).
- EPM: Add upgrade server options from Fanvil’s X4 models
- DialPlan: Add intercome headers for PJSIP devices
- Multi-Tenant: Add field to share trunks to be used as emergency trunks on secondary tenants.
- Trunks: Add “Contact User” parameters on PJSIP trunks.
Improved- Paging & Intercom: Now it is possible to schedule paging actions, and play an announcement. This is quite useful for schools (bell system), automation announcements on the office, airports, train stations, etc.
- API: Now, it is possible to perform click to call actions through VitalPBX’s API. Useful for CRM integrations, or simply, add click to call option from any platform.
- Time Conditions: Now, it is possible to switch the time conditions status (Temporarily or Permanently) using a toggle code, or the GUI. Also, it is possible to monitor any time condition using a BLF key.
- API: Add new endpoints to retrieve class of services, and updating voicemail info. Also, the documentation has been updated.
- i18n: Update Spanish and Russian Translations
- Firewall: The firewall has been configured to don’t use pre-routing table for blocking SIP scanners.
- Firewall: The SIP scanner “pplsip” now comes blocked by default.
- Class of Service: Now, on secondaries tenants, the shared route selection items, can be assigned as part of the class of services. This to make easier the call routing through the main tenant.
- Backup and Restore: The Backup feature has been improved in order to make possible to backup big sets of recordings.
- Communicator: Allow to create campaigns with duplicated numbers.
- Portal Users: The portal user’s info, like the role, gets overwritten when the extension info is updated.
- Follow Me: Now, if the option “Prompt Callee” is enabled, only the external numbers will be prompted to accept or reject the call, it will no apply for internal numbers.
- Firewall: Now, the firewall will not be restarted when updating the attacker’s blacklist, so, these rules will be load in memory until the firewall be restarted by the user.
- Backup and Restore: Avoid backing up non-existing folders to avoid unexpected exceptions during the backup process.
- Multi-Tenant: For tenants name to be alphanumeric
- Virtual Faxes: Use as “From” header the “From” parameter of the email settings module when sending fax emails.
- DialPlan: Now, it is possible to directly enable/disable the DND feature using the following format: *66*1, or, *66*2, where *66 is the DND feature number, and the number 1, means to enable this feature, and the number 2, means to disable the feature.
Updated- Certificates: We have updated the script for generating let’s encrypt certificates. So, now, we are using the new mechanism provided by the Let’s Encrypt developers.
- Core: Update translations
- EPM: Update P-values for Grandstream GXP21XX
- Geo Firewall: The country zones files have been updated.
- Emergency Calls: When a call is performed to an emergency number, the Emergency CID of the caller is used, even when the trunk has the “Overwrite CID” option enabled.
Fixed- Multi-Tenant: The hints generated for extensions on secondaries tenants didn’t work with customized tenant prefixes.
- Paging, and Intercom (Auto-Answer): The heders to perform auto-answer action on phones were not working for devices using PJSIP protocol.
- Trunks: It was not possible to send custom headers when using the PJSIP protocol.
- Time Conditions: The BLF status gets stuck when the database connection gets lost.
- Virtual Faxes: It was not possible to receive faxes that came from a sender without CID Name provided.
- EPM: Fix time zone generation for Fanvil’s phones
- DialPlan: The auto-answer feature is not enabled when the callee has a state different from NOT_INUSE.
- IVR Stats: The date and time shown on the IVR Stats report now are shown according to the time zone of the current user.
- IVR: When using the direct dial option, the call returns to the IVR in case of an invalid number being input, no matter what class of service is being used.
- System Misc: The system misc were not showing the disk partitions on virtualizations like Proxmox.
- Inbound routes: The calls were not recorded when the destination or diversion was an external number.
- Follow Me: It was not possible to use the follow-me as a destination on secondary tenants.
- Trunks: Some phone brands displayed “s” extension during outgoing calls when the called party picked up the call.
2.3.9
We’re glad to announce VitalPBX 2.3.9, our latest release candidate version. This new version includes various enhancements on Security, PJSIP Trunks, Endpoint Manager, and more! Also, includes various fixes reported by our partners and the VitalPBX community.
Improved- Trunks: Now, the DTMF parameter can be configured directly from the main trunks section.
- Trunks: Now, it is possible to assign a technology profile, to easily share common parameters and settings between all trunks with same technology.
- Queues Callback: When the option “Dial Agents First” is set to yes, the call will not be sent to the customer until the dialed agent answers the call.
- Queues Callback: Now the queues callback items can be used as destination, but only if the field “Callback Queue” has a queue defined.
- Endpoint Manager: Now it is possible to provision PJSIP devices.
- Endpoint Manager: Now it is possible to provision devices that belong to other tenants
- Conferences: New video modes have been added. This are introduced on latest version of asterisk.
- Time Conditions: Now, it is possible to monitor the time conditions status trough a BLF key.
- Time Conditions: Now, it is possible to override temporarily/permanently the time condition status trough the GUI or by dialing a toggle code.
- Paging: Now it is possible to define an announcement to be played to all paged participants. Depending on the configured mode for the paging items, the call could be hanged up or not after playing the announcement.
- Paging: The capability to schedule paging items has been added. This new feature comes as an add-on, so, to install it you must go to the Linux console and execute this command: yum install vitalpbx-paging-pro
- PJSIP Trunks: A field to customize or manually define the AOR contacts for a PJSIP trunk has been added. This is useful when a provider has multiple IP addresses for outgoing calls.
- PJSIP Trunks: Now it is possible to customize Server/Client URI for outbound registrations.
- Intrusion Detection (Fail2Ban): Now, the banned time is handled entirely by the intrusion detection tool, on previous versions, the banned time was handled by the ipset tool.
- Intrusion Detection (Fail2Ban): Now, brute force attacks to the EPM (Endpoint Manager) are being blocked.
Fixed- Queues: Calls to queue members with the follow-me option enabled made it so that calls get hanged up after returning from a ‘no answer call’, this avoided getting to the final destination setting or continue trying with other agents.
- DialPlan: Some phone brands were showing extension “s” on display after the dialed number answered the call.
- Trunks: Some invalid parameters were added during the generation of trunk configurations.
- GUI: In some cases, the help tooltips didn’t disappear, forcing the users to refresh the page to get rid of the balloon.
2.3.8
After some time of hard work fixing issues, improving existing features, and adding new features, we are glad to announce the first release candidate version for update 2.3.7. This version is intended for everyone who has signed up for the beta test program, so, this version should not be used in production environments.
Added- API: Added endpoints to handle voicemail and phonebooks actions.
Improved- PJSIP: We’ve added important parameters on PJSIP profiles required for cloud, WebRTC, and trunking environments.
- Ring Groups: Now it is possible to allow or not diversions for extensions listed on ring groups.
- Parking Lots: It is possible to edit the parking lots’ code, including the default one.
- Follow Me: Initial Ring Time, now it is possible to define a time in seconds to ring the primary extension before calling to members in the follow-me list.
- Follow Me: Status, it is also possible to enable/disable follow-me feature right from the extensions dialog on the follow-me tab.
- Queues CallBack: PIN Sets, calls originated from queues callback now skip the PIN sets in order to avoid calls get blocked.
- Queues CallBack: Prompts, now it is possible to change the message that caller hears after finish scheduling a callback. Default Message: “Thanks, you will be called back soon”.
- Extensions: A new field labeled “CallerID On Diversions” has been added to the extension’s dialogue, under the advanced tab. This allows you to define if during a call forward, the CID info sent will be the one provided by the caller or the CID info from the extension that has the call forwarding.
- DialPlan (Call Recordings): Now the call recordings name are more descriptive to easily locate them. The current format is TIME-CALLTYPE-SRCAPP-CALLER-CALLEE-UNIQUEID, e.g: 105634-OUT-RG235-2000-0558271-1569430594.649.wav
- Inbound Routes: Now it is possible to route a DID range to an extension number. For example, if I have the DID range from 1 (305) 6724 7100 to 1 (305) 6724 7200, it is possible to get the last four digits of the DID and route it to the corresponding extension.
- System General: We’ve added a new setting on the system general module that allows you to define if the login panel that is shown when the Sonata add-ons get installed will be shown or not.
- Tenants: Now it is possible to share the route selections items as outbound profiles for other tenants, this way you will not need to create tenant trunks for using main tenant as a gateway, and not need to re-define outbound routes per tenant.
Updated- Geo Firewall: The IP addresses per country has been updated.
- I18n: The Spanish and Russian translations have been updated
Fixed- Security: An important security issue has been introduced on Centos 7.7 regarding firewall-d, after a full Centos update, the firewall-d blocks everything and refuses to load the defined VitalPBX’s rules with the following error message: “‘Rich_Destination’ is not iterable“. We’ve fixed this issue compiling our own version of firewall-d with a patch to fix the issue. We’ve included this new version of firewall-d on our repos to avoid this issue on new or upgraded VitalPBX’s installations.
- Ring Groups: Forwarding/Transferring calls coming from a ring group to another internal extension were not reaching features like voicemail or diversions configured on the forwarding target.
- Core (Password Auto-Complete): The saved passwords in browsers produced that password fields on different VitalPBX forms get auto-completed with the saved info, even when the saved info has no relation with the form. This behavior produces that in extensions (devices & portal sections), users, and other dialogues with credentials got unexpectedly overwritten.
- Multi-Tenant (Trunks MoH): The music on hold configured for trunks on secondary tenants got overwritten by the main tenant.
- Geo Firewall: Fix compatibility with Mozilla Firefox
- Personal Assistant: The dialplan for the personal assistant feature was not working as expected. Some options produced that the incoming call routed to this feature got dropped instead of sending to the defined destination.
- Trunks: The dialing manipulation rules with a pattern defined, but without prefix nor prepend field, were producing infinite loops.
- Follow-me: It was not possible to call multiple extensions with the follow-me feature enabled from applications like ring groups or queues, so, the follow-me dialplan was refactored in order to allow such behavior.
- Bulk Modifications: When a bulk modification was performed some required data (for the dialplan) was not generated. This caused old information to be sent at the time of making a call.
2.3.6
We are excited to announce the release of our new update VitalPBX 2.3.6. This version presents new add-ons, features, and various bug fixes. Thanks to all our beta testers for reporting issues, suggesting improvements, and help us deliver a very stable version to all the VitalPBX community.
Added- Queues CallBack: With the Queues CallBack module, you can reduce customer frustration by minimizing their time spent on hold. This feature provides callers with the option to request a callback from the next available agent instead of waiting on hold, allowing them to disconnect from the call and tend to other things.
- Geo Firewall: The Geo-Firewall add-on module for VitalPBX adds a new layer of security for your PBX. Allowing you to block any unwanted requests from countries you know you have no business with.
- Dynamic Destinations (Conditional Routing): With this add-on, you will be able to route calls based on the CID Number. You may query a database or an API and according to the response, routing the call to one destination or another.
- Asterisk Sounds: Now is possible to install the Hebrew sound prompts from the Asterisk Sounds module
Improved- Phone Books: It is possible to create external phone books and use them in all the supported brands of devices.
Fixed- Users Portal: When a portal user was updated from the user’s dialog, the assigned extension was getting removed from the user.
- Tenants: The CID Info of secondary tenants was overwritten when the main tenant is used as the gateway.
- Tenants: Some asterisk configurations were not created after creating a new tenant, producing some undesired behaviors, like blocked calls between extensions.
2.3.5
We are pleased to announce our new update for version 2.3.5 (Release Candidate Version) of VitalPBX. This version is intended for everyone who signed up for the beta tester program, so, this version should not be used in production environments.
Added- Ring Groups: A new field called “Answered Elsewhere” has been added to the ring group. This prevents the other phones to record a missed call when the call has been answered on a phone that is part of the ring group.
- Phonebooks: Added support for external phonebooks. This new version is only available for the RC version. To install it you may use the following command: yum install vitalpbx-phone-books -y, and for update it: yum update vitalpbx-phone-books -y
- Introducing the Queues CallBack Add-on: This add-on is only available for the RC version. This feature enables you to optimize your customer experience by offering callers the ability to request a call back based on your call center conditions. To install it you may execute the following command: yum install vitalpbx-queues-callback -y
Improved- Certificates: Now it is possible to add custom certificates through the GUI
- Dialing Restrictions: A new field has been added to the dialing restrictions rules form, this new field is for allowing to include advanced rules. This was added thinking in the case of Mexico, since as of August 3rd, 2019, Mexico’s numbering plan will become closed to ten digits. After this date, all phone numbers should be dialed in a ten-digit format, even for local calls (Mobile and Conventional Numbers). Due to this change, the task for limiting calls to mobile numbers in Mexican companies has become more complex.
- CID Modifier: Now it is possible to perform CID Modifications through different sources (Mysql, HTTP Request). This could be very useful for CID Masking or simply modifying the incoming CID info from a CRM or existing database.
- IVR: The invalid dial tries towards internal extensions dialed through the “Direct Dial” feature now returns the call to the IVR and respects the available invalid tries.
- Firewall: The HTTPS port for the Sonata Switchboard now comes allowed by default.
- CDR: The trunk from where calls are sent/received now is saved as part of the CDR for future reports and statistics.
- Hunting Groups: Used named call groups and pickup groups parameters so it doesn’t limit the number of allowed groups.
- Queues: Added support for Queues Callback. When the add-on Queues Callback is installed you will be able to select a Queue Callback.
- Directory Feature (411): It was not possible to use the directory feature on secondary tenants.
- CID Lookup: Now it is possible to use external phonebooks as a CID Lookup source.
- Virtual Faxes: Now, the fax devices password doesn’t contain special characters, because this may affect the connectivity.
- Fail2Ban: When the fail2ban database gets full, your server may experiment high CPU usage, so, for this, we have added a command to help you to clean up the database and normalize the CPU usage. To execute such command you may write down in the console: fail2ban-clean-db
- Music on Hold: It is possible to define a music group as default MoH, so, when you select the default MoH on queues, conferences, or any other module, instead of play the default asterisk sounds, it will be played the sounds defined in the moh group marked as default
- Branding: Now is possible to change the main tenant name from the branding add-on (Only available for PRO version). For installing this add-on in the RC version execute the following command in the Linux console: yum install vitalpbx-branding
- PhoneBooks: Now is possible to define a dial prefix on external phonebooks.
Updated- Asterisk: Introducing Asterisk v16.5.0
Fixed- Multi-Tenant: Some asterisk configurations were not created after creating a new tenant, producing some undesired behaviors, like blocked calls between extensions.
- Multi-Tenant: The CID Info of secondary tenants was overwritten when the main tenant is used as the gateway.
- Users Portal: When a portal user was updated from the user’s dialog, the assigned extension was getting removed from the user.
- Parking: The “parked” value has been replaced by “callee” in the “Courtesy Tone” field. Setting the “parked” value on parking configurations collapsed the parking driver on Asterisk.
- Tenants: When deleting a tenant with the user “admin” assigned, this user was getting deleted along with the tenant, leaving the system without admin access.
- Trunks: On environments with more than one trunk with the same providers the calls were sent to an invalid context. This avoided applying certain settings defined in the trunk.
- Dial Plan: When dialing to an unconnected PJSIP device the dial application crashed due to the empty value generated by the function “PJSIP_DIAL_CONTACTS”.
- Dial Plan: The Invalid dial tries were marked as answered calls.
- Extensions Status: The status of connected devices were not shown correctly on secondary tenants.
- Dynamic Routing: The script for checking the dynamic routing status was not working as expected. The calls were not sent to the desired destination.
- Destinations: It was not possible to use the trunks or outbound routes in another application other than inbound routes.
- Conferences: It was not possible to invite participants to a conference from a secondary tenant.
- Queues CallBack: The add-on installer didn’t install required database data, producing unexpected behavior on the queues module.
- Queues: The script for resetting the queues stats it was not working.
2.3.4
We are glad to announce the release of our new update: VitalPBX 2.3.4. In this release, we are introducing several improvements and features to Queues, Multi-tenant, CDR, and Security. Also, we resolved some issues reported by the community, customers, and partners.
Added- API: Introducing our new API with online documentation available. The development of this API will be in several parts, so, we will introduce more features and actions soon. This API comes with a module to generate API Keys for third-party applications.
- Queues: Mark Cancelled Calls as Answered, this is a new parameter (especially used when a queue is using the “Ring All” strategy) to avoid missed call notifications on the phone (if it is supported by the device.) when a call is canceled because it was answered to someone else.
- Firewall: Enable/Disable ICMP with this new parameter, it is possible to disable the ping requests on the PBX server.
- Tenants: This new field allows you to define to which tenants the user will have access
- Ring Groups: The ring groups dial plan has been improved in order to avoid the generation of duplicated entries in CDR.
Improved- CDR: The queues dial plan has been improved in order to avoid the generation of unnecessary or duplicated CDR entries.
Updated- Asterisk: We are introducing the latest available version of Asterisk (16.4.0).
- Sonata Switchboard: We are introducing the version 2.1.0 of Sonata Switchboard, which uses the latest API implementation from VitalPBX, and also comes with compatibility for Multi-tenant environments. You may update or install the Sonata Switchboard directly from Add-ons module on VitalPBX.
- Autofill: This parameter now comes enabled by default for new queues. With this parameter enabled, it makes sure that the waiting callers are connecting with available members in a parallel fashion until there are no more available members or no more waiting callers. This is probably more along the lines of how a queue should work, and in most cases, you will want to enable this behavior.
- Add-ons: Added backwards compatibility with the old licensing system.
Fixed- Import Extensions: The extensions importing were broken when the provided Class of Service in the CSV didn’t exist. The new behavior is to create a new CoS when the provided CoS doesn’t exist.
- Hunting Groups: The feature number (*08) to perform calls pickup was not generated.
- “Add/Remove Queue Agent” Feature: The prompts audios for this feature were wrong.
- Global Search: The global search was broken when users had access to the portal module but didn’t have an extension assigned.
- Certificates: The certificates folder and all the files generated inside had wrong permissions, this was avoiding the use Let’s encrypt certificates with Asterisk.
- Intrusion Detection (Fail2Ban): The configurations provided through the GUI was not applied due to a missed parameter.
- Intrusion Detection (Fail2Ban): Now the provided IP Addresses/Hosts are escaped in order to avoid collapsing the fail2ban service and the VitalPBX’s GUI.
- System Miscellaneous: The labels used on buttons to confirm if the PBX will be restarted or turned off had been modified with something more logical according to the action.
- Fax: It was not possible to send received faxes by email
- User Profile: It was not possible that the users update their preferences from the user profile
- Backup & Restore: It was not possible to perform backups on certain environments due to permissions issues
- Extensions: After deleting an extension, the devices were not removed from asterisk configurations
- Trunks: It was not possible to handle multiple trunks from the same VoIP provider on Multi-tenant environment
- MultiTenant: The tenant limitations were not applied at all
2.3.3
We are glad to announce the release of our new update for VitalPBX (2.3.3). This version comes to fix some bugs introduced in the previous versions and add more Multi-Tenancy features.
Added- SoftPhones Licensing Server: The newest version (2.1.0) of this add-on now is compatible with Multi-Tenant environments.
- Multitenant: Three new important features have been added to Multi-Tenant add-on:
- Allowed Outbound Routes: Allows you to define the routes that will be used when this tenant make calls through a tenant trunk pointing to the main tenant (This means that the main tenant can be used as a Gateway). Calls made to any other tenant than the main tenant will be sent through Inbound Routes definitions.
- Inbound Numbers: List of numbers/patterns belonging to this tenant. Calls that match with these numbers will be forwarded automatically to these tenant inbound routes. The configuration of these numbers takes precedence over the inbound routes definitions on the main tenant.
- Softphone Devices: It allows you to define how many Sonata Communicator Devices could be activated on a tenant. This option will be only visible if you have installed the “Softphone Licensing Server” add-on
- Core: Introducing the support for carrier and enterprise licenses
- Portal Users: The portal users are shown again in the user’s module.
Updated- Asterisk: Introducing Asterisk v16.3.0
- Intrusion Detection (Fail2ban): The fail2ban’s configurations definitions have been updated to improve the PBX security and performance
Fixed- Trunks: It was not possible to define custom SIP/PJSIP headers when creating trunks in text mode.
- Tenants: The list of available destinations was not showing when the administrator switching to secondary tenants.
- Certificates: Avoid generation of let’s encrypt certificates if the challenge is not completed.
- Web Server: Avoid breaking web server when assigning an invalid or non-existing certificate.
- Queues: The ringback tone on queues was not playing as expected.
- Voicemail: The attached voicemail was always sent in WAV49 format, instead of using the format configured by the user.
- Music on Hold: Due to wrong permissions on MoH folders, the selected MoH by the users was no playing as expected
2.3.1
We are glad to announce a new update of VitalPBX! This version comes to fix some issues introduced in the previous version and add some new features. Thanks to all of our community for reporting these issues and helping us improve VitalPBX.
Added- Outbound Routes: Now it is possible to define a CID per outbound route.
- VitalPBX Command Tool: Now it is possible to apply firewall configurations defined on VitalPBX from the Linux CLI (vitalpbx –apply-firewall).
Updated- Transfer Digit Timeout: Number of seconds to wait between digits when transferring a call
- Features Digit Timeout: Max time (ms) between digits for feature activation
- VitalPBX Command Tool – Check Integrity: The command to check the environment integrity now verifies the integrity of each tenant and set the right permissions and owner/group for the folders.
- Voicemail Settings: Now it is possible to customize the email’s sender name for voicemail notifications.
- Asterisk: Introduction of Asterisk v16.2.1
Fixed- Voicemail: The MWI for voicemail was not working as expected. We have compiled the latest Asterisk Version with the required patches in order to make this feature work again.
- Music on Hold: The default asterisk ringback tone was overwritten by music on hold when the MoH value was set to none.
- Music on Hold: The music on hold set up on extensions have overwritten any MoH provided for other applications (e.g.: Parking).
- Custom Recordings: The script in charge for the storage of custom recordings (made by phone) in the database was not working.
- Dial Plan (DND): The DND feature was not working as expected in Multi-tenant environments.
- Feature Categories: Only the first feature category items were retrieved for any other.
- Hot Desking: When a hot desking device was created or edited, the reload button didn’t appear as expected.
- Password Reset: The script for reset password was not working as expected.
- Music on Hold: The permissions for Music on Hold folder were not set in the right way.
2.3.0
Finally, the wait is over, today we are officially launching our new stable release, VitalPBX 2.3.0-1, this version comes to stabilize all the features announced in the release candidate (VitalPBX 2.2.2-1RC), and introduce some other features.
Added- {CIDNUM}: This variable will be replaced with the caller id number provided in the call.
- {HOST}: This, will be replaced with the host value defined in the outbound parameters.
- VitalPBX Command Tool: A new command has been added to our command tool, who allows you to analyze and fix issues regarding folders and files permissions. You may run this command in the following way: “vitalpbx –check-integrity”
- Task Manager Add-on: Add an option to enable or disable a task and add option to avoid send an email each time a task is executed
- VitalPBX Command Tool: Add command to fully update the PBX from Linux CLI (vitalpbx –update-pbx)
Improved- Music on Hold: The MoH class defined on extensions now is also used for Blind and Attended Transfer. Previously, the played MoH class was the default one instead of the defined in the extension.
- Users: For security reasons, the super admin users cannot be edited by any other users than himself.
- Outbound Routes – CID Pattern Matching: Now it is possible to match outbound routes by CID Pattern, this new feature adds a new level of flexibility and security for the outbound routes.
- Trunks – SIP / PJSIP Headers: Due that some providers require special headers for outbound calls like “P-Preferred-Identity”, we have added a new section under the Advanced tab where you will be able to define any required header for SIP or PJSIP trunks. You may use the following variables:
- Virtual Faxes Add-on: Improve virtual faxes behavior and functionalities.
- Core Improvements
Fixed- Users: It was not possible to visualize users marked as super administrators
- System Misc: It was not possible to update the system timezone
- Ring Groups and Multi-Tenant: It was not possible to use the same extension on different tenants
- Ring Groups: After the update, it was not possible to edit existing ring groups.
- PBX Report Status: Fix typo on a method to get active call channels through AMI.
- Outbound Routes: After the update, it was not possible to use existing outbound routes. All the routes were colliding
- Import Extensions: The SQLite database for extensions was not generated in the right way, not letting these extensions receive calls.
- DialPlan: Some dial plans were duplicated on Multi-tenant environments.
2.2.2
After a long time without any updates, we are glad to announce the first release candidate of for the new update of VitalPBX 2.2.2-1. This version is only available through the ISO, so, current installations will no be able to migrate to this new version until we make sure that everything is fairly stable.
Added- Multi-Tenant Add-On: This is one of the most important changes introduced in this version. Now, VitalPBX is able to handle multiple tenants in a single instance. Using a single instance for multiple customers cuts down operating costs significantly.
- Branding Add-On: This a simple but very useful add-on that allows you to customize the VitalPBX color, logos (Mobile and Desktop Version), browser title and more.
- i18n: VitalPBX is now available in the Italian language. Special thanks to Mr. Giovanni P., who helped us with these translations.
- reset-pwd [username]: Reset password for any user. if not user is specified, it resets the password for admin user (Main Tenant Only)
- build-db: Execute a series of scripts to build VitalPBX database (apply_patches)
- dump-conf: Dump Asterisk Configurations and re-build Asterisk DB (Main Tenant Only)
- View License: Get the current license for the add-on and to whom it’s registered
- Revoke: Remove the license from the current server to later move it on to another server.
- Reactivate: This action applies to add-ons that are handled by the number of Items and can be upgraded. e.g: Sonata Billing, Sonata Recordings, etc.
- SIP Domains: On this version, we introduce a new section on SIP Settings, under Security tab, named SIP Domains. When SIP domains are used, they provide enhanced security, because registrations will only be accepted when they come from an IP phone (or another SIP client) that is using one of the recognized domains. When Asterisk knows the identity of all its local SIP domains, this allows a higher level of security in the routing of SIP-to-SIP calls as well.
Improved- VitalPBX Command Tool: This new tool contains a series of commands to easily give maintenance to the VitalPBX installation. To invoke this tool you must use the following syntax: “vitalpbx COMMAND [command-options]“. In the future, we expect to add new functionalities, by now, the available commands are:
- Dashboard: Now, on the dashboard the Hardware and Software information is exposed. This information may help you to take actions (Upgrade RAM, CPU) depending on your current hardware, or even, ask for support, especially when you need to provide the PBX ‘s environment info (VPBX version, Kernel, etc)
- Password Strength Meter: The way to obtain the strength of a password has been improved and added in multiple places (Users, Extensions, Hot Desking, etc). This with the aim to provide an idea of how strong the used passwords are.
- Add-ons: Now, in the add-ons module, it is possible to execute various actions with the commercial add-ons that have a valid license active. The actions that you may execute are:
- Log Files Viewer: A new field named “Filter” has been added to log files viewer’s form to easily filter the log files content according to given strings or words.
Updated- Asterisk: On this version, VitalPBX has been compiled with the latest version of Asterisk (16.2.0).
Fixed- Feature Codes: It was not possible to search a feature code per name.
- Outbound Routes: It was not possible to keep the trunks order on the outbound routes module.
- Dial Rules: It was not possible to add multiple rules on the dial rules module.
- VitalPBX Logger: The VitalPBX logs were generating with the wrong user and group in some cases.
- Log files Viewer: It was not possible to read the content of any log files from the GUI.
- VitalPBX Monitor: When the Asterisks service was stopping for any reason, the monitor service increased CPU usage to the maximum.
- Domotic add-on: The hints for the domotic devices were not generated in the right way.
- Maintenance add-on: The executing state stays as “running” when an exception occurred, avoiding that the script is executed again.
2.1.1
We are glad to announce version 2.1.1-1, the new update of VitalPBX. This update is focused on resolving issues presented in previous versions, however, we always like to introduce new add-ons or features. That’s why in this version we include the maintenance add-on, a simple, but powerful add-on that will save you a lot of HDD space.
Added- Maintenance Add-on - This is a simple add-on with powerful settings that allows you to save space in your PBX
- Clear Oldest Recordings: This option allows you to define the maximum number of days that recordings should be retained, allowing you to keep only the most recent recordings
- Convert Recordings: This options allows you to enable the conversion of CDR recordings from WAV to MP3.
Fixed- Backup & Restore: It was not possible to restore external or internal backups.
- Class of Service: It was not possible to call extensions with a CoS who was marked as private, even if the CoS of callers were listed as allowed.
- CDR Reports: It was not possible to perform any kind of search on cdr reports when multi-tab option is disabled.
- RTP Settings: It was not possible to update the RTP settings on certain scenarios
- Custom Applications: The validation to determine if a custom application was being used as a destination was not performing in the right way.
2.1.0
We are glad to announce our new update: 2.1.0-1 of VitalPBX, who comes with many new features and amazing performance improvements, check out the list of changes below.
Added- Dynamic Routing (AutoCLIP Routes): This feature allows you to route missed or not completed outgoing calls to the original caller. When an extension user makes an outgoing call, the called party can call back extension user directly, with no need to go through the Inbound routes settings.
- PJSIP Trunks: Now it is possible to create trunks with PJSIP technology
- Custom Trunks: Now it is possible to create custom trunks, allowing you integrate technologies like OOH323
- PBX Reports – Status: Due to the introduction of PJSIP technology in the trunks module, a PJSIP registration section has been added to the PBX status report to monitor the Outgoing registration requests.
- Tabs: A small refresh icon has been added on each module tab to reload module in an easy and fast way
- Sonata Communicator: An add-on to centralize the Sonata Communicator settings and license has been introduced.
Improved- Performance: One of the most notable changes on this version is the speed at which the changes are applied from the VitalPBX GUI. It could be said that it is twice as fast as previous versions.
- AMI Users: The way to set write and read permissions to AMI users from VitalPBX GUI has been improved to be more intuitive and easy.
- Switchboard: The same certificate settings are applied to the Sonata Switchboard when a certificate is applied from the HTTP Server module
- Bulk Modifications (Extensions): Now it is possible to enable/disable diversion hints massively from the Bulk Modifications module.
- Voicemail Settings (Operator Destination): Now it is possible to define any kind of destination as the operator.
- Voicemail (No Password): Now it is possible to define if users who dial the direct voicemail feature will be prompted to enter their password or not
- CID Lookup (MySQL): Now it is possible to select MySQL as CID Lookup source. With this new feature, the end user will be capable to execute its own queries to any database to obtain the right CID information.
- CDR (CSV): Now the CDR data is saved in CSV format, this is done with the aim of avoiding data loss. If for some reason the CDR does not save the data in MySQL, a script can be executed to synchronize the data from a CSV file.
Updated- Translations: Spanish & Russian translations have been updated.
- Asterisk: Introducing the latest LTS version of Asterisk 13
Fixed- Class Of Services: When a Class of Service was established as private, and more than two Classes of Service were added as allowed, all local calls were blocked.
- Paging & Intercom: It was not possible to paging more than two devices at the same time.
2.0.5
We are glad to announce the release of the new update: VitalPBX 2.0.5-1, this version solves various issues reported by the community, and also introduces new features on add-ons and core.
Added- Trunks / Dialing Manipulation Rules: A new section has been included in the trunks module named “Dialing Manipulation Rules”, that allows you to manipulate the dialed number depending of the trunk. E.g.: Suppose you have two providers, both have emergency calls service, but the number to dial is different for each one, for the first provider you must to dial 933 and for the second one you must to dial 944. So, you can configure in your outbound route the 911 and replace this number depending on the trunk on which the call is dialed through.
Improved- Trunks / DID and CID from Headers: Now is possible to define if the DID or the CID will be extracted from the SIP Headers. This only applies for SIP trunks
- Blacklist / Pattern and Destinations: Now it is possible to define a blacklist number with a pattern and define a destination for it. Also, it is possible to disable/enable a blacklist item through the GUI. If no destination is defined for the blacklisted item a message will be played to the caller.
- SIP Settings / NAT: Now it is possible to define the NAT setting as a global parameter. If you want to use the global value for SIP devices/trunks, you must set NAT parameter to the “Default” value for them
- Paging / MulticastRTP: Now it is possible to make paging through the MulticastRTP channel. This new feature for paging can be used for: emergency broadcast service for fires, earthquakes, emergency broadcast services for hospitals, In a school setting, In the corporate setting; it could inexpensively replace costly PA systems requiring dedicated wiring, speakers, and amplifiers.
- Status Report: Now the Peers & Hints can be filtered easily
Updated- Security: The default fail2ban(Intrusion Detection) settings have been updated to secure the PBX more efficiently
- Language: Spanish and Russian translations have been updated
Fixed- Inbound Routes: The incoming routes were not generated in the right way when the DID field was empty
- Night Mode: It was not possible to change the night mode status or set the global mode status
- Voicemail: The voicemail configurations were not generated in the right way
- Destinations: The destinations for the “Terminated Call” option were not diverted to the defined location
- CID Lookup: The incoming routes with a CID Lookup assigned were broken when the defined CID Lookup server was down
2.0.4
After some time, we are glad to announce a new update for VitalPBX which comes with some important improvements and some minor fixes. Also, on this version, we are introducing the new OpenVPN add-on.
Improved- Trunks in Text Mode: Due to many requests about configuring trunks in text mode like in other Asterisk distros, we have decided to allow you to create trunks just by writing or pasting the configuration of your provider in a text box. This is to help the customers who come from other distros to have a very easy transition.
- Extensions Status – Devices: The way to show the connected devices of an extension has been improved to show the information more ordered, also, the information from PJSIP devices is more accurate.
- CDR Filters: Now it is possible to include in the CDR filter conditions the call type as the search condition.
- Extensions – Pinless : The extensions with this option enable will not be asked to enter a PIN when making a call through an outbound route with a pin set assigned.
- Features – Paging: The paging feature allows you to paging any extension dialing the feature code followed by the extension number that you want to page.
- PJSIP & SIP SMS: Now is possible to send SMS between PJSIP & SIP Devices
- Others: Performance & Core Improvements
Updated- GUI Languages: Spanish & Russian Translations has been updated
Fixed- Asterisk – Mini HTTP Server: It was not possible to assign a certificate to the Asterisk HTTP built-in server.
- Inbound Routes: The CID modifier were overwritten by the CID Lookup sub-routine
2.0.3
With this new update of VitalPBX, we are introducing a new module named “Asterisk Sounds“, this new module allows you to install additional Asterisk languages through the GUI, until now the additional available languages are: Portuguese, Russian, German and Italian. Also in this version we are introducing new options for the extensions voicemail, conferences module and others.
Added- Custom Sounds: A new section has been added on the “System General” module named “System Prompts”, on this section the users will be capable to customize the DND and the Blacklisted prompts.
- Additional Asterisk Sounds: As we mentioned at the beginning of this post we are introducing a new core module that will allows to the end users install additional asterisk sounds according to their needs. This new module is located under Settings >> PBX Settings >> Asterisk Sounds
Improved- Voicemail Dial-out: This new option for the voicemail allows that users can dial out directly from their mailboxes (option 4 from mailbox’s advanced menu).
- Voicemail Call Back: With this option enabled the users will be available to call back to the sender of a message. The specified Class of Service will need to be able to handle dialing of numbers in the format in which they are received.
- Voicemail Hint: This option allows you to generate a voicemail hint to be subsequently monitored through a BLF key. To configure the BLF you must to use the following format: vm_1234, where 1234 is the extension that will be monitored.
- Invite participant to the Conference: A new option named “Allow to Invite” has been added to the conference module, when this option is enabled all the participants could press ** or zero to invite other people to a conference. This options comes associated to a Class of Service, the class of service allows you to determinate the dial permissions to invite to another participants.
- Users Timezone: a new option named “System” has been added to the timezone field of the users module, when this option is selected, the timezone is taken directly from the PBX System.
Fixed- Sounds: Some prompts were not played in the right way when the extensions language was not English or Spanish.
- CID Lookup: The host and port field were not validated in the right way.
2.0.2
We are releasing a new update of VitalPBX who comes with many improvements regarding External Calls and DAHDI Hardware. Due the latest update in the CentOS kernel we have re-compiled the DAHDI packages to provide compatibility with the latest kernel. To update the DAHDI packages, you must to do it through the Linux Console (yum update -y) and restart the PBX after the update.
Added- Languages: Introducing Portuguese language to VitalPBX’s GUI.
Improved- Outbound Routes – Failover Destination: It is an optional destination that will be executed in case that the call fails after try with all the listed trunks.
- Trunks – Simultaneous Calls: A new field has been added to the trunks module that allows you to limit the amount of simultaneous outgoing calls per trunk.
- Extensions – Emergency CID: Now is possible to define an emergency CID per extension, this caller id is used when a call is performed to a number defined in the the Emergency Numbers module. To setup the emergency cid massively, you may use the bulk modifications module or the import extensions module as well.
Updated- Asterisk: Updating asterisk packages to version 13.21.0
- DAHDI: Compiled with the latest kernel of Centos 7. To update DAHDI you must to do it running the following command in the linux console >> yum update
- DAHDI – OpenVox: This new update of DAHDI introduce the compatibility with OpenVox cards.
- PhoneBook: Support for Htek phones has been added on the version 1.0.0-3 of this add-on
- Asterisk Sounds: A new repository has been added on this new version of VitalPBX, who contains Portuguese and Russian sounds packages that can be installed on demand. To install the Portuguese package execute the following command in the linux console >> yum install asterisk-sounds-pt_BR-ulaw, for Russian >> yum install asterisk-sounds-core-ru-ulaw
Fixed- Status Report: Do not disappear information from the IAX peers after click the refresh button.
- PJSIP Settings: Some settings were not loaded or generated in the right way.
- Certificates: Fix the script to update the Let’s Encrypt certificates.
- Extensions: It were not possible to enable the portal setting when an extension is updated
Ready To Try The Latest Release?
Download VitalPBX and install it on a virtual machine, dedicated hardware or a VPS.