Releases: 2600hz/kazoo
4.3.142
Changes for 4.3.142
Changes to branch 4.3
after version 4.3.141
.
Commits
-
2022 has arrived - by James Aimonetti
-
Add restrict_presence_event_publisher ecallmgr system_config option - by timeodonovan
When enabled it prevents all but the ecallmgr node handling a call from sending presence updates. This stops duplicate notifies being sent to devices which can result in them returning 500 errors, removing their subscriptions and subsequently breaking BLFs.
A caveat to this is that the initial state change will not be forwarded to subscribers when a device is dialling, as no ecallmgr node will be defined at this stage. This is usually for a very short period as the following state changes will be at the point where the call is being handled by an ecallmgr node.
-
KZOO-212: change bandwidth api url - by iceHESS
Old bandwidth API URL is shutting down. Using the new URL.
4.3.141
Changes for 4.3.141
Changes to branch 4.3
after version 4.3.140
.
Commits
-
PISTON-221: only record in ACDc once per call - by Daniel Finke
- prevent multiple overlapping recordings if caller re-enters a queue
-
invalidate ci cache keys because images are updated - by iceHESS
-
Fix to remove concatenated media names - by Kevin D
-
KTEL-10: Replace colons by dashes on fax attachments names - by Harenson Henao
When teletype sends a fax attachment, its name includes a time format that includes colons. Colons are not allowed characters for filenames in Windows and so many SMTP relays and mail servers will auto-correct the colon to a dash or underscore character. However, if the end user's server does not correct this, the resulting attachment is unopenable on Windows.
-
PISTON-1267 add a handler for action 'move' to channel's crossbar API - by Alexey Khabulyak
Add ability to move a call(call-flipping) via crossbar API
kazoo5 PR: 2600hz/kazoo-crossbar#203
-
FORUM-11759: Check for ID on req data - by James Aimonetti
Test creating a document with ID on the request data.
-
PISTON-973: big acdc_queue_manager refactor + queue manager diag tool - by Daniel Finke
-
rename some queue manager funs and call/cast messages for clarity
-
refactor agent ID list and count funs
-
replace ss_size
-
big refactor of update_strategy_with_agent
-
diagnostics launcher funs
-
diagnostics receiver attachment to queue manager
-
?DIAG macro and payload transformation
-
create acdc_queue_manager_diag_sup
-
update unit tests
-
-
Skip adding preflow on transfers - by James Aimonetti
When transferring a call, don't prepend a preflow.
Previously, preflows were prepended to all callflows when present. If
a preflow defined a TTS like "Welcome to Company X", the caller would
hear the TTS on call connection and, if transferred to a parking slot
via *31 (for instance), would hear the preflow TTS again before
hearing hold music.
Backport of 2600hz/kazoo-callflow#77
-
KZOO-190: Fix wave (wav) voicemail recordings transcription - by Harenson Henao
-
PISTON-1082: Crossbar validation errors with the same top level key will no longer overwrite each other but instead will now merge the keys where possible - by Ben Bradford
Kazoo 5pr: 2600hz/kazoo-crossbar#140
When CB builds the error response from multiple validation errors it would do a top level merge only resulting in errors regularly overwriting each other in the response.
EG:
Take the error list below
[{<<"numbers">>,<<"type">>, {[{<<"message">>,<<"Value did not match type(s): array">>}, {<<"target">>,<<"array">>}, {<<"value">>,<<"12345">>}]}}, {<<"numbers">>,<<"required">>, {[{<<"message">>, <<"Callflows must be assigned at least one number or pattern">>}]}}]
With the current merge CB would return:
{[{<<"numbers">>, {[{<<"required">>, {[{<<"message">>, <<"Callflows must be assigned at least one number or pattern">>}]}}]}}]}
With this solution, CB will respond with:
{[{<<"numbers">>, {[{<<"type">>, {[{<<"value">>,<<"12345">>}, {<<"target">>,<<"array">>}, {<<"message">>,<<"Value did not match type(s): array">>}]}}, {<<"required">>, {[{<<"message">>, <<"Callflows must be assigned at least one number or pattern">>}]}}]}}]}
This still does not handle the the case where the keys exactly match but the only way to do this would be to change the response type of the error to an array (Breaking change) but maybe its worth considering for a future version.
{ "numbers": { "unique": [ { "value": "12345", "message": "number is not unique" }, { "value": "54321", "message": "number is not unique" } ] } }
-
KZOO-179: add 988 as emergency classifier - by holy-batman
-
KZOO-185: increase stop recording expiration timer - by iceHESS
It has been observed the timer for expiration timer while waiting to receive
RECORD_STOP
event could timed out sooner than receiving that event. Increasingthis timer to allow more time for the event to arrive so the recording can
properly stored.
-
closes KAZOO-6141.
-
PISTON-1184: Correctly escape and wrap values when passing to FS to prevent special characters from causing issues - by Ben Bradford
4.3.140
Changes for 4.3.140
Changes to branch 4.3
after version 4.3.139
.
Commits
-
KZOO-173: Strict check ipv4 addresses - by holy-batman
when a number is passed through ip check it results in saying valid ip when its just a number, strict checking of ipv4 will make sure when an ip is properly formatted with dots is accepted as a valid IP.
-
Make sure alerts are enabled before processing - by holy-batman
fix crash when alerts are disabled and we still try to create new alerts.
-
PISTON-1086:Fixed incorrectly formatted kazoo_document validation system error responses - by Ben Bradford
Kazoo 5.x pr 2600hz/kazoo-core#211
-
Print per-application memory usage - by James Aimonetti
-
Don't crash on duplicate bindings - by James Aimonetti
-
disable a test in duo that verifies valid sig_auth because it is expired now - by iceHESS
Because the test sig_auth is expired, disabling the test until we find another valid one.
4.3.139
Changes for 4.3.139
Changes to branch 4.3
after version 4.3.138
.
Commits
-
KZOO-163: change users and vmboxes cb_listing to emit id as key - by iceHESS
To avoid pagination problem in crossbar changing these two views to use doc id as key.
-
iterator in cowlib - by lazedo
4.3.138
Changes for 4.3.138
Changes to branch 4.3
after version 4.3.137
.
Commits
-
HELP-19729: handle rapid carrier retry that leaves cf_exe processes - by Karl Anderson
There is potential for a callflow executor leak when sending a default error response. In the field we found inbound calls that were forwarded to a number which canceled the request almost immediately. When this happens callflows gets a message back from stepswitch that the bridge was unsuccessful then looks up the children in the callflow to see if any handle that specific hangup cause. In this case (and most configurations) there are no special branches so it performs a default action which is to send back a SIP error message. However, while that process is happening FreeSWITCH has already forwarded the cancel from the B leg back to the A leg and out to the carrier. The particular carrier in this incident then immediately retries the same call in another zone. When that call gets created in the other zone the ecallmgr call control usurps any other call control processes for that call id, terminating the ecallmgr call control in the first zone. It is only then that the first callflow sends the command to publish the SIP error but with no ecallmgr control process in that zone anymore nothing is there to process it. Callflows then waits indefinitely to hear back if the SIP error message was processed.
As a general avoidance of similar situations the all infinite wait times in call command have also been reduced to one day by default, however if the cluster is servicing things like turret phones they can set it back to infinity.
-
PISTON-1191 Add Queue name and options to tasks_listener - by Ben Bradford
After the removal of kz_globals from the tasks app the tasks app was creating N number of copies of an object where N was the number of tasks applications in the cluster.
Kazoo 5.x PR 2600hz/kazoo-tasks#13
4.3.137
Changes for 4.3.137
Changes to branch 4.3
after version 4.3.136
.
Commits
-
Upstream 4.3 added missing blacklist list to accounts schema updated relevant calls - by Ben Bradford
Kazoo 5 prs:
-
KZOO-154: make sure e911 email format is email - by holy-batman
when invalid email is entered into email section it crashes 911 notifications.
-
PISTON-1180: dialyzer fixes in tasks app - by Daniel Finke
-
PISTON-1185: remove unused ACDc
pending_logged_out
status - by Daniel Finke -
PISTON-1175: remove unused kapi_acdc_queue:sync_req/resp - by Daniel Finke
-
PISTON-1177: new approach to determine initial availability for agents of queue - by Daniel Finke
-
when acdc_queue_manager boots, do not immediately assume all member agents are available
-
when manager proc is ready, pub msg so that agents send an availability update
-
any subsequent agent starts/availability changes will already be picked up by existing bindings
-
-
add disposition value to cdr/interaction endpoint - by supapo
-
Fixed dialyzer issues that came up from running dialyze hard after 4.3.136 merge - by Ben Bradford
Dialyze hard identified some issues in kazoo proper and kz_http. Pulled in dialyzer fixes for kz_http and fixed csv proper bug
-
Pulled in improvements to validate-js that will fix the failing test due to incorrectly parsing of the word 'function' in JSON schema files - by Ben Bradford
@jamesaimonetti as we discussed.
-
PISTON-1186: Fixes 'make dialyze_changed' failure when no Erlang file changes - by Roger Neate
The
check-dialyzer.escript
script exits with a non-zero status when no Erlang files are specified on the command line. To prevent this from causing the makedialyze-changed
target (or targets that depend on it) to fail when no Erlang files have been changed, the makefile now filters the list of changed files.
4.3.136
Changes for 4.3.136
Changes to branch 4.3
after version 4.3.135
.
Commits
- update gun dep for 19.3 compat - by lazedo
- Bump 2021 - by James Aimonetti
4.3.135
Changes for 4.3.135
Changes to branch 4.3
after version 4.3.134
.
Commits
- KTEL-3: store password in context to send email if requested - by Hesaam Farhang
4.3.134
Changes for 4.3.134
Changes to branch 4.3
after version 4.3.133
.
Commits
-
KZOO-96: Resolve emergency email num resolve correct caller id number to get proper address - by Taran Romana
When e911 call is made from number different than number which has e911 active, make sure to resolve proper address and info. Also make sure to not try to send emails for e911 calls made using local carrier as we only care about numbers which have e911 activated and have email address setup for that.
-
SUPP-33: fix import/delete rates - by iceHESS
Fix import/delete rates in tasks app and cb_rates.
- fix import where ratedeck database was incorrectly formatted (like
ratedeck/
) because of
ratedeck_id
being an empty binary from CSV-
fix delete returning result which causing crashes in
kt_task_worker
-
in delete, group objects by db, also add better logging
-
convert import state to map
-
make a clean json to save to db: CSV missing fields are empty binary. Together with changes in kzd_rates make
sure we are generating a clean JSON to be saved to db.
-
try to update rate doc on conflict: When a user deletes the rates from ratedeck db, it is soft deleted by default. This commit will try to update and ensure save the doc even if it is deleted.
-
fix kzd_rates accessors return empty binary: Tasks app CSV has empty binary for all fields that are missing from uploaded CSV. This will cause kzd_rates to always return empty string and doc save with them in db. This will make sure all accessros has correct type ne_binary and handle situation when the value is empty binary so we save a clean JSON in db.
- fix import where ratedeck database was incorrectly formatted (like
-
KZOO-103: add smart formatting to remove hesitations - by holy-batman
https://cloud.ibm.com/docs/speech-to-text?topic=speech-to-text-output#smart_formatting
Smart formatting remove hesitation as well as formats text more elegantly.
-
refresh maintenance view if not found - by iceHESS
-
MSPB-164: Spare numbers - by holy-batman
fix issue where numbers were not being moved to spare where unassigned from a callflow.
-
SUPP-33: add maintenance view to all dbs, clean soft deleted from all dbs - by iceHESS
We should remove soft deleted docs from all configured dbs. To this we also need
to add maintenance view to all dbs.
Also
maintenance/soft_deletes
is update to have id and rev so deleting won'trequired lookup_rev one by one.
4.3.133
Changes for 4.3.133
Changes to branch 4.3
after version 4.3.132
.
Commits
-
PISTON-1170: Sets prepend_on_forward media content_type correctly. - by Roger Neate
The
kzm_message:forward_message/4
function branches, depending on whether the user has recorded an additional message to be prepended to the voicemail message being forwarded. Prepending the additional message requires the two media files to be merged into a temporary file. This is then written to the database as an attachment.Prior to this fix, the code assumed that the merged media file has an
mp3
format, which is not necessarily true. In addition, it did not pass any content-type option to thekz_datamgr:put_attachment/5
function which actually writes the attachment. As a result, the attachment metadata in the database always indicated a content-type ofapplication/octet-stream
.Calls to
kz_media_util:join_media_files/2
now ensure that the merged output format is specified explicitly, rather than relying on default behaviour. The same format is also mapped to the corresponding MIME type which is passed tokz_datamgr:put_attachment/5
to ensure the attachment metadata is correct. -
fix kapi decode_pid - by lazedo
-
PISTON-1163: Refactors cf_acdc_agent status update logic. - by Roger Neate
Voxter has introduced an additional
end_wrapup
action that requirescf_acdc_agent
changes. The existing logic seems somewhat harder to follow than necessary; in inconsistent in various ways; and seems to still include obsolete code. These changes only refactor the status update logic to give the code a more consistent structure and simplify future changes. Other than making log messages more consistent, these changes should have no functionally observable effect. -
add wav support and remove unnecessary code - by Taran Romana
Added wav supported and removed unnecessary code which was creating confusion, we already have the preferred audio codec not sure why we are looking for it again.
-
backport e911 crash fix - by Taran Romana
-
function. - by Ben Bradford
I had a issue where make code checks would change the line
-spec text(doc()) -> kz_term:api_ne_binary().
To
-spec kz_term:text(doc()) -> kz_term:api_ne_binary().
Kazoo 5pr 2600hz/kazoo5#39