2-Factor-Authentication (2FA) for subscribers based on
voip_preferences only, to support lazy OTP secret initialisation
by application logic.
Change-Id: I265fe1c6e5b75d96aa77b6169ac7508bbf65fbb3
- use coalesce(unix_timestamp(if(x)),if(x)) rather than
coalesce(unix_timestamp(if(x)),0)
- fix from_unixtime(0) also in transform_billing_mappings()
in 15418.up
Change-Id: I55a54deb9e6e3412650e56cefed87a6637a2c0d1
* _effective_start date is now correctly becomes 0 if undefined
to address the general from_unixtime() change in MariaDB 11.5
that requires a value.
* the fix is taken from:
e935ac42 2025-04-29 MT#62676 fixes for mariadb 10.8/debian trixie [Rene Krenn]
Change-Id: I01cf96af3095fbf6e3cb9def9ddeb6c1f1883929
base/8629.up introduced voip_preferences_enum with auto
named foreign key as
"FOREIGN KEY (preference_id) REFERENCES voip_preferences (id)"
which auto created a missing index as
`preference_id` (`preference_id`).
diff/15787.up re-created the foreign key as named
"ADD CONSTRAINT `pref_id_fk` FOREIGN KEY (`preference_id`) ... "
which normally should cause the auto created `preference_id` key
to be renamed to `pref_id_fk`.
but customers who had their database re-synced, had that index
turned from "auto created" to "permanent" and therefore, causing
diff/15787.up to keep the original index name as `preference_id`.
that in turn, caused ngcp-mysql-compare-dbs to report db inconsistencies
as the default schema/.sql files are built with `pref_id_fk`.
the current fix addresses the index issue by dropping it as either
`preference_id` or `pref_id_fk` and creating it as a named index
`pref_id_idx`, so that it wont be affected by the issue anymore.
Change-Id: I4c777902251f915a1b07e92744d78e81087d607c
* fix peering hosts weight update to be correctly performed
only for the same peering host (was for the whole peering group).
Change-Id: Iaca327b1d49f2e50f9aa258e72392ffafe271fd3
* recreate provisioning.voip_phost_*_trig triggers with the same
content to fix a possible discrepancy caused by
15783_not_replicated.up
Change-Id: Id184e50c94ba9f92eb4ba6d243457e0343353704
* triggers are removed from the not replicated script because
they create an issue if this script is applied on the other
node after 15791.up and 15797.up and revert the triggrs to
inintended state.
Change-Id: Iac830c24d0d51d693e6dbe76cea3766feebf7dd8
Added 2 new prefereences inside group "Cloud PBX"
to let the admin to control how many times the AA welcome message
must be played before overflowing in case of timeout or wrong key selection.
Change-Id: I19debd3dc06cd9234355a67ffdc8b5c9db42f61f
* make 15798 as "not_replicated" otherwise the "freeswitch"
database creation is not replicated to the other nodes during
upgrade because there are no my.cnf yet with
"replicate-wild-do-table=freeswitch.%"
* all CREATE statements in the .up script adjusted to be as
CREATE ... IF NOT EXISTS, as the not_replicated script will
be executed once more on the existing deployments.
Change-Id: Idf6c9e8a304639ecabab0a442273cba4b306a6e1
The newly implemented manual ban release needs extra fields to
return for the client.
* Add `last_banned_at` timestamp for admins and subscribers
* Add `last_banned_ip` varchar(45) for admins and subscribers
Change-Id: I691bf2f5c62180d6fb010c3e844a79384f81b3d3
* v_contract_phonebook - returns shared+contract+reseller phonebook
entries, where same numbers are merged into contract > shared > reseller
entries
* v_contract_shared_phonebook - returns shared+contract phonebook
entries, where same numbers are merged into contract > shared entries
* v_contract_reseller_phonebook - returns contract+reseller phonebook
entries, where same numbers are merged into contract > reseller entries
* v_subscriber_phonebook - returns subscriber+contract+reseller phonebook
entries, where same numbers are merged into
subscriber > contract > reselelr entries
* v_subscriber_contract_phonebook - returns subscriber+contract phonebook
entries, where same numbers are merged into
subscriber > contract entries
* v_subscriber_reseller_phonebook - returns subscriber+reseller phonebook
entries, where same numbers are merged into
subscriber > reseller entries
* shared entries of subscribers within the same customer are considered
"customer" entries and shown in v_subscriber_phonebook or
v_subscriber_contract_phonebook
Change-Id: Id66502fadea93be05e3dab7f386e92068fcde21d
This commit adds a list of tables:
- `limit_data`
- `db_data`
- `group_data`
required by the mod_db of freeswitch, which
from now on is in use.
Add them, because we are of the full table
schemas control, not the freeswitch service.
Change-Id: I59b6161a393ca6816cfaba527cf339add55224f5
* Fixes bug reported by frontend team where in case a billing.voucher is updated the
`valid_until` field automaticly updates to the current_timestamp.
Change-Id: Ie4bcd9ebf0eeda066768781c89d892180cfb3c57
* reason for this change is because the related
changes in the kamailio table get replicated to the
active node during the upgrade and that breaks outbound peer
provisioning / selection by running kamailio there
Change-Id: I69416b5737cf05695cbfd1c2e4544faa8b1a2ab2
* reason for this change is because the related
changes in the kamailio table get replicated to the
active node during the upgrade and that breaks outbound peer
provisioning / selection by running kamailio there
Change-Id: I69416b5737cf05695cbfd1c2e4544faa8b1a2ab0
Prefs codecs_id_filter and codecs_id_list are no more selectable.
Records inside kamailio.user_preferences will be automatically deleted by triggers.
Change-Id: I6224a8cae8df7e6f159142a8ee09a0ab9b26b1be
Add a preference, which introduces a mixed mode of handling AA
choices and extensions dialing via AA menu.
Can be enabled or disabled (default).
If enabled then instant extensions dialing mode is used,
otherwise the usual one (which requires dialing through
the *asterisk sign).
Can be applied at the following levels:
- domain (has always default value 'disabled')
- profile (inherits from domain if doesn't have own value)
- subscriber (inherits from domain if doesn't have own value)
Change-Id: Ibf1d08268a9b72d2524881951700776fdc9ec215
voicebox_unavailable sound handle is notsupported since mr5.3
and it is even mentioned as not supported in the handbook.
It is time to removed it completely from the system.
Change-Id: I9bd0122fc192d5d5906494b5051e471556f8778a
The change of the ENUM 'direction' column removing old values
and adding the new ones, creates problems to existing HM
records.
The records with direction 'inbound' or 'outbound' loose
their direction right after the ENUM is updated.
To fix the issue we have before to add the new values,
then migrate the enties, and finally remove all the values
not needed.
Change-Id: Ib350b6aaada2cdabccb01947f131d3389e1a5110
Commit 5f0bfdae7c wrongly disabled
preference ignore_cf_when_hunting at domain level.
Actually in template there is a reference to this parameter at domain level
(it was missed on first analysis) and for this reason
the corresponding flag in provisioning.voip_preferences must be set to 1.
Change-Id: I89b9597e8bc46a8ccf3e07edcb13199a831aef68
* this column is added to billing.admins and
provisoning.voip_subscribers to control the amount
of consequent bans for progressive ban increase.
Change-Id: I09c5205294b11aec16f0c6a7a3b9257ff5b90e01
* provisioning.voip_subscriber_password_journal stores last
used sip passwords per subscriber
* provisioning.voip_subscriber_password_journal stores last
used web passwords per subscriber
* billing.admin_password_journal stores last
used passwords per admin user
* add password_last_modify and webpassword_last_modify into
provisioning.voip_subscribers to keep track of password age
* add saltedpass_last_modify into billing.admins
to keep track of password age
Change-Id: Iff5dd016a2542a01a36ebcf50f561911fb5f7bed
inbound/outbound no longer represent the "full" direction and belong
only to A leg, so they are renamed to a_inbound/a_outbound accordingly.
The up-script is not replicated because while the first half of the
nodes is upgraded the other half shoud continue to work with the old
parameters.
Change-Id: I1ac49b44c439ae1ba00c0862968c58831c605279
This is needed to perform manipulations to the SIP message
just before it leaves the system on the B-Leg side.
Change-Id: I61ee456d84061092af26ede51a99c480aca66a1d
* as announce_conn_type is of the enum type now there are
potential leftovers in the usr/dom/prof preference tables
that will cause the provisioning to not function correctly,
therefore, the "" empty values are removed from those tables.
Change-Id: I37ffe4720889a29b9e054aa816b785059ef36222
Use a real NULL value instead of string.
Additionally: update description for the preference
'announce_conn_type'.
Change-Id: I144702d0b6decfde42b075eb50399b68ed5b4818
The preference is available only for subscribers and it is
not exposed to customers or subscribers.
It contains a list of numbers that the subscriber is allowed
to call even if blocked by the NCOS. If the called number
matches, then all the NCOS and administrative NCOS checks are
skipped.
Change-Id: Id366a405efe5228405fc95419bdfc2eaddc6e69c
Kamailio proxy evaluates the preference "ignore_cf_when_hunting" only at customer
(contract) level but web interface lets the user set this pref also at domain
and subscriber level.
This leads to some confusion, the web interface user is fooled by this preference
and thinks something is wrong inside kamailio proxy because enabling/disabling
"ignore_cf_when_hunting" at dom/subscriber level has no effect at all.
Original implementation treats this option as something that must have
a global impact as demostrated by the same preference into config.yml.
Change-Id: I2ba28709dac8a3348049ad9dd5f116ce9d86d9f8
Add header=P-Preferred-Identity for cdrs, this field will
store the P-Preferred-Identity header of the initial INVITE.
Change-Id: I3a6c4a26bda18b80c9f25caf42328eab1e7171cc
Subscriber administrators should be able to configure the
preferences of each single provisioned device. Due to that
this commit set expose_to_customer=1 for all the preferences
flagged with fielddev_pref=1.
Change-Id: Ifdc4e32212aa2e948d41bcf019bf1051be6b7c7d
By mistake in commit 7aab6d290d the new 'rcv_display/np_display'
option was added to the 'outbound_from_user' and 'outbound_pai_user'
preferences instead of 'outbound_from_display' and 'outbound_pai_display'.
This fix revert previous addition and add it to the correct preference.
Change-Id: Ifed659b22dbde621fbf366092268e6416e9ad4ba
This new column will be used to store a flag (value 0 or 1) that
controls wether the CF is processed as usual (flag with value 0,
default) or generates a 302 redirect message back to the
caller (flag with value 1).
Updating also the 'v_subscriber_cfs' VIEW to add thhis new column.
Change-Id: I74e53a526810f0145e305b90c3c3bd56cf91bc61
This will add support to both 'outbound_from_display' and
'outbound_pai_display' for a new method called 'rcv_display/np_display'.
This will allow to use the received display name if available
and the network provided one as fallback.
Change-Id: Iab0335c73ea6aba883b111645abec17bfede9386
* release column is going to contain the ngcp release
version when an .up script is applied and also used
with --mode down --to-release mrX.X.X to automatically
downgrade releases to a specific version
Change-Id: I8750646eee6076bc343a0c05e5c85c137458ef92
* Add `value` to the uda_idx, to reduce/eliminate gap locs and deadlocks from
the API /api/subscribers update scenarios
Change-Id: I62feb07c4df1675771b93e2a29a2aa126a14d34a
* voip_phost_crepl_trig: enum default preferences are now always
created regardless of the enabled state, otherwise that led
to peering servers to be created without their default
not null enum preferences in voip_peer_preferences.
* fix missing not null enum preferences for peering servers
Change-Id: If8cecb5570ba876643207931ecab1e42a994a2fe