Skip to content

Instantly share code, notes, and snippets.

View lgaetz's full-sized avatar

Lorne Gaetz lgaetz

  • Nova Scotia, Canada
View GitHub Profile
@lgaetz
lgaetz / extensions_custom.conf
Last active December 12, 2024 22:37
PJSIP signaling/media encryption reader
; FreePBX dialplan to create a dialable feature code that will play audio back to the caller telling them if the
; pjsip signaling and rtp/srtp audio they are using is encrypted or not
;
; latest version: https://gist.github.com/lgaetz/3c2bc4709607fdde40a278f980dbe9b2
;
; License: GNU GPL3
;
; Usage - place the dialplan below in the file /etc/asterisk/extensions_custom.conf and reload the dialplan (apply config)
; from a local device dial 4511. The audio played will indicate if signaling and/or media is encrypted.
;
@lgaetz
lgaetz / FreePBX Dialplan Captcha
Last active November 30, 2024 00:03
FreePBX Dialplan Captcha
; FreePBX Dialplan to block robocalls
;
; License: GNU GPL3+
; Latest version: https://gist.github.com/lgaetz/bdc261b0d12efafeb1eed64651c7d32b
;
;
; Usage: Place the dialplan below in /etc/asterisk/extensions_custom.conf
; change the context for the trunk(s) to from-pstn-captcha1
; Apply Config
;
@lgaetz
lgaetz / FreePBX Campon hack dialplan
Last active November 20, 2024 21:41
Campon Hack
; FreePBX Dialplan to mimic the old Campon Feature in fpbx (Asterisk CCSS)
;
; License: GNU GPL3+
; Latest version: https://gist.github.com/lgaetz/40636245b6846f3aab372b22eb310e40
;
;
; The Goal:
; Watcher extension dials a prefix feature code and target extension. Once the target extension ends their current (or next) call,
; fpbx automatically sets up a call between the watcher and target extensions. Secondary goal, avoid AGI/ARI if possible
;
@lgaetz
lgaetz / lgaetz-callfile
Last active November 20, 2024 21:09
Gentleman Caller
; FreePBX dialplan to schedule a call for future using Asterisk call file.
;
; License: GNU GPL3+
; latest version: https://gist.github.com/lgaetz/ec3509da8d989a00064337f194b9d58e
;
; Asterisk diaplan sub requires 3 arguments
; ARG1 = dialstring for first leg of call
; ARG2 = dialstring for second leg of call
; ARG3 = how many minutes in the future to schedule the call
;
@lgaetz
lgaetz / lgaetz bounce
Last active August 13, 2024 14:27
Feature code to seamlessly bounce an active bridged call between a user’s multiple devices
; FreePBX dialplan for a feature code that can be dialed from an idle device that will immediately bounce
; any active call from any of the the same user's extensions. Primary use case is when a user has multiple
; registered devices they can quickly move the active call between deskphone, to mobile client to desktop client.
;
; License: GNU GPL3+
; latest version: https://gist.github.com/lgaetz/4c14829c14eb0a739a216016d9f394b2
;
; version history 2024-03-22 First commit working
; 2024-03-24 Fix hint and change ext away from _.
@lgaetz
lgaetz / lgaetz-click2call.php
Created November 24, 2023 16:40
Local PHP script for originating a call from local extension to another number
<?php
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
*
* Script: lgaetz-click2call.php
*
* Latest version: https://gist.github.com/lgaetz/6ff9aeff59de40df5755c52d85a65c9b
*
* Usage: Scipt to list/toggle/set FreePBX Call Flow Controls. Developed for FreePBX 16
*
@lgaetz
lgaetz / DTMF 2 Trusted Zone
Last active March 28, 2024 15:33
DTMF to Firewall Trusted Zone
[from-internal-custom]
; Dialplan for a feature code to add ; an IP address to the FreePBX trusted zone
; Dial F-I-R-E-W-A-L-L from an internal extension and enter an IPv4 address using
; DTMF with * as the dot character.
;
; License: GNU GPL3+
; latest version: https://gist.github.com/lgaetz/8a043b7aa39484f622f0f7c138909558
;
; version history 2023-01-21 First commit working
; FreePBX dialplan to create a dynamic voicemail blast group.
; Place this in /etc/asterisk/extensions_custom.conf and reload
; GNU GPL3+
; latest version: https://gist.github.com/lgaetz/76006451910295a4625555361c9b5085
; version history 2022-11-04 First commit
; 2022-11-05 Added recording playback to toggle
[from-internal-custom]
; Create feature code previx with hints. Each extension can enable/disable vm group membership by dialing the
#!/usr/bin/php
<?php
// script requires a command - echo help and exit if arg1 missing
if (!isset($argv[1])) {
echo "
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
*
* Script: lgaetz-cftoggle.php
*
#!/usr/bin/env php
<?php
/************************************************************************
* callshaper-freepbx.php
*
* Latest version: https://gist.github.com/lgaetz/7e61c464588623662fcfdf1367e97c32
*
* AGI script for adding Stir/Shaken signatures to outbound SIP calls from
* Freepbx. Modified for FreePBX from callshaper.php as published by tiltx.com
* ref: https://help.smartcarrier.io/portal/en/kb/articles/tiltx-call-shaper-module