We’re happy to announce the release of MOR X18!
Major Implementations
- Centos 7 Migration to Rocky 9: Ensuring compatibility and security, we’ve transitioned from Centos 7 to Rocky 9, providing a stable and secure foundation for all operations.
- Updates to Ruby on Rails and MySQL: We’ve upgraded Ruby on Rails and MySQL to their latest versions, offering improved performance and security features.
- Stripe Payment Gateway Integration: Simplify your payment processes with our new Stripe Payment Gateway integration, offering a seamless and secure transaction experience.
- 3CX rInstance Support: It is one of the mandatory 3CX requirements for VoIP Providers who want to become supported SIP Trunk Providers by 3CX. Some of our clients are already listed in the 3CX page and get a significant amount of new leads from this opportunity! Follow this guide to connect 3CX to MOR..
Security Enhancements
- Two-Factor Authentication (2FA) with Authenticator: Enhance your account security with Two-Factor Authentication, adding an extra layer of protection against unauthorized access.
- Subnet Support in Block/Whitelist IPs: Gain finer control over access management with subnet support, allowing for more precise IP blocking and whitelisting.
Performance and Usability Boosts
- DB Data Caching in Core: Speed up operations and reduce server load with our new database data caching feature, ensuring faster access to frequently used data.
- API Enhancements: With new APIs for managing User entities, Number Pools, and Provider Rules, you can automate and streamline more aspects of your operations.
- CDR Export Query Execution Time Limit Setting: Gain control over the execution time of CDR export queries, optimizing performance based on your specific needs.
Improvements
- Enhanced Usability and Performance: From the Load Stats page to ElasticSearch handling, we’ve made numerous tweaks and optimizations to improve usability and performance across the board.
- Security and Stability Enhancements: With updates to the fail2ban SSH ban time, encryption for email sending, and fixes for various bugs and vulnerabilities, your system is more secure and reliable than ever.
- Comprehensive Bug Fixes: We’ve addressed a wide range of issues, from auto Tariff Import failures to device deletion slowdowns and call tracing inaccuracies, ensuring a smoother, more dependable user experience.
We encourage you to explore the full list of new features and improvements below to see how they can enhance your operational efficiency and security.
A Full List of Implemented Features
- Centos 7 migration to Rocky 9
- Rails/Ruby/MySQL updates to the newest versions
- Stripe Payment Gateway
- 3CX rInstance support
- 2FA with Authenticator
- DB data cashing in Core for speedup/lower load
- Subnet support in Block/Whitelist IPs
- Change the default admin account username
- Number Pools API
- API to delete User entities
- Tariff Import Jobs Retry button for failed jobs
- Tariff Import Failed email template
- Security > Admin IPs page
- Show HGC of Failed Calls in the Last Calls option per user
- Show Quick Stats permission per User
- CDR export query execution time limit setting
- Search in Destinations, Dest. Groups pages, Whitelist
- Group by User’s and Provider’s rate filters in Aggregates
- Auto del messages from Aut.Tariff Inbox older than x days
- Administrative information in export CSV
- Export Number Pool Numbers to CSV
- Number Pools page tune + option “Delete all Numbers from all Number Pools”
- Accountant permission to create another Accountant
- Additional date formats in the Tariff Import page
- “Min Times Not Equal” and “Increments Not Equal” up to 10 values in Tariff Import
- Tariff Conversion permission for managers/accountants
- Send Automatic CDR Reports to more than 1 recipient
- Count for Blocked IPs
- Error messages if SSH connections failed using GUI
- Option to set number from “Diversion” header to “To” header
- API for providers
- Set RPID/PAI from CallerID for Provider
- Inbound concurrent call limit
- Extended provider_create API
- Reseller id on incoming to DIDs calls
- API: Aggregate Calls
- APIs for Provider Rules
- Option to do not delete payments when Invoices are deleted
- Custom audio files for Anti-Resale
- Autodialer dst number to callerid
- Fax2mail template
- clean_callerid option to remove unnecessary info
- View LCRs that each provider is being used and their status
- Start Spy via API
- Hanguped by in API user_calls_get
- CLI import for existing devices
- API to delete DID entities
- API for LCRs: add/delete/edit
- Option to show DST for Users not localized (what they entered)
- Limit Max rate for Provider
- Option auth_by=rpid,pai,from,diversion
- Annual Subscription type
- Whisper/prompter feature to the Spy functionality
- Asterisk AGI elimination for speedup
- Daily Balance limit rework
- DID wildcard support
- Allow customers to download the DID List
- Outbound+Inbound call limit + settings rework
- /api/localizations_get
- /api/device_update description Progressinband
- Show email logs in the GUI
- Invoice ID in API invoice_get
- Option to hide Ghost percent column
- MKD currency
- Start Recording only after the answer option
A Full List of Improvements
- Testing for tuned, memchached ports
- Automatic Tariff Import usability
- Load Stats page usability
- ElasticSearch handling/sync scripts
- Blocked IPs retrieval from DB
- number_pool_create API returns number_pool_id
- DB update with Percona procedure
- Tariff Import Email Notifications usability
- CDR Export Template usability
- Replication status debugging procedure
- Min times not equal, increments not equal in Tariff Import usability
- Invoice script’s MySQL connection handling
- Whitelist page usability
- Log messages on backup actions
- CDR log visualization (enforced UTF-8)
- GUI recordings deletion tune for main/backup servers
- Make User Retail Tariff increment tune
- provider_update new parameters
- Device edit assigned to All servers tune
- Alerts by admin time zone
- Tariff export usability
- Update Rates page usability
- Rates for Tariff page usability
- API provider_create
- Send Invoices over Email to Users speedup
- Do not generate invoices when ES is not synced
- Cron permissions check
- Allowed IP addresses In the device
- fail2ban ssh ban time
- Proxy simple device extlines inconsistency
- Tariff rates view tune
- Import devices highlighted as trunk
- Inbound concurrent Call Limit API parameter
- Boot sequence Asterisk before MySQL
- Optimize mor_retrieve_peers
- Asterisk languages handling
- Subscription API update
- Subscriptions activation start-end tune
- Change user tariff with Failover provider
- did_rates_update Tariff By CallerID
- Disable subscription emails
- Tune Assign unassigned Destinations
- Emergency caller ID Settings update using API
- Slow recording SQL
- Set user credit to unlimited via API
- Add additional logging for ANI matching the device
- Device Outbound+Inbound call limit + settings rework
- Add Language param to did_details_update API
- Ast db delete on Ast restart
- Action – Login SQL tune
- device_update API
- ES keepalive
- User’s Accounting Number to the Invoices ‘Export to CSV’ file
- API Rate Get code rewrite
- location ID at /api/location_rules_get <location> object
- 10 Allowed IP Address
- Call Limit HGC
- Recordings browsing speedup
- change default Proxy dtmfmode to auto
- Option to turn off TLS in email sending
- Invoice page speedup
- Visible payments comments in SOA
- Security menu
- Uniqueid to API active calls get
A Full List of Fixes
- Auto Tariff Import failing due to mismatched effective dates
- IP Geolocation retrieval
- Currency retrieval procedure
- CDR export to email when a password has the symbol $
- Radio buttons disappear when too much text is selected in the page
- Assign unassigned destinations error logging
- Email sending with large emails
- Callerid handling bug after auth_by_headers introduction
- Device deletion slowdown when there are a lot of Numbers in the Number Pool
- Backup creation procedure in an edge case
- Pagination in Unassigned Destinations page
- Export Number Pool Numbers to CSV when DB is on a remote server
- Destination flag bug when a country has some symbols in its name
- DIDs export speedup
- Use first the CLI and then the domain, if the CLI is not matching
- Hidden provider cannot be used
- User credit on user import
- Exchange rate for subscriptions
- DID auth by PIN End IVR handling
- Change Tariffs for Users with Provider tariffs
- Backup downloads
- Duplicate Aut.Tariff Import email
- CCL handling for Devices
- Wrong SMTP server used with Warning Balance
- Invalid log level value
- Possibly wrong HGC for blocked destination
- Issue when importing device location
- Internal Errors in LCR by Destination
- Failover provider ignored in some cases
- HGC 224 returns busy instead of failed
- Detailed invoice order
- Deleting ring group not deleted extlines
- Commas near the CallerID Name
- Provider created over API does not register
- Allows to delete the Tariff that is used
- Invoice page limit issue
- Issue with subscription charges
- Invoice recalculate issue
- Wrong Callback HGC
- Do not send email when email is not entered
- Allow identical email addresses to different Users setting not saved
- Wrong Provider in Call Info in special case
- Wrong Provider rate in Call Tracing
- Incoming call Localization issue
- IpLocation error: undefined method `parent’ for nil:NilClass
- Broken CSV calls invoices
- Issue with Hide User
- Recordings not deleted in some cases
- Not limiting the extension’s length
- Wrong context for Provider’s device
- Issue with DID import
- Error about expired SSL on email sending
- Missing sound file
- Deletion of Partner’s Reseller’s Tariff
- Blocked value on Auto Tariff Import
- Archived calls 0000-00-00 date (percona issue)
- Alerts can change Reseller’s Users LCR
- Tariff Job Analysis Blocked/Deleted translation_missing
- No delete button for API created payments
- Call tracing not full
- fax2mail variables
- app_mor_various.c: Commands out of sync
- Pike module issues
- Reseller – Inbound call limit, issue
- Flat rate goes into negative
- mor_delete_old_recordings in external server
- MySQL connection not closing by some scripts
- opensips_device_status lag with 50k devices
- Do not download faxes without login
- Blocked Whitelisted IPs
- Common use provider with partner’s reseller pro case
- Partner reseller common use provider
- Reseller Rate search
- Make Retail tariff decimal digits
- Subscriptions not included in invoice
- Wrong currency with rerating
- Users time zone in recording email
- No Server stats when Ast CLI is open
- Call log terminated by: an incorrect value
- Invoices C script missing flat rate consumption data
- Error while reporting date limit (strptime error)
- No hidden users access for partners
- CDR Export SQL error
- Call tracing issue when prepaid user balance < 0
- RS pro limited addons issue
- Call tracing names
- Wrong codec order
- auth_by_headers changing callerID
- Update rewrite email templates
- CDR export timezone issue
- Suggest strong pass issue
- dids_get API Limit comment field
- Subscription start and end activation
- TCP error
- Failover provider log issues
- Function can only be used on SIP channels issue
- clean_destination does not save the original number
- DID status manipulation API incorrect error messages
- DID csv export is missing Owner
- subscription issue with connection fee
- Missing option Show Balance Line
- 2 API payments at the same time not changing the balance
- Internal server error with DID bulk manage
- DID “Owner” field auto-fill
- No OPTIONS after asterisk restart
- Do not check the minimal rate margin with a flat rate
- Recordings above the HDD quota
- No Terminated by DID after update
- Wrong cut with combined rules
- DID wildcard issue
- Flatrate negative minutes
- dst_locationgroup_id missing
- Show only assigned Users, Archived calls issue
- Copy Leg A Name to Leg B Number issue
- Register Hidden Provider GUI issue
- Register hidden provider
- hgc 0 when call timeouts in the ring group
- Update brakes MNP
- Prepaid subscription first charge
- wrong API result
- Wrong caller id when no number
- Devices import error
- Wrong balance in email
- Wrong subscription from email
- Last calls SQL performance issue
- proxy routing issue
- undefined method `timeout’ for #<Net::SSH::Transport::Session
- CSV Invoice by CallerID issue
- IVR hint issue
- Reseller’s call tracing
- Elasticearch sync issue after reboot
- Interpret NO ANSWER as FAILED issue
- Last Calls from Users issue
- Import to Number Pools problem
- Reseller pro LCR by % not hiding provider(common use) names
- DID was not updated
- GUI shows recording failed
- Stats DIDs
- Username search with &
- Hidden Prov hostname issue
- Hidden Provider/device update issue
- Archived calls csv export error
- Device rule issue
- DID bulk update pattern
- Copy Rules to the Provider issue
- call log & pcap issue
- Trustrpid proxy issue
- Wrong SIP code
- DID provider not changed
- PAI issue
- Asterisk registry reload issue
- No frame from bridge asterisk
- Move Prefix between Destination Groups with CSV
- No flags in IP whitelist
- No call count in User’s Quick Stats
- Retrieve peers issue with spaces in the username