mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2026-01-06 11:43:50 +00:00
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>
This commit is contained in:
@@ -391,6 +391,29 @@ abstract class service {
|
||||
}
|
||||
}
|
||||
|
||||
private static function log_level_to_string(int $level = LOG_NOTICE): string {
|
||||
switch ($level){
|
||||
case 0:
|
||||
return 'EMERGENCY';
|
||||
case 1:
|
||||
return 'ALERT';
|
||||
case 2:
|
||||
return 'CRITICAL';
|
||||
case 3:
|
||||
return 'ERROR';
|
||||
case 4:
|
||||
return 'WARNING';
|
||||
case 5:
|
||||
return 'NOTICE';
|
||||
case 6:
|
||||
return 'INFO';
|
||||
case 7:
|
||||
return 'DEBUG';
|
||||
default:
|
||||
return 'INFO';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Show memory usage to the user
|
||||
*/
|
||||
@@ -416,7 +439,8 @@ abstract class service {
|
||||
|
||||
//enable sending message to the console directly
|
||||
if (self::$log_level === LOG_DEBUG || !self::$forking_enabled) {
|
||||
echo $message . "\n";
|
||||
$time = date('Y-m-d H:i:s');
|
||||
echo "[$time] [" . self::log_level_to_string($level) . "] " . $message . "\n";
|
||||
}
|
||||
|
||||
// Log the message to syslog
|
||||
|
||||
Reference in New Issue
Block a user