Commit Graph

9025 Commits

Author SHA1 Message Date
konradSC ac388f9229
MWI for Multi Registrations on Multi Profiles
Sometimes you can have multiple registrations for the same extension across multiple SIP profiles. This adds the functionality to fire an event for each unique SIP profile. I also added a check to see if we have already send an event for a profile since you don't want multiple events fired one SIP profile.
2021-04-16 11:08:57 -04:00
FusionPBX f5d766ad66
Add polycom_subscribe_expires to default settings. 2021-04-13 18:34:17 -06:00
FusionPBX a80cae4259
Add cache dialplan ring_group_context 2021-04-13 15:16:09 -06:00
FusionPBX 18b8a7478a
Change user_context to domain_name as the cache uses domain name not the context.
Context and domain are usually the same but there could be times that they are different. However code is always using the domain name for the cache key.
2021-04-13 13:37:15 -06:00
agree 0c605dfd30
Update extension_edit.php 2021-04-11 10:36:45 -04:00
agree 5967dfbfaf Add max registrations per extension setting 2021-04-11 00:28:06 -04:00
agree c2558237f0
Update extension_settings.php 2021-04-10 23:42:18 -04:00
agree 71c7b40e34
fix extension settings using wrong class
extension setting used the database class instead of the extension_setting class causing not to clear the cache
2021-04-10 23:39:00 -04:00
FusionPBX 3ce50ef8d2
Add a comment with description: add a band-aid for CLI editors with faulty syntax highlighting 2021-04-09 12:12:31 -06:00
FusionPBX b7b0df86b0
Merge pull request #5855 from daniel-lucio/patch-186
Add a band-aid for CLI editors with faulty syntax highlighting.
2021-04-09 12:10:27 -06:00
FusionPBX 74b26dd1b3
Merge pull request #5851 from kovacsrobi77/master
Registrations list is empty
2021-04-08 17:42:36 -06:00
chansizzle 725b347ead
added snom update policy variable 2021-04-08 17:15:07 -06:00
FusionPBX 7d01da7464
Merge pull request #5865 from tony1661/patch-1
Fixed Queues so they work and fixed the commented examples
2021-04-07 21:49:19 -06:00
FusionPBX 90c7225086
Merge pull request #5866 from tony1661/patch-2
Updated the descriptions for some fields
2021-04-07 21:48:10 -06:00
Gill Abada eff7246ef4 add 988 national suicide prevention lifeline (USA) 2021-04-07 23:24:11 -04:00
Antonio Fernandez d9ae3d9288
Updated the descriptions for some fields
The description will be a bit easier for newer admins who want to know how a Queue works.
2021-04-07 01:20:13 -04:00
Antonio Fernandez fe390a3509
Fixed Queues so they work along with example cleanup
In troubleshooting a known FreeSwitch bug with mod_callcenter, I started to try out mod_fifo as an alternative. I realized that the dialplan that was being created by Fusion was not working. Creating a queue is very simple so I knew it wasn't a user error on my part so I dug in deeper. There were a few issues I needed to fix to get queues working again.

1. Add a "break on-true" to each condition destination_number (it was changed in two places)
2. populate the "action" for callers entering the queue via the $agent_queue_extension_number
3. remove the appended "_agent" which was added to the $queue_name which was causing the queue for entering and retrieving calls different.
4. remove the inline="true" for the action that executes the lua script

I also fixed the example comments to be accurate to how the queues should be written in the dialplan.
2021-04-07 01:09:22 -04:00
FusionPBX aa4cfbc791
Merge pull request #5864 from demonspork/Fix-Yealink-feature-key-race-dnd
Dialplan Fix for Feature Key Sync Race
2021-04-06 22:17:31 -06:00
demonspork d53bac7f55 Dialplan Fix for Feature Key Sync Race
This is a dialplan approach to fix the feature key sync loop/race with yealink phones. This aproach may also need to be extended to the Call Forward dialplans as well. It limits the number of simultaneous calls for a particular user to change their DND/Forwarding status to a single call at a time. This prevents the infinite loops that the yealinks can get into if the user presses the DND button too quickly with feature key sync enabled.

I am also reverting the lua fix because it was not reliable and can still easily allow the loop to occur.
2021-04-06 15:35:40 -05:00
FusionPBX 06617e0c1e
Change effective_caller_id_name inline false
The inline attribute breaks effective_caller_id_name. Changed inline attribute to false to fix the issue.
2021-04-06 13:25:36 -06:00
chansizzle c85dd621c8
remove duplicate, vmtransfer softkey position var 2021-04-05 17:30:54 -06:00
FusionPBX 94d35ca1d7
Update call-forward-all disable accountcode variable
This variable should be optional as it can be defined in other places as well. It should not be assumed that this is the only place it could be set for those that need it.
2021-04-03 08:41:53 -06:00
Luis Daniel Lucio Quiroz 3d1360b932
Important variable that needs to be present 2021-04-02 10:57:21 -04:00
Luis Daniel Lucio Quiroz 8721dc8e80
[4.5] This is a pure cosmetic fix
When editing in the CLI with any editor that does syntax highlight, the * breaks it. Adding on the following line /* **/ restores the right highlighting
2021-04-01 14:25:17 -04:00
nemerald-voip 65c80c7d55 Fix broken script 2021-03-31 16:33:54 -07:00
nemerald-voip 6560f39c1d rebase file 2021-03-31 09:02:46 -07:00
nemerald-voip c1057293b5 Fix voicemail transcription using Google
Transcriptions using Google were broken after last commit. 
transcribe_alternate_language was not defined anywhere it Google would return 400 error.
Added variable to fix the issue
2021-03-31 08:51:59 -07:00
FusionPBX 3385b296fa
Improve dialplan import efficiency.
- Add a more efficient way to check if the dialplan exits
- Remove restore_advanced_xml not used anymore.
- Add dialplan_context = public
2021-03-30 12:59:47 -06:00
FusionPBX 045248ae19
Change the style of the code to match preferences. 2021-03-27 01:53:34 -06:00
kovacsrobi 40ac4ff212 Correct ignore to IGNORE in iconv paramter. 2021-03-26 23:31:51 +01:00
Andrew Querol 65cdf03be3 Remove unused info action 2021-03-25 09:17:16 -05:00
Andrew Querol 972934e780 Update the main valet_park dialplan to match the improvements made to the auto dialplan.
Parking lots are no longer directly prefixed with *. But for backwards compatibility can be called that way still.

Parking lot name changed from `park` to `5900` to allow monitoring the whole parking lot with a BLF if desired.

Fix regex from matching 5900 to allow this dialplan to work with the valet_park_auto if enabled.
2021-03-25 09:17:16 -05:00
Andrew Querol df7f4db55d Improve the valet_park auto dialplan by adding support for auto out and support for whole lot BLF monitoring.
If the Referred-By header is set call the normal `auto in` code. If it isn't set that means someone called it directly, call `auto out` ato attempt to pop the calls in the lot in FIFO order.

This also changes the parking lot name from `park` to `5900` this allows phones to monitor `park+5900` to get the status of the whole parking lot. Before you would have to monitor `park+park` to get this functionality.
2021-03-25 09:17:01 -05:00
Andrew Querol 42b421e646 Add a setting to control the grouping behavior if people want it back the old way. 2021-03-25 09:16:12 -05:00
Andrew Querol c16a4f60b5 Group extensions by their call_group when viewing all extensions. 2021-03-25 09:16:12 -05:00
Andrew Querol 92bbb77561 Check for duplicate MAC addresses in the device import 2021-03-25 09:15:46 -05:00
Andrew Querol 228b3d0b31
Fix typo with destination ID for the new destination buttons 2021-03-23 00:42:33 -05:00
FusionPBX 49adc1922a
Merge pull request #5802 from netpro25/patch-1
Small error in Fax Retry.lua
2021-03-22 23:39:25 -06:00
Andrew Querol 4075a12a74 Do not use the null coalescing operator to retain pre PHP 7 support. 2021-03-23 00:07:35 -05:00
Andrew Querol ee30b59909 Switch to window.open to '_blank' to prevent accidental navigation that looses changes. 2021-03-22 23:44:33 -05:00
Andrew Querol 59dbcd02a7 Check if there is an ID before redirecting 2021-03-22 23:37:11 -05:00
Andrew Querol 14a8c10849 Fix voicemails to support the new UUID linking 2021-03-22 23:34:51 -05:00
Andrew Querol f1fbbad7ab Recordings are stored in 'uuid' not 'recording_uuid' 2021-03-22 23:25:12 -05:00
Andrew Querol 152955625c Initial attempt at allowing the destination button button
to dynamically change

This sets the UUID as the ID in the options list. The we use the javascript onclick listener to get the id(uuid) of the selected option and open the link to the edit page.
2021-03-22 23:13:39 -05:00
FusionPBX 0af832a0a7
Merge pull request #5842 from junction1153/patch-9
Update record_message.lua
2021-03-22 22:06:26 -06:00
FusionPBX 8d3852328b
Merge pull request #5844 from demonspork/Destination-Click
Add direct link button for dynamic destinations
2021-03-22 22:03:42 -06:00
demonspork ea8aa47029 Add direct link button for dynamic destinations
Added a button that links directly to the currently selected destination's edit page if you have the permission to view or edit it.
2021-03-22 20:59:18 -05:00
FusionPBX 325f4f1513
Change socket.sleep(0.2) to freeswitch.msleep(200) 2021-03-22 15:18:57 -06:00
Joseph 92fd572b33
Update record_message.lua
Additional flexibility for google transcription
2021-03-20 20:40:50 -04:00
demonspork efd27fbe90 fix send_email function for multi-part addresses
The send_email function wasn't successfully parsing ; or , separated email address lists. I simplified it's processing.

While I was at it I removed the "valid email" check from email_test.php because that step is already being done in the send_email function that is called and it safely returns the appropriate error. I would have had to rewrite that function to handle the multiple email lists otherwise.
2021-03-19 19:15:32 -05:00
FusionPBX 2dcf3e1fdc
Merge pull request #5840 from chansizzle/patch-425
Added Yealink DST vars to default settings.
2021-03-19 11:42:44 -06:00
chansizzle 3546e7debe
added yealink DST vars 2021-03-19 10:32:13 -06:00
demonspork 3ef6cf05db
Merge branch 'master' into Fix-DND-Feature-Sync-Loop 2021-03-19 11:12:44 -05:00
FusionPBX 4c708bf692
Merge pull request #5813 from chansizzle/patch-405
Grandstream call waiting ring
2021-03-19 09:30:46 -06:00
FusionPBX eef13cbb96
Merge pull request #5566 from winsock/multiple-registration-fix
Fix Device Provisioning and Feature Sync across SIP Profiles
2021-03-19 09:25:51 -06:00
demonspork cf1dfe9070 Fix DND Feature Sync loop
Add Delay to prevent infinite feature key Loops on some phones (Yealink....)
2021-03-18 20:05:31 -05:00
agree bf2418f131
fix extension setting edit not clearing cache 2021-03-18 18:09:03 -04:00
agree 829d3f1abe
extension settings fix not clearing cache 2021-03-18 18:06:24 -04:00
FusionPBX 48cffe41da
Use permission fax_extension_view instead of if_group. 2021-03-18 10:44:43 -06:00
FusionPBX d0fbbd6a2e
Use the new fax_extension_view_domain instead of if_group function 2021-03-18 10:37:38 -06:00
FusionPBX 95b5660da9
Use the new fax_extension_view_domain instead of if_group superadmin and admin. 2021-03-18 10:35:37 -06:00
FusionPBX d27c7e210e
Use the new fax fax_extension_view_domain permission.
Also selected specific fields rather than using the * wild card in the select statement.
2021-03-18 10:23:03 -06:00
FusionPBX 4ec6e5832d
Add a new permission fax_extension_view_domain 2021-03-18 09:56:07 -06:00
Andrew Querol 7217da15f0 Update the feature event LUA code to match the fix in PHP
This renames `get_profile` to `get_profiles` which either returns nil for no profiles or a array of unique profiles.

Then each function that used to take the single sip_profile was updated to take this array and send events to each profile the user is part of.
2021-03-18 09:31:22 -05:00
Andrew Querol 7d57cef6ac Fix device provisioning and event notification for multiple registrations across different SIP profiles. 2021-03-18 09:31:22 -05:00
FusionPBX 71532a0cea
Merge pull request #5805 from demonspork/patch-2
Fix follow_me_uuid error when enabling DND
2021-03-17 17:44:28 -06:00
FusionPBX be990c2584
Merge pull request #5814 from daniel-lucio/patch-184
[4.5] DTMF handling
2021-03-17 17:43:31 -06:00
Luis Daniel Lucio Quiroz fa12c4daea
Update dtmf_handler.lua
Event-Date-Timestamp resolution is in microseconds, transfer_history is only seconds. We need have the same key.
2021-03-17 19:19:55 -04:00
Luis Daniel Lucio Quiroz 908e7f67d6
Update dtmf_handler.lua 2021-03-17 12:02:54 -04:00
agree 05befb3f99
Extension fix cache not clearing
The cache was broken for user users without the extension_user_context permission
2021-03-16 17:36:11 -04:00
Luis Daniel Lucio Quiroz fc96e3ae77
DTMF handling
this will give the dtmf_history (similar to the transfer_history variable)

the use cases of this are only limited to the imagination
2021-03-16 15:43:21 -04:00
chansizzle 8672784b02
grandstream call waiting ring 2021-03-15 15:12:12 -06:00
FusionPBX b336537da7
Merge pull request #5597 from winsock/mwi_only_enabled
Only send MWI notifications for enabled voicemail boxes.
2021-03-12 10:05:07 -07:00
FusionPBX ea800eefa8
Merge pull request #5804 from winsock/patch-10
Fix bulk device imports with TFTP path enabled
2021-03-12 10:02:10 -07:00
FusionPBX f6aef73231
Merge pull request #5803 from winsock/patch-9
Update provision write() to match render()
2021-03-12 10:00:49 -07:00
FusionPBX 1110b12e1b
Update the Queue assigned agents to me more efficient.
- Populated select list for all assigned agents does not scale well in the browser. 
- Assigned list scales better without the all of the agents in the list. 
- New select list shows all agents so that new agents can be added.
2021-03-11 22:48:49 -07:00
Andrew Querol 78276cb258 Only send MWI notifications for enabled voicemail boxes. 2021-03-11 11:55:02 -06:00
demonspork d7eccddf25
Fix follow_me_uuid error when enabling DND
The follow me update code in do_not_disturb.lua was being executed even when the follow me uuid didn't exist. Let me know if this is the wrong approach to fix this in lua, I'm not particularly well versed in this but this seemed to have fixed it in my testing.

I have some concerns about this section of code in general though, it seems that enabling server side DND will turn off follow me, but then turning off DND won't return follow me to its original state. Is this the intended behavior? and if so we might need to make a workaround.
2021-03-11 11:29:05 -06:00
Andrew Querol 2d175db556
Fix bulk device imports with TFTP path enabled
If you bulk imported devices and had the TFTP path set the configuration files would not be written out to the TFTP path.
2021-03-11 10:36:16 -06:00
Andrew Querol 57c9bc7460
Update provision write() to match render()
This will ensure that anyone using TFTP still can use array template variables
2021-03-11 10:25:22 -06:00
Marcel Manning f03224cf16
Update retry.lua
Zero should not be wrapped in double quotes as it's causing an SQL error.

PGRES_FATAL_ERROR
2021-03-11 10:30:47.738673 [ERR] switch_pgsql.c:680 Error executing query:
ERROR:  invalid input syntax for type numeric: "'0'"
LINE 1: ...p/c8505148-1b02-4f6f-9157-b5cf64ebcc4d.tif','','','''0''',''...
                                                             ^
2021-03-11 10:59:11 -05:00
FusionPBX a3269a3d6d
Merge pull request #5798 from winsock/patch-5
Update switch_recordings.php to optimize base64 recordings
2021-03-10 00:05:29 -07:00
FusionPBX 25fee0b7f5
Merge pull request #5799 from winsock/patch-6
Do not load base64 data into MOH edit by selecting the specific fields that are needed.
2021-03-10 00:05:05 -07:00
FusionPBX 242b38557c
Merge pull request #5800 from winsock/patch-7
Update recording edit to not pull base64 data by selecting the specific fields that are needed.
2021-03-10 00:03:45 -07:00
FusionPBX 1597d338ee
Merge pull request #5797 from winsock/patch-4
Do not load base64 data into phrase edit by selecting the specific fields that are needed.
2021-03-10 00:03:00 -07:00
FusionPBX 61bc654f61
Update phrase_edit.php 2021-03-10 00:01:18 -07:00
FusionPBX 166e76bb77
Merge pull request #5791 from emaktech/patch-21
CDR - Don't Check Filesystem for Recording on Load
2021-03-09 22:34:52 -07:00
Andrew Querol 5a9b734a51
Update recording edit to not pull base64 data
This is less of an improvement than the other changes I proposed since it's only doing it for one file. But it still doesn't need to pull that recordings base64 data here if it has it.
2021-03-09 16:36:52 -06:00
Andrew Querol 67eecb5485
Do not load base64 data into MOH edit
This will fix unnecessary memory usage/latency in this application when dealing with base64 recordings.
2021-03-09 16:32:35 -06:00
Andrew Querol d48d98893f
Update switch_recordings.php
recording_base64 was pulled from the database and never used. Remove it to optimise base64 handling.
2021-03-09 16:23:49 -06:00
Andrew Querol ea0823ea4d
Do not load base64 data into phrase edit.
This will fix unnecessary memory usage/latency in this application when dealing with base64 recordings.
2021-03-09 16:15:01 -06:00
FusionPBX 864397a453
Merge branch 'master' into master 2021-03-09 09:44:47 -07:00
FusionPBX f455e8fa94
Make sure the database object is accessible to Settings ojbect. 2021-03-08 18:12:31 -07:00
nemerald-voip 4bcbed524c
Update app_config.php
Enabled pagination available in in recent firmware. Added ability to control which buttons show on idle and home screens
2021-03-08 07:14:42 -08:00
Antonio Fernandez 8c1d73e02e
Update app_languages.php
Added a better description for the value based on a video in the members portal.
2021-03-07 11:52:42 -05:00
FusionPBX 739d9c3365
Remove the dash from the time_base_score_sec label 2021-03-06 16:53:59 -07:00
FusionPBX 5f1ca5888b
Fix a small bug with queue_time_base_score_sec. 2021-03-06 16:52:05 -07:00
Antonio Fernandez 468d932063
Update call_center_queue_edit.php 2021-03-06 16:11:34 -05:00
Antonio Fernandez d664d5579d
Update app_config.php 2021-03-06 16:09:33 -05:00
Antonio Fernandez 0f9bacf9bf
Update call_center_queue_edit.php 2021-03-06 16:07:59 -05:00
Antonio Fernandez 6a116dd78b
Update call_center_queue_edit.php 2021-03-06 16:03:20 -05:00
Antonio Fernandez ef93ff09f1
Update call_center_queues.php 2021-03-06 15:58:38 -05:00
Antonio Fernandez ff38a86118
Update app_languages.php 2021-03-06 15:56:59 -05:00
Antonio Fernandez 394e67ede0
Update app_languages.php
The translations are copied from the label-time_based_score however I used Google Translate to translate "seconds" in various languages.
2021-03-06 15:53:21 -05:00
Antonio Fernandez 64a6128b21
Update app_config.php 2021-03-06 15:47:13 -05:00
FusionPBX 44300f81e3
Merge pull request #5775 from winsock/device_import_mac_address_normalize
Fix device MAC address imports not normalizing.

# Context
MAC addresses were not being normalized when importing CSV files. If it is not normalized you can get a not found error when provisioning since that is checking the database with a normalized MAC address

# Overview
- Use the same normalization done in device_edit.php in device_imports.php
2021-03-06 09:55:56 -07:00
FusionPBX 98392adcf0
Merge pull request #5790 from demonspork/grandstream_hide-remote-blf_status
Grandstream: Hide BLF Remote Status And More Distinctive Ring

Hide the other connected party on the BLF of supported phones. When not hidden a busy BLF will show the other connected party/sttaus of the call by flashing back and forth between the BLF label and the caller ID.
It also impacts the park buttons, but they typically only show the word "park" because of the character limitations.
Also did more effective find/replace for the distnctive ring variables with regex! (plus a typo was made in the previous version)
2021-03-06 09:49:00 -07:00
FusionPBX 5b3f849b4a
Remove forward_caller_id_uuid field and minor code cleanup.
Minor code cleanup improve indentation, trailing spaces and add some line feeds.
2021-03-06 09:43:31 -07:00
FusionPBX 7cb17effe8
Remove follow_me_caller_id_uuid field. 2021-03-06 09:26:19 -07:00
FusionPBX 07fb1c2dc6
Remove follow_me_caller_id_uuid field. 2021-03-06 09:12:39 -07:00
FusionPBX 297fea5d64
Remove the forward_caller_id_uuid field. 2021-03-06 09:06:31 -07:00
FusionPBX 75b38c9d7f
Remove forward_caller_id_uuid field. 2021-03-06 09:05:32 -07:00
FusionPBX 4ccbebc9bc
Remove forward_caller_id_uuid field. 2021-03-06 09:01:03 -07:00
FusionPBX 4f8413cc6a
Remove forward_caller_id_uuid field. 2021-03-06 09:00:00 -07:00
FusionPBX 8e79821304
Remove forward_caller_id_uuid field. 2021-03-06 08:59:12 -07:00
FusionPBX ee1e4727c6
Remove call_forward_caller_id permission. 2021-03-06 08:53:49 -07:00
FusionPBX f82cdd4830
Remove follow_me_caller_id and field follow_me_caller_id_uuid. 2021-03-06 08:51:27 -07:00
FusionPBX acbda27f4a
Remove caller ID on follow me and call forward.
The caller ID is redundant as it is already set on the extension.
2021-03-06 08:47:10 -07:00
FusionPBX 7390f79ae0
Add destination order to the order by. 2021-03-06 08:16:30 -07:00
FusionPBX 70577ac83f
Add destination order to the database and use it. 2021-03-06 08:14:54 -07:00
FusionPBX c6707fc835
Add destination_order ot the destinations table. 2021-03-06 08:10:47 -07:00
FusionPBX 906b86d3dc
Use elseif instead of a series of if statements.
Also replace strlen with isset.
2021-03-05 20:03:57 -07:00
FusionPBX 0b91af9f42
Add option to handle category: provision type: array 2021-03-05 12:09:26 -07:00
Andrew Querol c7a35cc1ad Fix device MAC address imports not normalizing.
If it is not normalized you can get a not found error when provisioning since that is checking the database with a normalized MAC address
2021-03-04 17:33:25 -06:00
FusionPBX 46d13689fc
Fix a duplicaiton problem when editing and saving extension settings. 2021-03-04 13:41:27 -07:00
emaktech a0ab52d369
CDR - Don't Check Filesystem for Recording on Load
I have been debugging slow loading on our CDR pages for the last few days now.

One issue that we have encountered is that currently as the page loads, it checks the filesystem for each file one at a time. In our case, we move recordings to object storage after 1 week, so each time we check for a file it passes api calls which take over 1 second each to return a result. This causes this page to not load at all for us in many cases.

Regardless, this current method is unnecessarily I/O intensive and really page load is probably not the time to be checking for each file one by one.

So this PR is the simplest solution - remove the check entirely. I would contend that the administrator should remove the record_path from the database if the file was removed so this should be acceptable.

This solves this particular issue for us, but would need feedback from others if not checking for files makes sense.
2021-03-03 15:48:17 -05:00
demonspork 99fb4ae078 Grandstream: Hide BLF Remote Status And More Distinctive Ring
Hide the other connected party on the BLF of supported phones. When not hidden a busy BLF will show the other connected party/sttaus of the call by flashing back and forth between the BLF label and the caller ID.
It also impacts the park buttons, but they typically only show the word "park" because of the character limitations.
Also did more effective find/replace for the distnctive ring variables with regex!
2021-03-02 21:34:25 -06:00
Len a021867008
Remove duplicate uuid/variables 2021-02-28 20:35:51 -05:00
FusionPBX 771b958ebe
Reformat the status to show the reg expire seconds. 2021-02-27 10:08:41 -07:00
FusionPBX d10ea48bee
Get the domain name using the device. 2021-02-26 17:17:32 -07:00
demonspork 0f9098cfb4 Grandstream: Plantronics EHS and additional non-clobbering of settings
Grandstream template updates to support plantronics EHS via grandstream_headset_type and grandstream_headset_key_mode variables.
Also updated wallpaper and screensaver if/else statements to leave out the variables if they are not defined instead of clobbering the user setting. If you want to mandate a certain setting, just set the variable. If the variable is unset it will not overwrite on provision and allow the previous setting to remain.
2021-02-25 15:23:33 -06:00
FusionPBX e69bebcbe8
Merge pull request #5778 from demonspork/cdr-stats-improvements
Improved Missed Call accuracy, cdr statistics, and hide duplicated CDRs from Enterprise Ring Groups
2021-02-24 17:37:27 -07:00
FusionPBX fe92309901
Update index.lua 2021-02-23 21:00:56 -07:00
FusionPBX d2ff58ee42
Update index.lua
Added a commented out resync option.
2021-02-23 20:56:37 -07:00
demonspork c11589b1c3 Track Voicemail Message Success/Failure in CDR
Track whether or not a message was actually left in the voicemail box. Previously we only knew that voicemail answered, now we know whether the caller left a message.
Callers who didn't leave a message now show up in the "Cancelled" call filter in xml_cdr.php

Bonus: Fixed a bug with the originating_leg_uuid that was breaking extension summary from a previous commit and some other minor bugs/typos.
2021-02-21 21:09:37 -06:00
demonspork 0ef2551698 Exclude cc_side agent legs from missed_call
Excluded cc_side = agent calls from being marked as missed_call = true

Fixed the previous performance issue with adding the cc_side != 'agent' to the SQL and removed its filter from the rendering loop for the xml_cdr.
2021-02-21 18:26:24 -06:00
demonspork b5272984d1 Don't filter LOSE_RACE of already filtering originating_leg_uuid
It is redundant to filter out LOSE_RACE when originating_leg_uuid is also filtered, there is an overlap where every call with LOSE_RACE also has an originating_leg.
2021-02-20 11:51:24 -06:00
demonspork 77974b71dc Fix Query performance for cc_side agent
For some unexplained reason, including the `"and cc_side != 'agent'` in the WHERE tanks the query performance from seconds to minutes on Postgres 9.4. It runs great on Postgresql 13. Reverting to the "blank content while writing the page content" approach for this value unless I can find the source of the problem. - Oh, also removed an unnecessary condition that prevents you from filtering by LOSE_RACE.
2021-02-20 11:51:24 -06:00
demonspork 92dc62a7b4 Fix TTA display bug in Export CDR PDF
Same thing as in the xml_cdr.php page display. If the call is answered instantly, less than a second, then the difference is 0s, and the 0s is a visual indicator that the call was answered, it just took less than a second. Calls that didn't get answered have a large negative number stored in the TTA field, 0 is an answered call.
2021-02-20 11:51:24 -06:00
demonspork d150f16b9d Fixed "Failed" call status in CDR
Re-implemented the commented out "Failed" call status SQL filter. It was no different than leaving the "Call status" search box empty. Removed the send_refuse restriction.
2021-02-20 11:51:24 -06:00
demonspork 56a318b2f0 Fix TTA display bug
If the TTA is 0 because the call was answered in less than a second (so that the answer_epoch and start_epoch are in the same second), it would not display the TTA at all. This is safe to include 0 because "unanswered" calls are going to have a TTA that is is the negative value of the start time, significantly lower than 0.
2021-02-20 11:51:24 -06:00
demonspork ef38b15cdc Add new missed call rules to HTTP CDR Imports
Add new missed call rules to HTTP CDR Imports. They had only been added to the xml_cdr class used by the file import.
2021-02-20 11:51:24 -06:00
demonspork 1a1edf1195 Improved Missed Call accuracy, cdr statistics, and hide duplicated CDRs from Enterprise Ring Groups
Changes
--------
  - Improve CDR Import Logic so that missed_call column is more accurate to the "missed" status. It would previously mark unanswered outbound calls as "missed". These are their own category of call.
  - Don't mark the CDRs of the "legs" of an Enterprise Ring Group call as missed, only the originating_leg will be marked (one missed call per call) - We could also just "skip" importing these call legs. Simultaneous ring groups don't have these duplicated CDRs for every ringing phone. The "Skip" approach might make most of the rest of this work irrelevant.
  - Create `originating_leg_uuid` column in v_xml_cdr and import it into the database during CDR imports so it is available for filtering Enterprise Ring Group calls out of CDRs and reports.
  - Move logic that hides the agent leg of CC calls, LOSE_RACE calls, and the Enterprise Leg hiding code from xml_cdr.php into xml_cdr_inc.php into the SQL query WHERE clause so the CDR page looks more consistent. The logic is the same, but these calls are now excluded from the query result entirely instead of having to "skip" rendering them in the list on the xml_cdr.php page.
  - Improved CDR statistics page to use the missed_call variable instead of relying upon billsec and answer_stamp/answer_epoch. Added the same logic as the xml_cdr pages to the query so it excludes enterprise ring group call legs.
  - Laid the query groundwork in xml_cdr_statistics to report on Average TTA (No UI changes yet to include that statistic)

Retroactive Changes
---------------------
There are a few changes going back in time to bring everything in line with this better reporting accuracy:
  - If you want the populated the `originating_leg_uuid column` in `v_xml_cdr`, it will rely upon having the `json` column and not having deleted the data from it like I know some people do for space saving.
  - If you don't have the json column,  you are mostly out of luck for hiding the duplicate legs of Enterprise ring group calls. It might be possible, but it isn't going to be easy.
  - On Newer Versions of postgres, this works:
```
UPDATE v_xml_cdr SET originating_leg_uuid = (json->'variables'->>'originating_leg_uuid')::uuid WHERE json->'variables'->>'originating_leg_uuid' IS NOT NULL;
```
  - For some reason on postgres 9.4, I had to UPDATE every single record because I couldn't get it to allow the json syntax properly after the WHERE. This is fine, it doesn't change the end result it just means it has to run the UPDATE on every record, which will take a while
```
UPDATE v_xml_cdr SET originating_leg_uuid = (json->'variables'->>'originating_leg_uuid')::uuid;
```
  - To remove the `missed_call = true` on all your previous outbound records so that they don't show up when you filter on missed (outbound unanswered calls can be accurately listed with TTA max 0 and direction outbound)
```
UPDATE v_xml_cdr SET missed_call = false WHERE direction = 'outbound' AND missed_call = true;
```
2021-02-20 11:51:24 -06:00
Len e7c55ccc1d
Duplicate variable yealink_ringtone_url and uuid
Duplicate variable yealink_ringtone_url and uuid 7af991ec-ddb9-4942-a05d-d1acc529fef5
2021-02-18 18:29:33 -05:00
FusionPBX 71b10db150
Merge pull request #5770 from konradSC/patch-90
Add Toll Allow to Call Broadcast
2021-02-17 14:01:49 -07:00
chansizzle 91719cc374
added pin lock vars 2021-02-17 13:14:49 -07:00
konradSC a55b9a6377
Add toll allow 2021-02-17 10:51:42 -05:00
konradSC e4212fa335
Add toll allow 2021-02-17 10:51:11 -05:00
konradSC 7ae966efc6
Add Toll Allow to Broadcast 2021-02-17 10:49:22 -05:00
demonspork 202bc7363e Fixed "Missed" link and exclude LOSE_RACE from CDR stats
Simple change to exclude lose_race and fix a URL change for the xml_cdr page.
2021-02-16 21:21:59 -06:00
Andrew Querol b92ed17f17
Fix app_config typo for recordings.
storage_type was never initialized as a setting in the database due to the y counter being reset to 0 after it. This was causing the storage_type setting to not show up in the UI.
2021-02-15 13:53:37 -06:00
FusionPBX 43735a93e9
Update the URL from type to import_type 2021-02-11 15:33:11 -07:00
FusionPBX b5f9db0bd2
Update the URL from type to import_type 2021-02-11 15:32:19 -07:00
agree 74c7f236ff
Follow me fix call recording 2021-02-11 12:59:34 -05:00
FusionPBX 449f6ab872
Remove the cdata seems to cause problems rather than help. 2021-02-11 03:35:16 -07:00
chansizzle 691dee7353
yealink cp920 firmware path 2021-02-10 14:43:34 -07:00
FusionPBX 2ca45d4cf2
Add elseif and improve indentation. 2021-02-10 12:38:18 -07:00
FusionPBX 0fbd90899a
Merge pull request #5760 from daniel-lucio/patch-183
More DB compatibility
2021-02-10 12:36:17 -07:00
FusionPBX 3b4cc55671
Move the extension settings button. 2021-02-10 00:42:08 -07:00
FusionPBX 5b83dc8ab5
Merge pull request #5761 from greenbea/patch-20
fix comparison operator
2021-02-09 16:53:42 -07:00
FusionPBX c3ee52596e
Change the permisison for the settings button. 2021-02-09 14:15:09 -07:00
FusionPBX 34f6d3e068
Add support for extension_settings. 2021-02-09 13:23:59 -07:00
markjcrane 682c632520 Add new extension_settings feature 2021-02-09 13:09:32 -07:00
agree ee1ca8a507
fix comparison operator 2021-02-09 14:18:21 -05:00
Luis Daniel Lucio Quiroz 52c70f6172
Update app_defaults.php 2021-02-09 14:14:53 -05:00
FusionPBX 38a9e1fae0
Add import button if the feature is installed. 2021-02-08 11:52:29 -07:00
FusionPBX af73671c32
Add import button if the feature is installed. 2021-02-08 11:51:48 -07:00
agree b7eef0e69e
Fix negative lookahead 2021-02-03 23:29:10 -05:00
FusionPBX f43910e328
Update ivr.conf.lua 2021-02-03 16:25:08 -07:00
agree c4dfb7ce59 IVR Menu fix menu options with same length as direct dial regex 2021-02-03 17:23:51 -05:00
agree 9ad77b64bd
Ring group fix missed call alert 2021-02-03 12:18:34 -05:00
agree a39a65d21e
ring group release database handle before bridge 2021-02-02 12:58:23 -05:00
FusionPBX 43e2bfc422
sip_h_Diversion on call-forward-all change default to true. 2021-02-01 22:11:15 -07:00
FusionPBX d4ee4c1991
Change from true to optional 2021-02-01 22:00:30 -07:00
FusionPBX 9b36f0015f
Merge pull request #5750 from greenbea/patch-14
Fix agent record selected
2021-02-01 19:54:58 -07:00
agree 1205e89796
dialplan xml fix cache delete when editing global dialplans 2021-01-31 16:08:29 -05:00
agree 50d2d49b9e
Fix agent record selected
`$agent_record` is a string not a Boolean
2021-01-30 22:40:26 -05:00
agree 5fda5d811f call center agent record 2021-01-29 13:56:04 -05:00
FusionPBX 456aa8dce4
Add outbound caller id name and number to follow me destinations. 2021-01-28 17:34:30 -07:00
FusionPBX 2ea3d8a62a
Add more escape functions to the click to call php file. 2021-01-27 22:25:04 -07:00
agree 8e7452e8c7
click to cal 2021-01-27 13:49:01 -05:00
FusionPBX 9213c71b71
Merge pull request #5704 from winsock/patch-1
Do not clobber caller ID names if no number is set
2021-01-26 22:55:39 -07:00
FusionPBX 6c50deee2c
Time condition exclude invalid presets with incorrect json syntax to make it more resilient. 2021-01-26 11:53:44 -07:00
FusionPBX 2e4d07b941
Merge pull request #5705 from emaktech/patch-2
Minor french language updates
2021-01-26 08:43:13 -07:00
FusionPBX 54457c8cc1
Merge pull request #5706 from emaktech/patch-3
Minor French update
2021-01-26 08:42:44 -07:00
FusionPBX d6d010e39b
Merge pull request #5708 from emaktech/patch-5
French language update
2021-01-26 08:42:03 -07:00
FusionPBX 524bf1e230
Merge pull request #5709 from emaktech/patch-6
French language update
2021-01-26 08:41:46 -07:00
FusionPBX 7954af8e6c
Merge pull request #5710 from emaktech/patch-7
French language update
2021-01-26 08:41:16 -07:00
FusionPBX cc322c7650
Merge pull request #5712 from emaktech/patch-9
French language update
2021-01-26 08:40:36 -07:00
FusionPBX 0bc3b4cf57
Merge pull request #5714 from emaktech/patch-11
French language update
2021-01-26 08:38:56 -07:00
FusionPBX 30eb6c942f
Merge pull request #5715 from emaktech/patch-12
Micro update to french language
2021-01-26 08:38:22 -07:00
FusionPBX 8638aa6251
Merge pull request #5728 from emaktech/patch-13
FR-CA update
2021-01-26 08:37:48 -07:00
FusionPBX 5ed3989b4e
Merge pull request #5736 from emaktech/patch-15
French Translation update
2021-01-26 08:36:46 -07:00
FusionPBX d883aafa21
Merge pull request #5737 from emaktech/patch-16
Update app_languages.php
2021-01-26 08:36:04 -07:00
FusionPBX e029ae2729
Merge pull request #5738 from emaktech/patch-17
Update app_menu.php
2021-01-26 08:35:36 -07:00
FusionPBX 92fe4753f0
Merge pull request #5739 from emaktech/patch-18
Update app_config.php
2021-01-26 08:35:07 -07:00
FusionPBX 37889ee6e7
Merge pull request #5740 from greenbea/patch-11
When there's a single app in the app log it's saved as an single object in the json not as an array of objects
2021-01-26 08:34:35 -07:00
fusionate 1b2dc75fa6 Call Center Queues - Delete: Unload deleted queue configurations. 2021-01-25 17:09:55 -07:00
fusionate 0c3aa93dc9 Call Center Agents - Delete: Fix bulk delete bug. 2021-01-25 12:30:42 -07:00
nemerald-voip 3e24d553d9
Update app_config.php 2021-01-25 10:47:59 -08:00