Skip to content

Commit

Permalink
### Added
Browse files Browse the repository at this point in the history
- Support for Remote Yealink XML PhoneBook, default URL (look README.md for configuring info):
  - http://izpbxip/pb/menu.xml (PhoneBook Menu)
  - http://izpbxip/pb/yealink/ext (Extensions PhoneBook)
  - http://izpbxip/pb/yealink/cm (Contact Manager Shared PhoneBook)
- ATTENTION: Added new variable into `default.env` (remember to update your `.env` copy):
  - `PHONEBOOK_ENABLED="true"`
  - `PHONEBOOK_ADDRESS=`
- Added php-ldap package
### Fixed
- Fixed missing LDAP support for UserManager
- Fixed SMTP_ALLOWED_SENDER_DOMAINS default var
  • Loading branch information
ugoviti committed Apr 14, 2021
1 parent ceb8238 commit 2b858e8
Show file tree
Hide file tree
Showing 13 changed files with 3,940 additions and 16 deletions.
16 changes: 15 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,23 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [18.15.10] - 2021-04-15
### Added
- Support for Remote Yealink XML PhoneBook, default URL (look README.md for configuring info):
- http://izpbxip/pb/menu.xml (PhoneBook Menu)
- http://izpbxip/pb/yealink/ext (Extensions PhoneBook)
- http://izpbxip/pb/yealink/cm (Contact Manager Shared PhoneBook)
- ATTENTION: Added new variable into `default.env` (remember to update your `.env` copy):
- `PHONEBOOK_ENABLED="true"`
- `PHONEBOOK_ADDRESS=`
- Added php-ldap package
### Fixed
- Fixed missing LDAP support for UserManager
- Fixed SMTP_ALLOWED_SENDER_DOMAINS default var

## [18.15.9] - 2021-04-14
### Fixed
- fixed codec_opus not enabled
- Fixed codec_opus not enabled

## [18.15.8] - 2021-04-07
### Changed
Expand Down
24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ Look into project [Tags](https://hub.docker.com/r/izdock/izpbx-asterisk/tags) pa
- Asterisk PBX Engine (compiled from scratch)
- FreePBX WEB Management GUI (with predownloaded modules for quicker initial deploy)
- FreePBX automatic installation, managed when deploying izpbx for the first time, successive updates will be managed by FreePBX Official Version Upgrade itself
- Automatic Remote XML PhoneBook support for compatible VoIP Phones (Yealink)
- Persistent storage mode for configuration and not volatile data
- Fail2ban as security monitor to block SIP and HTTP brute force attacks
- FOP2 Operator Panel
Expand Down Expand Up @@ -396,6 +397,12 @@ Consult official repository page for installation and configuration of Asterisk
* Schedule and Maintinence-->Scheduling: Every: **Day** Minute: **00** Hour: **00**
* Maintinence-->Delete After Runs: **0**
* Maintinence-->Delete After Days: **14**

* **Admin-->Contact Manager**
* External
* + Add New Group
* Name: **PhoneBook**
* Type: **External**

* **Admin-->Caller ID Lookup Sources**
* Source Description: **ContactManager**
Expand All @@ -406,6 +413,23 @@ Consult official repository page for installation and configuration of Asterisk
* **Admin-->Sound Languages-->Setttings**
* Global Language: **Italian**

# Configuring VoIP XML PhoneBook Lookup (tested on Yealink Phones)
- Configure **Contact Manager** as reported above (the Contact Manager GroupName be MUST named **PhoneBook** otherwise doesn't works)
- Open VoIP Phone GUI, for example for yealink phone:
- **Directory-->Remote Phone Book**
- Index 1 (URL XML Menu)
- RemoteURL: **http://PBX_ADDRESS/pb**
- Display Name: **PhoneBook**

- Otherwise you can define by hand the PhoneBooks:
- **Directory-->Remote Phone Book**
- Index 1 (URL Extensions PhoneBook)
- RemoteURL: **http://PBX_ADDRESS/pb/yealink/ext**
- Display Name: **Extensions**
- Index 2 (URL Shared PhoneBook)
- RemoteURL: **http://PBX_ADDRESS/pb/yealink/cm**
- Display Name: **Shared Phone Book**

# Trobleshooting
- FreePBX is slow to reload (https://issues.freepbx.org/browse/FREEPBX-20559)
- As temporary WORKAROUND enter into izpbx container shell and run:
Expand Down
7 changes: 6 additions & 1 deletion default.env
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ MYSQL_USER=asterisk
#SMTP_RELAYHOST_USERNAME=yourusername
#SMTP_RELAYHOST_PASSWORD=yoursecurepassword
#SMTP_STARTTLS=true
#SMTP_ALLOWED_SENDER_DOMAINS=127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
#SMTP_ALLOWED_SENDER_DOMAINS=127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16
#SMTP_MESSAGE_SIZE_LIMIT=67108864


Expand Down Expand Up @@ -121,6 +121,10 @@ FREEPBX_PHPTIMEZONE=Europe/Rome
## WORKAROUND @20200322 https://issues.freepbx.org/browse/FREEPBX-20559 : fwconsole setting SIGNATURECHECK 0
FREEPBX_SIGNATURECHECK=0

### PhoneBook Settings
## PhoneBook server address used by VoiP Phones.
## You can specify IP or DNS name. If empty, will be used in order: 'http://$APP_FQDN' or 'http://PBXIP'. (default: null)
#PHONEBOOK_ADDRESS=https://izpbx.example.com

### DHCP/NTP/TFTP Server
#DHCP_DOMAIN=izpbx.local
Expand Down Expand Up @@ -165,3 +169,4 @@ FAIL2BAN_ENABLED=true
#FOP2_ENABLED=true
#ZABBIX_ENABLED=true
#PMA_ENABLED=true
PHONEBOOK_ENABLED=true
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ services:
izpbx:
container_name: izpbx
#hostname: ${APP_FQDN}
image: izdock/izpbx-asterisk:18.15.9
image: izdock/izpbx-asterisk:18.15.10
restart: always
depends_on:
- db
Expand Down
12 changes: 11 additions & 1 deletion izpbx-asterisk/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,7 @@ ENV APP_INSTALL_DEPS=' \
php-json \
php-gd \
php-curl \
php-ldap \
mariadb \
diffutils \
unzip \
Expand Down Expand Up @@ -268,8 +269,11 @@ RUN set -xe && \
chmod g+w /var/lib/phpMyAdmin/temp

## build stage

# copy external sources files
ADD build/ /usr/src/

# build asterisk
RUN set -xe && \
. /etc/os-release && \
ASTERISK_BUILD_DEPS=' \
Expand Down Expand Up @@ -515,13 +519,19 @@ RUN set -xe && \
# curl -fSL --connect-timeout 30 http://mirror.freepbx.org/modules/packages/freepbx/freepbx-${FREEPBX_VER}-latest.tgz | tar xz --strip 1 -C freepbx
# curl -fSL https://github.com/FreePBX/framework/archive/release/${FREEPBX_VER_FRAMEWORK}.tar.gz| tar xfz - --strip 1 -C freepbx

# copy external sources files again
ADD build/ /usr/src/

RUN set -xe && \
\
cd /usr/src && \
mkdir freepbx && \
curl -fSL --connect-timeout 30 http://mirror.freepbx.org/modules/packages/freepbx/freepbx-${FREEPBX_VER}-latest.tgz | tar xz --strip 1 -C freepbx && \
cd freepbx && \
curl -fSL --connect-timeout 30 http://mirror1.freepbx.org/modules-${FREEPBX_VER}.xml -o modules-${FREEPBX_VER}.xml && \
# download modules-*.xml file if not exist in local build dir
if [[ -e "/usr/src/modules-${FREEPBX_VER}.xml" ]]; then cp "/usr/src/modules-${FREEPBX_VER}.xml" "/usr/src/freepbx/modules-${FREEPBX_VER}.xml"; else \
curl -fSL --connect-timeout 30 http://mirror1.freepbx.org/modules-${FREEPBX_VER}.xml -o modules-${FREEPBX_VER}.xml \
;fi && \
mkdir -p amp_conf/htdocs/admin/modules/_cache && \
for MODULE in \
announcement \
Expand Down
Binary file removed izpbx-asterisk/build/asterisk-mp3.tar.gz
Binary file not shown.
Loading

0 comments on commit 2b858e8

Please sign in to comment.