- build Due to changed behavior with docker 26, files are now copied on the host instead of being hard-linked.
- build Now set
BLD_CVER ?= ast200
to match codec and asterisk versions. - demo Remove obsolete element
version
in docker-compose.yml.
- build Now use alpine:3.19 (asterisk:20.5.2).
- build Switch to php82 and make it a build argument:
--build-arg PHP_VER=php82
. - build Now set
DOCKER_BUILDKIT=1
since we don't use special symbolic links. - build Harmonize bld.mk between repositories.
- build Harmonize dkr.mk between repositories.
- docker Added switch to set run as user docker-service.sh.
- docker Improve debug message in docker-service.sh.
- github Now use GitHub Actions to test image.
- demo Now depend on the docker-compose-plugin.
- build Set
DOCKER_BUILDKIT=0
to makedocker build
handle our symbolic links as we intended.
- privatedial Allow all TLS protocols in the
minivm-send
bash script. - test Now also test the PHP is setup correctly.
- repo Fix the bug; websms and autoban not working. We need to use softlinks to ../../share/php81/.
- docker Corrected misspelling.
- build Fix the bug; websmsd not working. We need to set DOCKER_PHP_DIR=/usr/share/php81.
- build Now use alpine:3.16 (asterisk:18.11.2).
- build Switch to php8.
- demo Switch to php8.
- privatedial BREAKING. In
extensions.conf
now useAPP_SMS = /usr/local/bin/websms
.
- docker Now use alpine:3.15 (asterisk:18.2.2).
- autoban Let autoban manipulate nft without breaking docker networking. Since docker 5:20.10 container DNS resolve is based on nft rules (with iptables-nft) which autoban's nft implementation interfered with resulting in container unable to resolve network names.
- autoban Now use DOCKER_NFT_DIR=/etc/nftables.d.
- autoban Only load
.nft
files if nft is installed. - build Now push images to registry.
- demo Updated demo to also work with docker-compose >= 2.
- test Added container name-space network inspection targets.
- docker Now use alpine:3.14 (asterisk:18.2.2).
- docker Use travis-ci.com.
- autoban Let autoband handle AMI connection failures nicely.
- repo Fixed bug in hooks/pre_build. Use curl in
make pre_build
.
- codec Provide the G.729 and G.723.1 audio codecs.
- codec Improved handling of codec versions (
BLD_CVER
in Makefile).
- websms Use
prox_addr = 172.16.0.0/12,192.168.0.0/16
by default.
- acme Introduce
ACME_POSTHOOK="sv restart asterisk"
and run that after we have updated the certificates. - docker Don't move
DOCKER_APPL_SSL_DIR=$DOCKER_SSL_DIR/asterisk
to persistent storage. Data there is updated at container startup anyway. Moreover there is no need to remove old data when it is updated. - privatedial In
pjsip_transport.conf
setmethod=tlsv1_2
to harden TLS.
- docker Use the native envvar
SVDIR
instead ofDOCKER_RUNSV_DIR
. - docker Update docker-common.sh.
- docker Now use docker-config.sh.
- docker Update docker-entrypoint.sh.
- docker Update docker-service.sh.
- docker Now use DOCKER_ENTRY_DIR=/etc/docker/entry.d and DOCKER_EXIT_DIR=/etc/docker/exit.d.
- docker Improved smoke test.
- acme Update module.
- privatedial Breaking change. Now use
cert_file=/etc/ssl/asterisk/cert.pem
andpriv_key_file=/etc/ssl/asterisk/priv_key.pem
- repo Added hooks/pre_build which assembles files from sub-modules.
- repo Revisited
.travis.yml
. - docker Proofread documentation.
- docker Fixed broken hyperlinks in documentation.
- privatedial Break out endpoints from pjsip_wizard.conf to pjsip_endpoint.conf.
- privatedial Use Hangup() instead of Goto() when entering extension
h
. - privatedial Work around bug in MinivmGreet().
- privatedial Renamed dialplan contexts.
- privatedial Dialplan
[sub_voicemail]
now handles CHANUNAVAIL correctly. - privatedial Added
endpoint/bind_rtp_to_media_address = yes
- docker Complete documentation.
- docker Now use alpine:3.12 (asterisk:16.7.0).
- websms
WEBSMSD_PORT=80
sets PHP web server port, used by WebSMS. - repo Harmonized file names in
entry.d
andexit.d
. - repo Use git submodule for third party projects.
- websms Harmonized configuration parameter names.
- websms Harmonized function names.
- websms Facilitate static key-value pairs,
val_static = "key1=value1,key2=value2"
. - websms Parameter
val_numform
, now takesE.164
(omit +) andE.123
. - websms Improved Unicode configuration, allowing
val_unicode = "key=value"
. - websms Added authorization methods,
plain
andnone
. - websms Allow multiple API interfaces to be configured.
- websms Now accept incoming message with null body.
- websms Code clean up.
- privatedial Use set_var=TRUNK_ENDPOINT to set outgoing target for each endpoint individually.
- privatedial Don't use
endpoint/from_user
, it overwrites CallerID.
- acme Support both v1 and v2 formats of the acme.json file.
- acme Support both host and domain wildcard TLS certificates.
- websms Complete documentation.
- privatedial Advancing documentation.
- docker Advancing documentation.
- docker Cleanup
src/notused
. - docker Consolidate common functions in src/docker/bin/docker-common.sh.
- docker Audio via PulseAudio.
- docker Now use alpine:3.11 (asterisk:16.6.2).
- demo Added demo.
- demo Enabled audio via PulseAudio socket and cookie.
- demo Use host timezone by mounting /etc/localtime.
- websms Updating documentation.
- privatedial Added demo-echotest in IVR.
- privatedial Fixed initiation issue for minivm.
- websms Fixing bugs related to special characters in SMS messages
- websms Added
val_unicode
parameter. Set toucs-2
to make sure all characters are within the Unicode BMP (up to U+FFFF). - websms Updating documentation.
- websms Refactoring of
astqueue.class.ini
to better cope with message encoding. - privatedial added
sub_decode_body
to cope with encoded messages.
- docker Enable PHP profiling using xdebug.
- autoban Optimized code with respect to efficiency and speed.
- autoban Improved command line options of the shell utility.
- acme Fixed dumpcert.sh leaking to stdout. Have it write to logger instead.
- autoban Added shell utility autoban, which helps to manage the NFT state
- autoban Updated documentation.
- autoban Now write to autoban.nft every time we get a security event and update NFT, so that its state is always preserved.
- autoban Code base now refactored and split into autoban.class.inc and nft.class.inc
- websms Updated documentation.
- privatedial Now keep main dial-plan conf files separate.
- privatedial Start to document the PrivateDial dial-plan.
- autoban Now don't crash if autoban.conf does not have both an
[autoban]
and an[nftables]
section. - autoban Renamed autoband.php (it was autoban.php)
- autoban Updated documentation.
- asterisk Added Networking section in README.md.
- acme New support for Let’s Encrypt TLS certificates using Traefik using
ACME_FILE=/acme/acme.json
. - asterisk Configuration now supports UDP, TCP and TLS and SDES.
- asterisk Generate self-signed TLS certificate.
- asterisk Improved structure of
pjsip_wizard.conf
. - asterisk Don't answer when device is UNAVAILABLE in
[dp_answer]
- docker The docker-service.sh script now have options: down, force, log, name, source, quiet.
- websms Added
val_numform
parameter. Set toE164
to strip phone numbers from leading +.
- asterisk Sanitize incoming extensions so they are all international
- asterisk Move APP_SMS global to extensions.conf
- websms Use
$_POST
sincefile_get_contents("php://input")
cannot handle multipart/form-data - websms Allow IP addr filtering behind proxy by using HTTP_X_FORWARDED_FOR
- websms websmsd.php parameters are json decoded and searched recursively
- websms Also support Zadarma POST parameters in websms.class.inc
- websms Started WebSMS (separate) documentation
- autoban Fixed new bug in autoban.class.inc
- autoban Added conf sample file autoban.conf.sample
- repo Now reorganize repo files according to which service they provide
- docker alpine 3.10.3 released so now build using alpine:3.10
- docker Added Health check
- docker Introduce a
SIGTERM
trap indocker-entrypoint.sh
allowing graceful container termination withexit.d
script execution - docker docker-service.sh now also take switches -n and -l.
- docker We now create directory structure when an empty volume is mounted at /srv.
- asterisk Based on live testing updated templates in pjsip_wizard.conf
- asterisk Now use extensions-local.conf to keep all local configurations
- asterisk Fixed typo in rtp.conf
- websms Retired service sms/d which has been succeeded by websms/d
- websms New verify POST request in websms.class.inc
- websms New check source IP address in websms.class.inc
- autoban New service Autoban, which listens to security AMI events and dynamically configures nftables to block abusing IPs.
- autoban autoban.class.inc (formerly nft.class.inc) is now state less
- autoban Restricting Autoban's AMI access to a minimum
- autoban Autoban now has
repeatmult
punishing repeat offenders progressively more severely - autoban Autoban now use nftables timeouts
- autoban Added
entry.d
andexit.d
scripts so that thenft
state is loaded/saved at container startup/shutdown.
- docker Using alpine:3.9 since for alpine:3.10 there are dependency errors reported when asterisk starts.
- privatedial minivm-send bash script simplify minivm configuration.