Remove 'serial' from the label and description of
'cloud_pbx_hunt_timeout' as this preference can now also
be used for parallel groups.
Change-Id: I66a51a5dddd9b872d97b2ec3de36ce79524abce6
Improve description of ignore_cf_when_hunting
explicitly stating that this preference
only affects members of hunt groups when called in a hunt group context.
Change-Id: I0cfb0f8187e18f2771055866879363ee0dd4a050
see RQRAINB-6610
Add the new domain/subscriber preference 'busy_hg_member_mode' to
determine if a huntgroup call can be distributed or not to a busy member.
The new preference accepts the following values:
- 'ring' the call is always distributed to the member whatever is
his/her busy status (note: default value for domain preference)
- 'skip_totaluser' or 'skip_activeuser' the call is not distributed
to a member considered as busy depending of the counter 'totaluser'
or 'activeuser'.
Change-Id: I83973d7bdae2420d8c6836ddcbc542eb7c6f9fd2
By default calls that come from a peer group and are looped back
to the same peer group due to a subscriber location mappings 'forward'
entry are blocked to avoid loop creation.
This preference allows to override the default behavior and permit
the loop over the same peering group.
It has to be used with caution and activated only if necessary.
Change-Id: I5040204805c3b2a740250cec11a8e9914333f10b
New subscriber location mapping mode "forward" is now part of the
enumeration inside provisioning.voip_subscriber_location_mappings.
Change-Id: I93bbecd1e88452ddbc5249f344c3ad66ddea8739
Set peer flag for the following user preferences to allow peer sdp filtering:
- codecs_list
- codecs_filter
- codecs_id_list
- codecs_id_filter
Change-Id: I619cd3c3f6f7d87b91502ecf7563556e991d5089
This value will be the default that is assigned to 'normal' subscribers
The HuntGroup subscribers will contain instead one of the other possible
values: 'serial','parallel', 'random', 'circular'.
Change-Id: I5400e2ccfa5af5905777f1bc608054e0743ea1ef
there is an issue with a cornercase of resolving
domain preferences allowed_ips overloads. the cursor
loop of the proc therefor now gets proper statemachine
logic.
Change-Id: Ieeacc4d7c8a931c6e9f0f8087b2a05112f78c675
rationale:
-ipv6 allowed_ip adresses were not yet supported in kamailio
-the current ipv4 allowed_ip check has bad performance
this change introduces a new UDF to check the UA ip against
allowed_ip and man_allowed_ip preferences in a fast and
convenient way, ie.:
SELECT provisioning.ip_is_allowed(
<subscriber_uuid>,
<ipv4_or_ipv6_address>
);
the check is based on range queries supported by indexes,
following the proven approach we already use for roaming/
billing_networks.
it requires to transfrom IPnet values of existing data into
numerical representation of the network start (network) and
end (broadcast) addresses.
mariadb does not support arithmetic or bitwise operation
for varbinary or numerical values larger than bigint, which
is required to calculate network and broadcast adresses.
the change therefore provides an own implementation for
large integer operations. it works with hex string
representations, which fits the existing mariadb "hex()",
"unhex()" and "inet6_aton/ntoa()" functions.
Change-Id: I9dbaa769252babf168243167c061f035f0f43242
All "transcode" preferences are listed as type "0" in the DB except for
DTMF and CN which are listed as "1". The LUA/Kamailio scripts fail to
include tyoe "1" preferences in the list of flags given to rtpengine.
Change the type to "0" to fix.
Change-Id: I38f0d9f1394e07b190f1bd196ac85f456017ae6f
play_announce_before_recording cant have 2 default values
and "never" should not be default for subscriber
Change-Id: I0ecfb76ac6d9f9c7e431f4bc4b28d2619a06e076
* fileshare is not replicated by default therefore the script
breaks replication and it is converted to not_replicated to
address that.
Change-Id: I52f59630f92f4b9c901a84a296cd9e53442f5c0c
* there can be more than one journal record created per a
transaction (e.g. a subscriber and a customer are created
at once, therefore the tx_id field cannot be unique)
Change-Id: I0046f41ec52412dbad319610d7b1b87988798586
- create table acl_roles that contains information about a role
- inserted existing roles (system, admin, reseller, ccareadmin, ccare,
lintercept)
- create table acl_role_mappings that contains information about which
role has access to other roles
- remove field role from journals table and add FK role_id
- add FK role_id and set the right one accordingly
Change-Id: Id92726e9aaf7c6f6c126b18a76f86fc133aea5ae
* susbcriber_id column is needed to relate the uploaded data
to the subscriber user
* reselelr_id column is needed to narrow down the scope of
files per reseller
Change-Id: Ie6ef264eb5e25e48f6458f74b310e451e406fef6
mariadb does not support variable referals in correlated
subqueries if the nesting depth is 2 or beyond.
so in short: below works ->
select
(select
count(*)
from table1
where id = root.id
) as cnt
from table2 as root;
... while this not unfortunately:
select
(select
count(1)
from (select
1
from table1
where id = root.id
LIMIT 1001) as q
) as cnt_limited
from table2 as root;
this can be solved by declaring the topical subqueries
in dedicated user-defined functions, so involved
panel/api parts will load quickly even with millions of
subscribers.
Change-Id: If96603cb4115259d719297af46c5bc7c10aadf76
for IPv4, ipnet length of 3*4 + 3 + 1 + 2 = 18 was
sufficient. for IPv6 ipnets we need to extend this
to 8*4 + 7 + 1 + 3 = 43 chars.
Change-Id: I9b44c63b58bc08bc41f0d50a9ec94234ffffd6c2
Extend billing.journals with fields required for RBAC for journals.
Added fields:
- reseller_id to limit reseller admins to their reseller
- user_id to reference admins or subscribers
- tx_id unique transaction id
- role defining the access scope the entry was created with
Change-Id: Id4a093a3ea668914d6f3214f79955d89b58263db
Description for field upn_block_clir is fixed.
This pref blocks outgoing calls and not incoming.
Additionally fixed anonymous typo.
Better description for outbound_from_display pref
Change-Id: Ic578da7b3c14689a3883a5f18c804105961eb5b6
Added the following options:
* use domain default
* Never send push
* Always send push
* Send push only if no device registered
* Always send push, skip registered devices
* Registered devices, then send push
* Send push, then registered devices
Change-Id: I78ef73e2de5a8692c393586d9298b46d429fa36d
We need to have the following columns in a new version of the 'v_subscriber_devices':
- ha1
- ha1b
Change-Id: Icfb466a302f1b0b3cb5fd93bd314438f11bf5d9e
play_announce_before_recording has been extended from on/off
state to multiple select state.
Now It can handle 4 different values (+ domain default):
- Always (all calls)
- External calls only
- Internal calls only
- Never (default)
Change-Id: Idbe70a4844b3ca6a4f240b5087deaff5d1007522
New foreign keys:
- 'sub_id_ref' - towards 'subscriber.id'
- 'lcr_gw_ref' - towards 'lcr_gw.id'
Beforehand delete all alone subscriber_id's from the 'sems_registrations'
in case they for some reason exist, this will prevent us from .up script failure.
Change-Id: Ib225cc11771c9038c408f6c409d95a417e7ac311
The format of Android push tokens is a free-form binary string of up to
4096 bytes. Currently the tokens are under 256 bytes long, but we expand
the DB field anyway to be future-proof. Unfortunately MySQL doesn't
allow keys that long, so we have to restrict the field to 3072 bytes.
Further add an auto-increment integer primary key to make InnoDB happy.
Change-Id: Ic664d47b80f751397ec51688d8f399da06eac176
New columns:
- 'id' - new PK for the 'sems_registrations'
- 'peer_host_id' - for filling it with IDs of SIP peerings
Remark: 'peer_host_id' and 'subscriber_id' must be null by default.
Change-Id: I7ecaa42e540a96a5d6835a78e391adc909aab111
fee matching works in 2 attempts:
1. try to find a fee matching <user@domain>
2. if none found, try to find a fee matching <user>
the billing_profile record will get a new field
"ignore_domain". if set to "1", step#1 above
should be skipped.
see commit id 1af70b
Change-Id: I4b05112db52afbf6f4369711ad946ff1070260ca
As the option to add default actions has been introduced for Auto-Attendant,
where we are using string literals as lables/values, we need to let the SQL
structure be compatible with this update.
Hence our customers will be able to set and then see the default action
in the Auto-Attendant menu for a subscriber.
Change-Id: I949d7b72c9211588389a64df9af49b0201587d87
- 'aa_default' gives a possibility to add the default URI destination,
in case no option have been previously done by the caller ;
Change-Id: I720ca1b53b2dbc04973eeebcc570772a8be1a417
Added new option extended_send_primary_plus_extension inside
extended_dialing_mode enum to enable a new extended mode
allowing to user to send the primary number + the extension
Change-Id: Ide1afe1b664be7dd499d203c26afb5ec8b42ba6b
Added crypto_base64_padding user preference for
subscriber / domain / peer under NAT and Media Flow Control
section.
Change-Id: I4b5c8f319a5da5d5260107211ba79d65793d948b
New peer/subscriber preference introduced:
* 'peer_auth_hf_user' - gives a possibility to specifically define the 'username' parameter of the Authorization header.
Change-Id: I295a4b548b95de5ca106281a71b6efa9c67d79d8
The additional column in necessary to get which is the username
of the subscriber associated to a particular device_id.
It is mostly used for presence status because kamailio has
to trigger presence based on the subscriber and not on
the device.
Change-Id: I881ea1e54c8b0e9635e9ceb96ed60ac8792bf50e
Add new prompt (sound handle): aa_timeout to "pbx" group
in provisioning.voip_sound_handles table.
Change-Id: I24dece40996c1b982fa8b71fd132ab02374c7ded
Move the under the new section the announce handles:
* announce_before_call_setup
* announce_before_cf
* announce_before_recording
* announce_to_callee'
Change-Id: I698dd74a5b8c7f94253bf1763ebb533a41f0ba07
Replace the special character 'μ' (lowercase Greek Mu) with latin 'u' in
a word ‘u-Law’ inside the label and description of 'transcode_PCMU'
voip_preferences attribute. This is for compatibility with xgettext
programs and the Crowdin platform.
Change-Id: I3ffde8a4cb0a57d36e559d88bb2cd9740bc6dbef
* v_subscriber_cfs represents all callforwards per subscriber uuid
to be used in call forward related selects
Change-Id: I7cbdcf5454c616f0116abbcba4a1625efa80d8da
Adding the source_last_hih field for the cdrs, this field will be used
to store the last history info header of the incoming invite if present.
Change-Id: I6549e69da4bd47b76c7365ece3a9507abdcf733c
This reverts commit b8107d2653.
Reason for revert: upscript conflicts with ngcpapply helper script
Change-Id: I04dfb82ef0c4851d53efa432efb37e44ce37926e
This upscript will do the following:
- the domains/peers where the selection is on default are migrated to ext
- default entry removed from domains/peers
- new default selection for domain/peers is ext
- The "default" entry has been renamed for subscribers to "use domain default"
Change-Id: I7e5d6f48f6c4aaf4db0e33abf4a3f3d58c446c82
* defines the format of emergency_location_object field
* set cirpack as default since that was the original format
* add PIDF-LO for implementing TR Notruf
Change-Id: Ifcac50b7147f7233d42e1abea75c6cfc1d59f604
* voip_preferences 'type' can be 2, means' blob'
* voip_preferences data_type enum add: 'blob'
* 4 new tables:
- voip_dom_preferences_blob
- voip_usr_preferences_blob
- voip_contract_preferences_blob
- voip_peer_preferences_blob
(they are innodb page compressed)
* triggers on insert/delete on these tables
cause the 'value' field of the related
voip_usr/dom/contract/peer_preferences table to
be updated with the id of the record, required
for kamailio to find the related blob record without
replicating the blob data
* procedure for adding a new blob entry:
1. insert into voip_usr_preferences with the empty value
2. insert into voip_usr_preferences_blob
3. the voip_usr_preferences value will be automatically updated
with the id of the created blob record
Change-Id: I9330613f50de20bc098a94f3fc28cfd4b3ad3c68
Added new usr_preferences with attribute = "no_404_fallback"
This option will enable/disable the user to disable 404 fallback when the callee UAc
replies with a 404 not found.
Change-Id: I414014e920f8f0fbd690b8b3551b0afbed5c6625
* this table is in the provisioning database and is used
to add additional location mappings for terminated calls on a
subscriber instead of the 'location_from_subscriber' preference
* 'location_from_subscriber' preference data is migrated into
the new table
Change-Id: I92726e765c51e87c4d815d01161d8866fe58ef9c
* this new view accumulates possible auth data
containing both subscrber usernames and devices
(aliases with is_devid=1)
* this view is used in subscriber auth and the proxy
code to fetch registered devices not only by
subscriber username but also by the device
Change-Id: Ic4e2596ad461c70acf34cf75a2590640813ec2ca
* Switch all 'redirect_sipwise' and 'profile_sipwise'
to 'redirect_ale' bootstrap method
* Remove them from enum
Change-Id: I394d5926c75a3784cb0fecff983ff3cfd3a889a5
This user/password combination is not used any longer by the monitoring
system and it is a security risk as it is using a hardcoded password
instead of the one from constants.yml.
Change-Id: If00789343e57c5e1e058e431d3dcfc59a6e3fd58
A new 'peer_group_tag' preferences allows to store a string value, which
will be used to narrow peering selection.
The 'caller_pattern' of a peering group has to match this tag to be
considered for outgoing calls.
Change-Id: Ia1ce7a70a3b036f7c37b054c0aeba36fb9b21352
* The 'is_system' column will be used for users
that will have permission to see, create,
edit, delete lawful intercept admins
* Make the default administrator is_system and
revoke its lawful_intercept flag
Change-Id: Ib3349d4e5719f1a16df00647f24ac49174ccc792
this cdr tag will be used to persist the compressed
delta datastructure for contract_balance records.
additional tablespace consumption is minimal: there
will be only one string value (~20chars on average)
required per cdr.
Change-Id: I32557443df2efa7381c85ddfb8c380c8df02df5e
* Store 'email' for administrators to use
for password reset
* Add additional 'can_reset_passsword' column
to indicate wether an admin can request
password reset
Change-Id: If383e1328eb091c68b8419c574dfae307e1b7920
A regression found in mr7.5 forced to apply an up script only
in that specific version (commit 5580ed34).
The commit is to create a dummy up script in order to keep the
ids consistent in all the versions.
Change-Id: I3d16a9edc3791ac030018ba95c4704388b5e4066