Upgrading from 1.6.3 to 1.7.0
New features in version 1.7.0¶
- Incoming call authorization
Now it is possible use SIP Authentication https://tools.ietf.org/html/rfc3261#section-22.2 by username and password. Before YETI allowed only authorization by origination IP address. All auth attempts logged to special table CDR->Auth Logs
- Weigth based traffic balancing
Now it is possible to distribute calls between termination Gateways on weight basis. Also Static routing allows weight-based call distribution between termination providers.
- Routing tag compare modes
Now it is possible to configure Routing tag matching modes at Destinations, Dialpeers and RoutingTagDetectionRules. Previously YETI use OR mode, now it is possible also choose AND.
- Numberlist and Numberlist Items importing
It is possible to import such objects from CSV file.
- DestinationNextRate object
DestinationNextRate allows create future rate changes for Destination. YETI will automatically apply such changes. We already have such feature for Dialpeers.
- Configurable Customer/Vendor price rounding in CDRs
Now it is possible to round price of call in CDR. You can configure precision and rounding mode.
- Inbound DTFM filtering
New version of SEMS allows you to filter inband DTMF signals. Our system will detect inband DTMF and replace it with silence. Such feature usable to prevent DTMF digits duplication in case when originator sends both Inband and rfc2833 DTMF.
- CDR batch writing
Previously YETI wrote each CDR in dedicated SQL transaction. Now it is possible to write multiple CDRs in same transaction. Such feature greatly reduces TPS required for CDR writing. So CDR writing performance rapidly increased.
- RoutingTagDetectionRules lookup by src_prefix and dst_prefix.
Now it is possible use different RoutingTagDetectionRules based on src/dst number.
Migration to Rails 5.1
Improve UI performance
Multiple tests improvements
Upgrade yeti-web package to 1.7.0¶
root@yeti:/# apt update root@yeti:/# apt install yeti-web=1.7.0
Apply first stage of migrations¶
root@yeti:/# cd /home/yeti-web root@yeti:/home/yeti-web# RAILS_ENV=production ./bin/bundle.sh exec rake db:migrate root@yeti:/home/yeti-web# RAILS_ENV=production ./bin/bundle.sh exec rake db:second_base:migrate ....SKIPPED... == 20180212105355 MultipleMatchingConditions: migrated (2.0862s) ============== IMPORTANT: Now update and restart your servers. And after that run `rake db:migrate` again. root@yeti:/home/yeti-web#
IMPORTANT: Now update and restart your servers. And after that run `rake db:migrate` again. will inform you that migration is not finished. You should apply next part of migrations after SEMS upgrade.
Switch to new routing schema¶
Change at /etc/yeti/system.cfg switch routing schema to switch16 from switch15 on your yeti-management server and restart yeti-management server
Upgrade your SEMS nodes to new version. In new version module sctp_bus is required, so you should add it to load_plugins(/etc/sems/sems.conf) before module yeti. Also node_id should be defined at /etc/sems/sems.conf. See sems.conf and yeti.conf for details.
Apply second stage of migrations¶
root@yeti:/# cd /home/yeti-web root@yeti:/home/yeti-web# RAILS_ENV=production ./bin/bundle.sh exec rake db:migrate root@yeti:/home/yeti-web# RAILS_ENV=production ./bin/bundle.sh exec rake db:second_base:migrate
Restart all components of yeti-web¶
root@yeti:/# systemctl restart yeti-web root@yeti:/# systemctl restart yeti-cdr-billing@cdr_billing root@yeti:/# systemctl restart yeti-delayed-job