- Get the greeting format to support mp3
- Fixes a problem when using elevenlabs
- Code assumed wav format
- Check class existence before instantiating objects
* fix new lines in ax83h template
phone does not provision without the extra lines
* fix new lines in ax86r template
phone does not provision without the extra lines
- Use the new transcribe_queue class and method
- Move call recording transcription to xml_cdr_transcripts
- Remove transcribe_target table, keys and colum name
* Missing open statement
Missing open statement
```
$view['sql'] .= "); \n";
```
* Double SELECT will break query
Double SELECT break query
* Forgot update version
Forgot update version
* No matching (
No matching opening
```
FROM
v_contacts as c
);
```
Replaced unindexable CONCAT() with COALESCE(col, '') || ... and refactored dialplan lookup into a CTE with UNION to split destination-based and public-context paths.
CONCAT() is marked as STABLE in PostgreSQL and cannot be used in functional indexes, which forced sequential scans during dialplan lookups. To enable future indexing and improve query optimizability, we replace all CONCAT(a, b, c) calls with (COALESCE(a, '') || COALESCE(b, '') || COALESCE(c, '')), which is functionally equivalent for text columns (treating NULLs as empty) and composed only of IMMUTABLE operations.
Additionally, the query was refactored using a CTE with UNION to decompose a complex top-level OR condition into two independent branches:
1. Dialplans linked to matching destinations.
2. Public dialplans with domain_uuid IS NULL.
This structure allows the planner to optimize each path separately, avoid full-table scans, and leverage primary key lookups efficiently - even without additional indexes.
On a production dataset with 3kk records in v_dialplans, this change reduced dialplans query latency from ~1.5s to ~37ms (40.5x faster), with further gains possible via expression indexes.
- Count the primary key in the SQL statement. Slightly more efficient.
- Updated $dir to $xml_dir
- Add an extra line feed
- Change spaces to tabs
- Remove the method return
* Number translation through exception unable load private property
PHP Fatal error: Uncaught Error: Cannot access private property
Under class defined
```
private $xml;
```
You can't access this properly under private constant
* Fix private property access under class for import()
PHP Fatal error: Uncaught Error: Cannot access private property.
* Vars table v_vars is not propagate table data
Path
```
$xml_file = $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH.'app/switch/resources/conf/vars.xml';
```
Will expand too
```
/usr/share/nginx/fusionpbxapp/switch/resources/conf/vars.xml
```
This causes a failure to provision data into v_vars table for installs with a customized path.
* Update Groundwire template
Voicemail number was not properly named and would not provision. & was needed under wsContactsURL to validate the xml. Opening it gave an error stating:
This page contains the following errors:
error on line 14 at column 119: EntityRef: expecting ';'
Below is a rendering of the page up to the first error.
* Update Groundwire template
Had one too many & under wsContactsUrl line