Because it is all hard-coded. It looks at every module database. It would need to be updated in a few places to be more dynamic and do these checks.
Hi. Installed on my FPBX17. I had red banner (but module is not red) and if i try to use it, when i select an inbound route i obtain this error:
SQLSTATE[42S02]: Base table or view not found: 1146 Table âasterisk.directory_detailsâ doesnât exist
Error selecting from directory::
My machine is an Ubuntu 22 with FPBX17 working and all modules updated.
Thanks for the feedback.
These 2 + more are now optional.
The only required modules are inbound routes, recordings, time conditions/ groups, users, and queues.
You should not see a red banner.
I have just updated the module to not require tables to be present.
Please try again.
Thanks. Now with this new version banner and mysql errors disappeared. All seems to be right. I will test it more in next days on more complex pbxs.
This needs a lot of modernization â the module code is extremely dated â but it could be useful for getting my head around some of our more complex dialplans, will check it out. Thanks for bringing it to our attention.
I tried to install it on FreePBX 13 and I received this:
/Âdrbd/Âhttpd/Âwww/Âhtml/Âadmin/Âmodules/Âdpviz/ÂDpviz.class.php42
Whoops \ Exception \ ErrorException (E_PARSE)
syntax error, unexpected â[â
/drbd/httpd/www/html/admin/modules/dpviz/Dpviz.class.php
panzoom
= :panzoom, horizontal
= :horizontal, datetime
= :datetime, destination
= :destination, scale
= :scale, dynmembers
= :dynmembers WHERE id
= 1"; $insert = [ â:panzoomâ => $panzoom, â:horizontalâ => $horizontal,
GET Data
display | modules |
---|---|
action | process |
quietmode | 1 |
online | 1 |
POST Data
modules Array ( [dpviz] => Array ( [action] => install [track] => stable ) )
Files empty
Cookies
lang | en_US |
---|---|
searchHide | 1 |
destinationUsage | 0 |
local-type | upload |
PHPSESSID | tuuh8j8u6rv9qfr09j0en49jf3 |
Session
langdirection | ltr |
---|---|
module_name | modules |
module_page | modules |
AMP_user | ampuser Object ( [username] => admin [id] => 431 [password:ampuser:private] => 86c16a459ecf39fd76a8e750f9d5074c4722f22b [extension_high:ampuser:private] => [extension_low:ampuser:private] => [sections:ampuser:private] => Array ( [0] => * ) [mode:ampuser:private] => usermanager [opmode:ampuser:private] => [deptname] => [_lastactivity] => 1744094603 ) |
Server/Request Data
SSLSETUP | true |
---|---|
HTACCESS | on |
HTTPS | on |
HTTP_HOST | 192.168.0.183 |
HTTP_USER_AGENT | Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:137.0) Gecko/20100101 Firefox/137.0 |
HTTP_ACCEPT | / |
HTTP_ACCEPT_LANGUAGE | en-GB,en;q=0.5 |
HTTP_ACCEPT_ENCODING | gzip, deflate, br, zstd |
HTTP_REFERER | https://192.168.0.183/admin/config.php?display=modules |
CONTENT_TYPE | application/x-www-form-urlencoded |
CONTENT_LENGTH | 75 |
HTTP_ORIGIN | https://192.168.0.183 |
HTTP_CONNECTION | keep-alive |
HTTP_COOKIE | lang=en_US; searchHide=1; destinationUsage=0; local-type=upload; PHPSESSID=tuuh8j8u6rv9qfr09j0en49jf3 |
HTTP_SEC_FETCH_DEST | empty |
HTTP_SEC_FETCH_MODE | cors |
HTTP_SEC_FETCH_SITE | same-origin |
HTTP_PRIORITY | u=0 |
PATH | /sbin:/usr/sbin:/bin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/ucb |
SERVER_SIGNATURE | Apache/2.2.15 (CentOS) Server at 192.168.0.183 Port 443 |
SERVER_SOFTWARE | Apache/2.2.15 (CentOS) |
SERVER_NAME | 192.168.0.183 |
SERVER_ADDR | 192.168.0.183 |
SERVER_PORT | 443 |
REMOTE_ADDR | 192.168.15.31 |
DOCUMENT_ROOT | /var/www/html/ |
SERVER_ADMIN | |
SCRIPT_FILENAME | /var/www/html/admin/config.php |
REMOTE_PORT | 53064 |
GATEWAY_INTERFACE | CGI/1.1 |
SERVER_PROTOCOL | HTTP/1.1 |
REQUEST_METHOD | POST |
QUERY_STRING | display=modules&action=process&quietmode=1&online=1 |
REQUEST_URI | /admin/config.php?display=modules&action=process&quietmode=1&online=1 |
SCRIPT_NAME | /admin/config.php |
no-gzip | 1 |
dont-vary | 1 |
PHP_SELF | /admin/config.php |
REQUEST_TIME | 1744094603 |
Environment Variables empty
Registered Handlers
- Whoops\Handler\PrettyPageHandler
This is a good tool. I created a similar tool with vis.js which also supports call pathss going through several FreePBX servers (versions 2.9, 2.10, 12, 13, 14, 15) representing each FreePBX modules in different colour. Of course, it will be hard to be created as a FreePBX module because the module should access mysql on all other FreePBX servers.
One feature request - support for Custom Destinations used for voicemails not attached to an extension. All our voicemails are setup in this way. This is displayed with dpvis:
This is displayed with my visualisation:
Ho great.
I started to do the same module.
Iâm happy, no need to work on it now.
Amazing module, thank you very much
Looks like youâre running an ancient version of PHP. We were running PHP 5.6 back in the v13 days, Iâd suggest getting up to that level.
Youâre welcome.
FreePBX Distro 10.13.66 is with PHP 5.3.28. I just tried it on an old server which is pending decommissioning first. It has no problems on newer servers.
I installed this on a few FreePBX 16 servers, worked brilliantly, and I am loving it⌠I wish I had this when I was learning (well, still amâŚ) and when I was cracking my head over complex configs that didnât work as intended.
This is much more relevant than just âeye candyâ - itâs a real tool to clarify, communicate, debug, speed up navigating the UI⌠great value!
Often the people using the PBX are very unclear about their own requirements, as I am sure many of you have experienced. They donât know whatâs possible, they canât get the complexities into their head, etc. Not their fault, this is all normal, I guess. I am now giving them these diagrams so they can see where their calls are going, and when, and howâŚ
I created a few Issues on github and the dev fixed things, added features, with warp speed amazing
Buy this man a coffee!! I did.
(I am not affiliated in any way, no strings attached to this suggestion, I am just a thankful stranger)
Right - well said! Eye candy is a bonus, not the goal of this.
We have avoided a lot of troubleshooting time researching (or trying to remember) the dial plan.
This is the biggest advantage. âWhy doesnât my phone ring? I should be in the queue like so and so.â or âCalling the office says we are closed! Itâs Tuesday, weâre open!â (but we or them forgot they took a vacation last year and the time group still exists)
I found a bug on this module.
The BLF on Phone Apps (Restapps) doesnât work anymore.
After uninstalling the module dpviz, the BLF works again.
Weird.
Franck,
Were you able to isolate the issue?
Is there a conflict with functions or databases causing the BLF to not work?
-We do not use phone apps and cannot test this.
Happy Friday everyoneâŚ
I have made some improvements on the module:
- Start from a node: Ctrl+click will redraw the diagram from that point. Ctrl+click on parent will revert.
- IVR Break Out Menus
- Navigation and usage help text within options section.
- Optional destinations (No Answer, Busy, Not Reachable) on extension nodes.
- Clicking an extension in a Queue or Ring Group will navigate to Extensions module.
- Better tooltips. (need to improve/ add more information here)
- Pattern matching routes (eg. _0[09])
Let me know if I broke anything or you run into any issues.
Thanks for all the suggestions and support.
Hmmm. Not yet.
I can do it, but Iâm busy now.
If Iâve got the time to dig where the issue comes from, I will try later.