TIPS Incredible PBX Code Collaboration

Samot

Well-Known Member
Joined
Mar 24, 2020
Messages
1,686
Reaction score
585
By the way, where can we read about your [faxing] solution??
Well I just started on mine over the weekend while watching Night of Champions but I should have it ready. by next week.
 
Last edited by a moderator:
Well I just started on mine over the weekend while watching Night of Champions but I should have it ready. by next week.
Still waiting on your Incredible PBX installer rewrite... but it's only been a couple years. :lurk5:
 
Still waiting on your Incredible PBX installer rewrite... but it's only been a couple years. :lurk5:
You mean the rewrite I started on Incredible PBX 2025 last year? Hence me asking all these questions last July on where to get actual current versions of things? It's a project I literally started on July 11, 2025....so yeah...couple years have passed. But since everything is now on a new OS and a new version of FreePBX....it was restarted a couple months back.
 
My bad... only been a year minus 9 days. TIP: New versions come out almost every year so, at your current pace, we're probably not going to see anything during our lifetimes.
 
That's not what he is talking about. He's talking about not having to do some work, save the work, tarball it up to share with someone else so they can also do some work and then tarball it up and send it back. I.e. "passing tarballs around"
As if managing a code repo is no "work" on our end. I think I'll pass. If you can't post a text file with your additions/corrections/improvements/new-script so that others can review it, then do it your way... elsewhere.
 
And FWIW, I will be glad to host your improvements in the same way that we host ours, on pCloud. Anyone that is interested can then download the scripts just as they would do with a proprietary code repo owned by M$FT.


 
Last edited:
For those that hate github (I don't) because of microsoft adding it to the AI division, an alternative is gitlab.

IMHO ipbx is more than one script, it depends on these 14 tarballs, without these it'll fail to build:
1. menuselect tarball,
2. iksemel tarball,
3. FreePBX backup of core incrediblepbx system tarball,
4. iptables-persistent tarball,
5. iptables4 tarball
6. rootfiles-debian10 tarball,
7. asteridex tarball,
8. ipbx-licenses tarball,
9. today3 tarball,
10. root folder update tarball,
11. ipbx2024 tarball,
12. ipbx-custom tarball,
13. PKCS-debian13 tarball,
14. incrediblepbx-17.0.0 tarball,

The above 14 should be made part of the repo.

PLUS obviously it needs these two:
15. freepbx-latest tarball,
16. asterisk-current tarball.

These 2 need not be made part of the repo.
 
@chris_c_: Are you volunteering to maintain the repo? FWIW: The tarballs in your list that are maintained by us have been static for at least 2 years and, in many cases, much longer. Wading through and debugging someone else's code that changes any of that code would be a job none of the current maintainers are willing to undertake primarily because of time constraints. But, by all means, have at it. And my offer to host the contributions still stands once you or anyone else has documented changes/improvements that need to be made.

As has always been the case, everyone is more than welcome to start things off by telling us what's not currently working. There's almost nothing on my list. And tell me again who else currently supports Asterisk 22 and 23 with FreePBX 17?
 
Last edited:
Last edited:
everyone is more than welcome to start things off by telling us what's not currently working. There's almost nothing on my list.

Not a comprehensive list but these are some of the things I found during testing and debugging while planning my new installer work. Along with a quick review of the updated version. The work I've done thus far addresses all these with 14 and now 16 outstanding still.

1. Duplicate repo resource lists
2. Installing of software-properties-common and ppa:ondrej/php. Ubuntu only. Fails.
3. Installing nodejs (20.19.x)+npm from Debian repos. Then adding NodeResource repo and reinstall nodejs (20.20.x). This causes npm to lose it's mind and not update anything because npm from the Debian repo expects nodejs from Debian repo. It also marks the npm node- packages for uninstall because of version conflicts.
4. libgnutls fails to install during the Ikisemel install.
5. The CFLAGS for Asterisk install are never set right and never used.
6. menuselect.makeopts throws errors.
7. /usr/lib64 isn't used on Debian. Throws error.
8. Sendmail is installed, enabled and started. Then postfix is installed but not enabled or started. In Debian 13 only one can live, so installing postfix immediately uninstalls sendmail.
9. Debian 13 uses Python 3.13. chmod +x /usr/bin/python3.11 fails. Also, it's installed with proper permissions so this would silently do nothing.
10. Python 3.13 no longer allows for packages to be installed via pip or pip3. You must use the python3 -m venv or pipx. Due to this gTTS fails to install.
11. The installer is doing `mkdir /var/log/sshd.log` which means fail2ban never actually writes to sshd.log because it's not a file. I've traced this one back to two previous versions.
12. Debian 13 actually ships with PHP8.4. Removing/purging 8.1 and 8.3 just throws errors about not existing.
13. ntp is no longer a viable package on Debian 13. This fails.
14. openvpn2027.service fails to start and throws errors.
15. The installer is still configuring and enabling mod_php along side php-fpm.
16. In the ext-group block, there's an -> instead of => meaning it throws errors in Asterisk and the fax is never handled.
17. This isn't a non-working thing.....the installer is logging all the passwords that are entered by the users.
 
Not a comprehensive list but these are some of the things I found during testing and debugging while planning my new installer work. Along with a quick review of the updated version. The work I've done thus far addresses all these with 14 and now 16 outstanding still.

1. Duplicate repo resource lists
2. Installing of software-properties-common and ppa:ondrej/php. Ubuntu only. Fails.
3. Installing nodejs (20.19.x)+npm from Debian repos. Then adding NodeResource repo and reinstall nodejs (20.20.x). This causes npm to lose it's mind and not update anything because npm from the Debian repo expects nodejs from Debian repo. It also marks the npm node- packages for uninstall because of version conflicts.
4. libgnutls fails to install during the Ikisemel install.
5. The CFLAGS for Asterisk install are never set right and never used.
6. menuselect.makeopts throws errors.
7. /usr/lib64 isn't used on Debian. Throws error.
8. Sendmail is installed, enabled and started. Then postfix is installed but not enabled or started. In Debian 13 only one can live, so installing postfix immediately uninstalls sendmail.
9. Debian 13 uses Python 3.13. chmod +x /usr/bin/python3.11 fails. Also, it's installed with proper permissions so this would silently do nothing.
10. Python 3.13 no longer allows for packages to be installed via pip or pip3. You must use the python3 -m venv or pipx. Due to this gTTS fails to install.
11. The installer is doing `mkdir /var/log/sshd.log` which means fail2ban never actually writes to sshd.log because it's not a file. I've traced this one back to two previous versions.
12. Debian 13 actually ships with PHP8.4. Removing/purging 8.1 and 8.3 just throws errors about not existing.
13. ntp is no longer a viable package on Debian 13. This fails.
14. openvpn2027.service fails to start and throws errors.
15. The installer is still configuring and enabling mod_php along side php-fpm.
16. In the ext-group block, there's an -> instead of => meaning it throws errors in Asterisk and the fax is never handled.
17. This isn't a non-working thing.....the installer is logging all the passwords that are entered by the users.
1. harmless
2. harmless
3. Incredible PBX 2026 shows node -v 20.20.2 and npm -v 10.8.2 and works. repo listing is also fine. see below...

For Node.js
Running node -v should return a version matching the NodeSource 20.x distribution branch. Depending on how recently your NodeSource repository cache was pulled, the exact output will be: [1]
  • v20.20.0 (or higher, e.g., v20.x.x) [1]

For npm
Because NodeSource embeds the official bundled version of npm directly inside the runtime installer, running npm -v will automatically align with Node 20's default package manager: [1, 2, 3]
  • 10.x.x (typically 10.8.2 up to 10.9.x depending on the minor Node point release)

Why this is a success
You will know the issue is entirely resolved because npm -v will execute instantly without throwing MODULE_NOT_FOUND errors.

4. Google Voice and Messaging no longer are supported with Asterisk so error is harmless.
5. harmless. Asterisk installs correctly.
6. menuselect.makeopts catches what would be compile errors. Happens regularly with Asterisk "improvements"
7. harmless
8. Yes. Originally installed sendmail until it started causing problems. Now we use Postfix so SendMail is removed.
9. harmless
10. gTTS no longer supported. see https://nerdvittles.com/introducing-incredible-pbx-2026-for-debian-13/
11. fail2ban writes to /var/log/fail2ban.log so this is harmless
12. Incredible PBX 2026 relies upon PHP 8.2 which installs properly
13. harmless
14. openvpn2027.ovpn fails until matching filename is installed in /etc folder. then OpenVPN is activated properly.

To add your Incredible PBX server to an existing OpenVPN network, begin by creating an incrediblepbx2027.ovpn template on your OpenVPN server. Be sure to comment out or delete the setenv line in the template. Then copy this template to /etc on your Incredible PBX server.

15. harmless
16. we handle faxing a different way now (as you know) so this is harmless. see @kenn10 comment below.
17. installer only logs passwords entered by root user during install. log is available only to root user in /root.
 
Last edited:
@Samot
16. we handle faxing a different way now (as you know) so this is harmless
Typically, an existing install script is modified for new challenges as a new release, such as IncrediblePBX-2026, comes out. My IncrediblePBX-2026.sh installation script does not have that mistake in it. Are you still looking at IncrediblePBX-2025 or 2027? IncrediblePBX-2026 is the only one worth QA'ing at this point as that should be the way forward. Digging into the ones running on Debian-12 are a waste of time.
,
Code:
215 [ext-group](+)
216 exten => fax,1,Noop(Fax detected)
217 exten => fax,2,Goto(custom-fax-iaxmodem,s,1)
218
219 [custom-fax-iaxmodem]
220 exten => s,1,Answer
221 exten => s,n,Wait(1)
222 exten => s,n,Verbose(3,Incoming Fax)
223 exten => s,n,Set([email protected])     ; fax email address of recipient
224 exten => s,n,Set(FAXDEST=/tmp)  ; folder where faxes will be stored
225 exten => s,n,Set(tempfax=${STRFTIME(,,%C%y%m%d%H%M)})
226 exten => s,n,ReceiveFax(${FAXDEST}/${tempfax}.tif)
227 exten => s,n,System(/usr/bin/tiff2pdf -o "${FAXDEST}/${tempfax}.pdf" "${FAXDEST}/${tempfax}.tif")
228 exten => s,n,System(/usr/bin/echo "Incoming fax is attached." | /usr/bin/mail -s "Incoming FAX  Received" -A "${FAXDEST}/${tempfax}.pdf" "${FAXEMAIL}")
229 exten => s,n,Hangup
 
Last edited by a moderator:
My IncrediblePBX-2026.sh installation script does not have that mistake in it. Are you still looking at IncrediblePBX-2025 or 2027? IncrediblePBX-2026 is the only one worth QA'ing at this point as that should be the way forward.

Code:
215 [ext-group](+)
216 exten => fax,1,Noop(Fax detected)
217 exten => fax,2,Goto(custom-fax-iaxmodem,s,1)
218
219 [custom-fax-iaxmodem]
220 exten => s,1,Answer
221 exten => s,n,Wait(1)
222 exten => s,n,Verbose(3,Incoming Fax)
223 exten => s,n,Set([email protected])     ; fax email address of recipient
224 exten => s,n,Set(FAXDEST=/tmp)  ; folder where faxes will be stored
225 exten => s,n,Set(tempfax=${STRFTIME(,,%C%y%m%d%H%M)})
226 exten => s,n,ReceiveFax(${FAXDEST}/${tempfax}.tif)
227 exten => s,n,System(/usr/bin/tiff2pdf -o "${FAXDEST}/${tempfax}.pdf" "${FAXDEST}/${tempfax}.tif")
228 exten => s,n,System(/usr/bin/echo "Incoming fax is attached." | /usr/bin/mail -s "Incoming FAX  Received" -A "${FAXDEST}/${tempfax}.pdf" "${FAXEMAIL}")
229 exten => s,n,Hangup
@kenn10 Does fax,2 line look like it's correct? Because you click on ward's link above and look at it...that's what you see. Don't forget....there were already external instructions on nerd vittles to past the block in. Here no typo: https://nerdvittles.com/faxing-returns-for-incredible-pbx-2027-platforms. However, the install script...typo.
## Install Faxing Prep ##
apt-get update
apt-get install libtiff-tools -y
apt-get install ghostscript -y
sed -i '/^\[custom-fax/,/^$/d' /etc/asterisk/extensions_custom.conf
echo '
[ext-group](+)
exten => fax,1,Noop(Fax detected)
exten -> fax,2,Goto(custom-fax-iaxmodem,s,1)

[custom-fax-iaxmodem]
exten => s,1,Answer
exten => s,n,Wait(1)
exten => s,n,Verbose(3,Incoming Fax)
exten => s,n,Set(FAXEMAIL=) ; fax email address of recipient
exten => s,n,Set(FAXDEST=/tmp) ; folder where faxes will be stored
exten => s,n,Set(tempfax=${STRFTIME(,,%C%y%m%d%H%M)})
exten => s,n,ReceiveFax(${FAXDEST}/${tempfax}.tif)
exten => s,n,System(/usr/bin/tiff2pdf -o "${FAXDEST}/${tempfax}.pdf" "${FAXDEST}/${tempfax}.tif")
exten => s,n,System(/usr/bin/echo "Incoming fax is attached." | /usr/bin/mail -s "Incoming FAX Received" -A "${FAXDEST}/${tempfax}.pdf" "${FAXEMAIL}")
exten => s,n,Hangup

' >> /etc/asterisk/extensions_custom.conf
 
@kenn10 Does fax,2 line look like it's correct? Because you click on ward's link above and look at it...that's what you see. Don't forget....there were already external instructions on nerd vittles to past the block in. Here no typo: https://nerdvittles.com/faxing-returns-for-incredible-pbx-2027-platforms. However, the install script...typo.
Please provide a link to the install script you reference, and we will fix it. Thanks.

p.s. I think this was fixed a year and a half ago... https://www.voip-info.org/forum/threads/re-faxing-returns-for-incrediblepbx-2027.27963/#post-177797
 
Last edited:

Members online

No members online now.

Latest Posts

Forum statistics

Threads
26,726
Messages
174,669
Members
20,286
Latest member
lluis.riera
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.
Back
Top