Commit Graph

8050 Commits

Author SHA1 Message Date
FusionPBX
3a6d6e6bbc Remove console output 2025-06-26 06:30:05 -06:00
FusionPBX
d3123ec460 Update multiple git related functions 2025-06-26 06:28:16 -06:00
frytimo
d5286a12bc Websockets (#7393)
* Initial commit of websockets

* Move app_menu to the active_calls websockets

* Fix hangup function

* Remove connection wait-state on web socket server so events can process

* Add timestamp and debug level to console for service debug output

* Remove debug exit

* Fix typo for ws_client instead of ws_server

* Update app_config.php

* Fix typo and remove empty function

* Remove call to empty function

* Fix the menu to point to the correct location

* Remove Logging Class

* Rename service file

* Rename service file

* Fix the in progress browser request

* Fix browser reload and implement 'active_calls' default values

* Add apply_filter function

* Create new permission_filter object

* In progress active calls now use filter

* Add invalid_uuid_exception class

* add event_key_filter to honor user permissions

* add and_link and or_link for filters

* Fix disconnected subscriber and add filters to honor permissions

* Add $key and $value for filter

* define a service name

* catch throwable instead of exception

* Add $key and $value for filter and allow returning null

* Update permission checks when loading page

* Add apply_filter function to honor subscriber permissions

* Add create_filter_chain_for function to honor subscriber permissions

* Add apply_filter function to honor subscriber permissions

* Add apply_filter function to honor subscriber permissions

* create interface to allow filterable payload

* create interface to define functions required for websocket services

* Pass in service class when creating a service token

* Allow key/name and return null for filter

* Adjust subscriber exceptions to return the ID of the subscriber

* Add event filter to filter chain

* Add command line options for ip and port for websockets and switch

* update service to use is_a syntax

* initial commit of base class for websockets system services

* initial commit of the system cpu status service

* remove extra line feed

* fix path on active_calls

* initial proof of concept for cpu status updated by websockets

* Allow returning null

* Use default settings to set the interval for cpu status broadcast

* Improve the CPU percent function for Linux systems

* Show more debug information

* Allow child processes to re-connect to the web socket service

* Fix websockets as plural instead of singular

* Add class name list-row

* Update active_calls.php

* Update active_calls.php

* Update websocket_client.js

* Update app_config.php

* Update app_menu.php

* Update debian-websockets.service

* Update debian-active_calls.service

---------

Co-authored-by: FusionPBX <markjcrane@gmail.com>
2025-06-24 13:07:57 -06:00
fusionate
17be5f51a3 CDR - Details: Display call recording playback/waveform, if allowed. 2025-06-23 13:24:14 -06:00
frytimo
c53ee8c503 Remove setting app and uuid for groups (#7392) 2025-06-23 13:18:57 -06:00
FusionPBX
57ffc57092 Update functions.php 2025-06-21 11:49:38 -06:00
Trick Solutions
282134980e Fix closing tag on if/else (#7390)
The firmware download section was missing the closing {/if}

Co-authored-by: Matthew Midgett <mmidgett@nationalwi-fi.com>
2025-06-18 15:14:18 -06:00
Trick Solutions
5336b34a75 WiFi AP configuration support for Grandstream devices - Adding support for AP1 and AP2 (#7385)
* Add SNMP configuration support for Grandstream HT801,HT802 and GXP2135 devices

 Added configurable SNMP settings to Grandstream HT801, HT802 and GX92135 provisioning template. Includes enable/disable toggle, SNMP version selection (default v2c), and community string configuration. SNMP is disabled by default
  for security.

* Update app_config.php

* WiFi AP configuration support for Grandstream devices

Added WiFi access point 1 and 2 configuration (SSID, password, security type) for GRP2612/2613/2614/2615/2616 devices.
  Includes database configuration entries with unique UUIDs and template variable integration following FusionPBX patterns.

---------

Co-authored-by: Matthew Midgett <mmidgett@nationalwi-fi.com>
2025-06-03 20:38:26 -06:00
Trick Solutions
fb574fead1 Add SNMP configuration support for Grandstream HT801,HT802 and GXP2135 (#7384)
* Add SNMP configuration support for Grandstream HT801,HT802 and GXP2135 devices

 Added configurable SNMP settings to Grandstream HT801, HT802 and GX92135 provisioning template. Includes enable/disable toggle, SNMP version selection (default v2c), and community string configuration. SNMP is disabled by default
  for security.

* Update app_config.php

---------

Co-authored-by: Matthew Midgett <mmidgett@nationalwi-fi.com>
2025-06-03 07:58:54 -06:00
Bifur1
4ca21d906f Add Grandstream variable for IP mode (DHCP, Static, Etc) (#7380)
* Update {$mac}.xml

Allow device to not revert back to DHCP on reboot and keep manually entered static IP.

* Add variable for IP mode (DHCP, Static, etc)

Prevents device from reverting back to DHCP on reboot if a static IP is manually set.
2025-05-30 21:13:53 -06:00
chansizzle
dde70b8508 HT818 - Add default setting variables for tr069 & acs (#7378) 2025-05-30 21:12:22 -06:00
FusionPBX
3f6b08b17e Update {$mac}.xml 2025-05-30 16:47:39 -06:00
FusionPBX
1103e082cb Update {$mac}.xml 2025-05-30 13:37:45 -06:00
FusionPBX
948af4f76b Update {$mac}.xml 2025-05-30 12:55:21 -06:00
FusionPBX
cab8aaa463 Update the Cisco 9861 template 2025-05-29 17:42:24 -06:00
FusionPBX
94f787a068 Add default template for the Cisco 9861 2025-05-29 17:41:22 -06:00
FusionPBX
ee16644e25 Rename methods used in restore default
Renamed methods
- delete to restore_delete 
- restore to restore_default
2025-05-28 19:49:45 -06:00
FusionPBX
b96b5f8c0f menu_item_protected deprecated
This protected feature has not been working correctly. At the moment commented out depending on feedback it maybe removed entirely.
2025-05-28 19:37:58 -06:00
Bifur1
0284ee3e86 Force Groundwire to use GSM/LTE for emergency calls (#7371)
This applies to users in the United States. When a user dials 911 or 933 (commonly used for 911 testing) from the Groundwire app, the call is automatically placed using the device's cellular service. This approach can enhance location accuracy for emergency services and ensure more reliable call completion.
2025-05-22 09:59:39 -06:00
Bifur1
832c5f5eb8 Add variable for speaker phone volume (#7368)
Add variable to provision speaker phone volume. Helpful when phones are primarily used as intercom devices. Values are 0-15, 15 being the loudest.
2025-05-22 09:59:16 -06:00
Bifur1
ce9758de20 Update {$mac}.xml (#7369)
Allow device to not revert back to DHCP on reboot and keep manually entered static IP.
2025-05-22 09:58:46 -06:00
Bifur1
999f4d42cd Add additional Yealink T34W block out variables (#7370)
Extend support for multiple block out variables
2025-05-22 09:57:55 -06:00
chansizzle
0287bfa7f3 Grandstream - use variable for firmware upgrade protocol (#7377)
* Grandstream - use variable for firmware upgrade protocol

The firmware upgrade protocol was hard-coded as https. Updated to use the default settings variable.
2025-05-22 09:55:18 -06:00
K-Flagman
62791e4eb3 [CORE] [MENU] Feature Assign/Unassign User Groups (#7373) 2025-05-17 13:50:02 -06:00
Kamil M
e37797453a Bugfix for T48u (#7364)
Missing ending if statement.
2025-05-12 09:46:19 -06:00
frytimo
c4e63c2562 Do not create a new socket when one is provided (#7358)
Check that the current socket in the object is false before trying to create a new socket
2025-04-25 10:38:43 -06:00
FusionPBX
0b74f0bb26 Update functions.php 2025-04-17 14:14:03 -06:00
frytimo
e7393cc7c0 New Feature OpenID Connect (#7355)
* Refactor authentication to allow for OpenID Connect
The authentication class has been refactored to separate the `validate` function for the method `create_user_session`. This is needed for the OpenID Connect module to authenticate a user without going through the process of all authentication plugins. Only the function `check_user_cidr` has been rewritten to use a single loop instead of a double-loop.
Due to the fact that create_user_function is public, the $result associative array is checked to ensure the required fields are present and the UUID fields are valid UUIDs. Further checking could be done against the database to ensure the UUIDs exist but this has been suppressed at this time because database queries would be required.

* Database class modified to allow for login banners for OpenID Connect
The database class is responsible for creating the view for login. The OpenID application required banners to be present so that any OpenID Connect authentication mechanism could be used. Each banner displayed has the properties of: name, image, alt, and url. The name is the class name of the authentication plugin. This will match the action in the URL. The image is the image banner used for the login. The alt is the alternate text used for screen readers. Each authenticator is responsible for providing each of the field values.

* Added PHPDocs for the check_cidr function

* Add backwards compatibility for PHP versions below 8

* Remove get_banner_alt

* Update check_cidr to allow cidr array

* Update authentication.php

* Update functions.php

* Update authentication.php
2025-04-17 13:48:16 -06:00
FusionPBX
96a6cca25b Define the settings object as global 2025-04-14 10:46:57 -06:00
FusionPBX
c3952028b1 Use the settings get method for the buttons 2025-04-14 10:36:21 -06:00
FusionPBX
a955b9389f Synchronize the grp templates 2025-04-11 17:04:51 -06:00
FusionPBX
4eb1b00dc7 Add algorithm to sip_authentication 2025-04-11 14:56:42 -06:00
FusionPBX
2ba87e5bee Add function escape_textarea 2025-04-11 12:06:52 -06:00
FusionPBX
a02fcdca37 Update domains all, add enabled and disabled methods
The domains all  method uses domain_uuid for the array key
2025-04-11 11:39:33 -06:00
FusionPBX
07cf65dee5 Update domains all and session methods
Updated to improve and simplify it
2025-04-11 10:34:38 -06:00
FusionPBX
f9c7a3df40 Update grandstream_missed_call_notification default to No
This matches the pcode template. Grandstream description set it to no by default.
2025-04-10 18:11:27 -06:00
FusionPBX
992b18389a GRP add grandstream_wifi_enabled
This is needed to prevent removing wifi settings that were set manually.
2025-04-10 17:55:27 -06:00
FusionPBX
373c32ea55 Fix the Grandstream GRP sip.transport 2025-04-10 17:33:34 -06:00
FusionPBX
d583e8352d Use more intuitive names 2025-04-07 14:48:47 -06:00
FusionPBX
4f4a1f9c15 Update switch.php 2025-04-01 09:13:41 -06:00
Antonio Fernandez
7040635baf Bug Fix - music on hold path (#7349) 2025-04-01 09:10:53 -06:00
frytimo
5ed20f1c2f Fix plugin class name mismatch in auto loader (#7350)
* Fix plugin class name mismatch in auto loader
When matching the file name of the plugins in the authentication plugin folder they do not match. This causes auto loader not to find and load the class.

* Update auto_loader.php

---------

Co-authored-by: FusionPBX <markjcrane@gmail.com>
2025-04-01 09:07:26 -06:00
frytimo
5c1be1a318 Update clear cache method for settings object (#7348)
* update clear cache method for settings object

* re-use the database object from settings object
2025-03-31 10:04:33 -06:00
FusionPBX
091dca3ceb Update footer.php 2025-03-29 13:39:24 -06:00
FusionPBX
0b9fd924a9 Add not empty check on the domains session 2025-03-29 13:20:38 -06:00
FusionPBX
d1d24a0a9c Add yealink_force_voice_ring_volume
Forced ringer volume: 0 - 15
2025-03-27 17:44:10 -06:00
frytimo
00c6befb70 Add missing file path when cache miss in auto_loader (#7339) 2025-03-27 13:33:36 -06:00
frytimo
b5af974d34 Add backslash to the trim command (#7338) 2025-03-26 14:56:55 -06:00
frytimo
c165afc53e Fix trim command on interface name (#7336) 2025-03-26 13:11:37 -06:00
Brett@NGEN
cf55ca59ed Corrected case errors in provisioning template for Grandstream GHP6xx Series (#7203)
* Corrected case errors for Grandstream GHP6xx Series

* Corrected case - remotecontrol

* Update {$mac}.xml

* Replaced all camel case within XML element names

* Found a few more

Matching pattern: name=".*[a-z][A-Z].*"
2025-03-22 16:45:14 -06:00