Categories
Gigaset Handsets

Gigaset A690HX handset

The Gigaset A690HX DECT handset replaces the popular A540H. Featuring a 2″ graphical display, the A690HX is compatible with both the N300IP and N510IP Gigaset DECT base stations making it easy to add to existing systems. Positioned as the entry-level handset in the range, the A690HX offers an intuitive device at a low price point, ideal for small to medium sized businesses.

Boasting a long talk time of up to 12 hours and a standby time of up to 180 hours, the A690HX can also double up as a baby monitor with intercom function.

A69HX

Features

  • 2″ 96 x 64 pixel backlit display
  • Handsfree
  • Alarm clock feature
  • Baby monitor function
  • Phonebook with capacity to store up to 150 contacts
  • HD Voice with selectable Ringtones
  • Call block function for up to 32 numbers
  • Ergonomic keypad made of high quality material
  • Up to 12 hours talk time
  • Up to 180 hours standby time
  • Integrates with Gigaset DECT Base stations: N300IPN510IP
  • Gigaset ECO Mode
  • 2 year warranty

Email or Call for current pricing and qty discounts

Categories
FreePBX Knowledge Base Security Support Technical

Freepbx 15 /16 module exploits. Action required

If you have any Freepbx 15 servers you need to check the restapps and userman modules
https://community.freepbx.org/t/0-day-freepbx-exploit/80092

you need to make sure you are running at LEASTrestapps 15.0.20 and userman 15.0.67 anything newer use scripts below to downgrade 

Now fixed versions in repositories

Useman 15.0.67 is the fix version

[root@pbx ~]# fwconsole ma list |grep userman
| userman | 15.0.67 | Enabled | AGPLv3+ |
[root@pbx ~]# crontab -l -uasterisk |grep userman
*/15 * * * * [ -e /usr/sbin/fwconsole ] && sleep $((RANDOM\%30)) && /usr/sbin/fwconsole userman --syncall -q

For restapps see https://wiki.freepbx.org/display/FOP/2021-12-21+SECURITY%3A+Potential+Rest+Phone+Apps+RCE

But fixed version is

  • > restapps v15.0.20
  • > restapps v16.0.19


Simple scripts to check and update are 

fwconsole ma list |grep restapps
Anything older than 15.0.20

fwconsole ma downloadinstall restapps --tag 15.0.20
fwconsole ma list |grep restapps
fwconsole chown
fwconsole r

and 

In the userman reversion note that you need to install again after the downloadinstall , This removes the offending line from crontab

fwconsole ma list |grep userman
crontab -l -uasterisk |grep userman

The above checks the cron jobs for the offending line then if older than 15.0.67 then update as below

fwconsole ma downloadinstall userman --tag 15.0.67
fwconsole ma install userman
fwconsole chown
fwconsole r
Categories
Gigaset Knowledge Base Products and services

Reseting Gigaset Bases

This information is for N300 and N510 Bases

The reset of Gigaset Dect base will wipe out all the settings of the base including the configuration file.

Below are the steps you should follow:

  • Disconnect the base from the LAN network switch and remove the power supply (if you are not using POE).
  • Press and hold the registration/paging key.
  • If you are using POE then connect the base to the POE switch otherwise connect the power supply to the base.
  • Press and hold the registration/paging key for at least 20 seconds.
  • Release the registration/paging key and it will reset the base to factory settings.
Categories
Blog Handsets Products Sangoma Phones Software

Sangoma Connect Mobile

Revolutionise Your Business Communications: In the modern corporate landscape, the traditional office desk is no longer the sole hub of productivity. Whether your team is working from home, travelling for client meetings, or managing critical on,call shifts, the need for seamless connectivity is paramount. Enter Sangoma Connect, the mobile softphone application designed to turn your smartphone into a fully featured business extension.

For businesses looking to simplify workforce management and reduce the complexities of on,call rotations, Sangoma Connect offers a robust, secure, and cost,effective solution. This guide explores the extensive feature set of the application and demonstrates how it can transform your operational efficiency and bottom line.

What is Sangoma Connect?

Sangoma Connect is a high,performance mobile application for iOS and Android that integrates natively with Sangoma PBXact and FreePBX phone systems. It is engineered to provide a consistent “in,office” experience regardless of a user’s physical location. By leveraging VoIP (Voice over Internet Protocol) technology, the app allows staff to make and receive high,quality voice and video calls using their business phone number, ensuring professional identity remains intact while keeping personal mobile numbers private.

The application is more than just a dialler, it is a unified communications (UC) hub. It bridges the gap between traditional telephony and modern collaboration tools, offering everything from instant messaging to multi,party video conferencing within a single, intuitive interface.

The core of Sangoma Connect is its ability to deliver crystal,clear audio and high,definition video calls. Because the app uses the business’s PBX infrastructure, calls are routed via the internet (Wi,Fi or mobile data), providing a reliable connection even when cellular signals are weak. This is particularly vital for on,call staff who must remain reachable in various environments.

Gone are the days of manual configuration and complex setup codes. Sangoma Connect features a “magic link” onboarding process. Once an administrator enables a user in the PBX management module, the employee receives an auto,generated email. By clicking the link within the email, the app automatically configures itself, logging the user in without the need for hostnames or passwords.

Understanding the availability of your team is crucial for efficient workforce management. The Presence feature allows users to set their status, such as “Available”, “Away”, or “Do Not Disturb”. This status is synchronised across the entire Sangoma ecosystem, including desk phones and desktop clients. For managers, this provides an at,a,glance view of who is ready to take a call, which is essential for coordinating on,call responses.

Managing messages is simplified through the Visual Voicemail interface. Instead of dialling into a system and listening to prompts, users can see a list of their voicemails, see who called, and play back messages in any order. This allows on,call staff to prioritise urgent queries quickly without wasting time on administrative navigation.

Professionalism is maintained through powerful call control features. Users can perform “blind” transfers (sending a call directly to another extension) or “warm” transfers (speaking to the colleague before passing the call over). This ensures that customers are always directed to the right expert with the necessary context.

Collaboration often requires more than two people. Sangoma Connect supports native 3,way audio conferencing, allowing users to add a third party to an active call instantly. For larger groups, the app integrates with Sangoma Meet, providing a platform for multi,party video collaboration and screen sharing directly from the mobile device.

Security is a non,negotiable for modern businesses. Sangoma Connect uses advanced encryption protocols, specifically TLS (Transport Layer Security) and SRTP (Secure Real,time Transport Protocol). This ensures that every conversation is private and protected from eavesdropping, whether the user is on a private home network or a public Wi,Fi hotspot.

Push Notifications

To preserve battery life without missing important calls, the app utilises push notifications. The application does not need to run in the foreground to receive an alert, the system “wakes” the app when a call or message arrives, ensuring reliability for on,call personnel who cannot afford to miss a notification.

Strategic Advantages for On,Call Workforce Management

Managing a workforce that is frequently on the move or “on,call” presents unique logistical challenges. Sangoma Connect is specifically tailored to address these pain points, creating a more agile and responsive team.

Simplifying the On,Call Rotation

When an employee is on,call, they are often tethered to a physical handset or forced to give out their personal mobile number. Sangoma Connect removes these barriers. Because the app acts as a secondary extension, managers can use the PBX’s “Follow Me” and “Call Forwarding” features to route calls to the on,call staff’s mobile device automatically.

If an on,call technician is busy, the “Presence” indicator lets the rest of the team know immediately, allowing the system to route the call to the next available person in the queue. This level of transparency reduces “phone tag” and ensures that urgent client issues are resolved faster.

Professionalism and Privacy

One of the greatest benefits for staff is the separation of business and personal life. When making an outgoing call via Sangoma Connect, the recipient sees the company’s caller ID, not the employee’s personal mobile number. This maintains a professional image and protects the privacy of your staff, which is a significant factor in employee satisfaction and retention for those working outside traditional hours.

Increasing Productivity Through Unified Communications

Productivity is often lost in the “spaces between” tasks, the time spent checking various apps, returning to the office to check a desk phone, or trying to track down a colleague. Sangoma Connect recaptures this time.

Real,Time Collaboration

With integrated team chat and file sharing, employees can collaborate on the fly. An on,call engineer at a client site can instantly message a senior architect for advice, send a photo of a technical issue, or even start a video call to show the problem in real,time. This immediate access to collective knowledge drastically reduces the “Time to Resolution” for complex tasks.

Geographic Flexibility

Sangoma Connect empowers businesses to hire the best talent regardless of location. Because the communication system is entirely portable, a business based in London can have on,call support staff in Manchester or Edinburgh, all appearing as if they are sitting in the same office. This flexibility allows for better coverage across different time zones without the need for expensive regional offices.

Unlocking Cost Savings

While the productivity gains are significant, the financial benefits of adopting Sangoma Connect are equally compelling for any business owner or IT manager.

Elimination of Hardware Costs

Traditional business telephony requires a desk phone for every employee. With Sangoma Connect, your employees’ existing smartphones become their primary or secondary business devices. For remote or mobile workers, this eliminates the need to purchase, ship, and maintain physical hardware, leading to substantial savings on capital expenditure (CAPEX).

Reduced Mobile Tariffs and Roaming Charges

Since Sangoma Connect uses the data network to route calls, it bypasses traditional mobile voice minutes. For businesses with international on,call requirements, this is a game,changer. Employees can make “internal” calls to the office or other colleagues for free from anywhere in the world, provided they have an internet connection, effectively eliminating expensive roaming charges.

Simplified IT Infrastructure

Sangoma Connect is managed via the same interface as your main phone system. This centralisation reduces the administrative burden on your IT department. With automated provisioning and cloud,based certificate management, the time required to manage mobile extensions is reduced from hours to minutes, allowing your IT team to focus on higher,value projects.

In Conclusion: Sangoma Connect is more than an app, it is a strategic tool that empowers your business to be more responsive, more professional, and more efficient. By simplifying the management of on,call staff and unifying your communication channels, you create an environment where productivity thrives and costs are kept firmly under control.

Whether you are a small business looking to scale or a large enterprise seeking to modernise your workforce management, Sangoma Connect provides the features and flexibility required for success in a mobile,first world.

Categories
Asterisk Support Knowledge Base Products and services Technical

Gradwell IP Address ranges

At Gradwell, they send internet traffic from different addresses (known as IP addresses) to allow their telephony systems to work smoothly. Below is the list of IP addresses where their VoIP (Voice over IP) traffic will come from. It’s important that your firewall allows traffic from these addresses however they recommend you don’t set it to allow only from these, just that they are included.

The reason they say don’t allow only these addresses is that there network is dynamic and may shift or new items added and we don’t want this to affect your service.

There are a couple of things you should do to ensure you get the most from the Gradwell Voice services:

  • Check your firewall filtering – is there anything being excluded?
    • If yes – Allow the IP range traffic – this will most likely be in your firewall settings or tools (they all differ so they can’t exactly point you there)
    • If no – you’re good to go
  • If you use UDP traffic then you’ll need to allow Media ports (known as RTP) with the numbers 1024 to 65535

Current ranges as of summer 2021

109.224.232.0/22 109.224.232.0 to 109.224.235.255
109.224.240.0/22 109.224.240.0 to 109.224.243.255
109.239.96.132/31 109.239.96.132 to 109.239.96.133
141.170.24.21/31 141.170.24.21 to 141.170.24.22
141.170.24.5/31 141.170.24.5 to 141.170.24.6
141.170.50.16/28 141.170.50.16 to 141.170.50.31
185.47.148.0/24 185.47.148.0 to 185.47.148.255
194.145.188.224/27 194.145.188.224 to 194.145.188.255
194.145.189.52/31 194.145.189.52 to 194.145.189.53
194.145.190.128/26 194.145.190.128 to 194.145.190.191
194.145.191.128/27 194.145.191.128 to 194.145.191.159
195.74.60.0/23 195.74.60.0 to 195.74.61.255
213.166.3.128/26 213.166.3.129 - 213.166.3.190
213.166.4.128/26 213.166.4.129 - 213.166.4.190
213.166.5.0/24 213.166.5.0 to 213.166.5.255
78.40.243.192/27 78.40.243.192 to 78.40.243.223
87.238.72.128/26 87.238.72.128 to 87.238.72.191
87.238.73.128/26 87.238.73.128 to 87.238.73.191
87.238.74.128/26 87.238.74.128 to 87.238.74.191
87.238.77.128/26 87.238.77.128 to 87.238.77.191

To simplify things a bit listed below are the ranges in common formats.

Rules for Freepbx Custom file “firewall-4.rules”

-A fpbxreject -s 109.224.232.0/22 -p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s 109.224.240.0/22 -p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	109.224.222.16/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	109.224.232.0/22	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	109.224.240.0/22	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	109.239.96.132/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	141.170.24.20/30	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	141.170.24.5/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	141.170.50.16/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	185.47.148.0/24	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	194.145.188.224/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	194.145.189.52/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	194.145.190.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	194.145.191.128/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	195.74.60.0/23	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	212.11.68.144/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	213.166.2.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	213.166.3.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	213.166.4.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	213.166.5.0/24	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	78.40.243.192/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	87.238.72.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	87.238.73.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	87.238.74.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A fpbxreject -s	87.238.77.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT

Rules for IPtables file

-A INPUT -s 109.224.232.0/22 -p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s 109.224.240.0/22 -p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	109.224.222.16/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	109.224.232.0/22	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	109.224.240.0/22	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	109.239.96.132/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	141.170.24.20/30	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	141.170.24.5/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	141.170.50.16/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	185.47.148.0/24	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	194.145.188.224/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	194.145.189.52/31	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	194.145.190.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	194.145.191.128/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	195.74.60.0/23	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	212.11.68.144/28	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	213.166.2.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	213.166.3.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	213.166.4.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	213.166.5.0/24	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	78.40.243.192/27	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	87.238.72.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	87.238.73.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	87.238.74.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
-A INPUT -s	87.238.77.128/26	-p udp -m udp --dport 4569:5270 -j ACCEPT
Categories
Handsets Products and services Sangoma Phones

Sangoma P310 and P315

These phones are very competitively priced; and are perfect for anyone that needs reliable, basic calling functionality or needs a lot of phones either in one place or over a distributed set of large-facility locations. 

However, you can be rest assured that they are manufactured to very high standards and have all the qualities you would expect in more expensive models.

With these two new phones you can utilise essential Unified Communications features without sacrificing the function and performance that is usually only available with more expensive IP phones!

Want a closer look? Watch the first P315 being unboxed in Europe! Contact us for how you too can get your hands on the P310 or P315 and for bulk pricing.

Unboxing the P3xx handsets

Categories
Blog Case Studies

An out of the normal Customer request

and how we solved it:

We were approached by one of our customers who provides support services to travellers and global companies who had a client that provides maritime engineering services world wide and required an emergency helpline that “followed the sun” 

Detailed Specification

A single number that called dependant on time the on call support staff.

The calls cannot go to users Voicemail.

The staff members are to be notified by email that the call was taken and who took it.

If the on call staff do not answer the call it is forwarded to our clients call centre.

On completion of the call a copy of the recording in mp3 format is emailed to the on call staff.

Solution.

Our customer uses FreePBX so the core of the project is the use of the Queue application but with some custom dial plan and scripts to exploit and enhance features that are not exposed, 

The inbound numbers destination is a “custom destination” that first sends it to some custom dial plan explained later and then to the “Call Flow Control” application to allow the system to be overridden, It is then sent to the “Time Conditions” application that uses UTC as its time zone to over come issues with daylight saving in different hemispheres, this then send the call to the correct queue depending on time 

To allow an email to be sent to staff we used the qgosub variable that is explained HERE , this sub routine sends the email on answer. this variable is set by a small dial plan snippet that sets the qgosub variable and an additional one to set a channel variable as the callers callerID number, as its lost when the call is made to the staff members by the queue application. 

To make sure calls do not go to voicemail, the queue option “call confirm” this forces the called staff to press 1 to accept a call, This much overlooked option is useful for many queue scenarios.

If the call is unanswered the call has to be passed to the callcenter with the callerID name tagged with the customers Name, We achieve this with the “SetCallerID” application passing the call onto the client call centre.

Finally when the call is complete we need to email the recording to the customer. To do this with the “Post Call Recording Script” option in Advanced options. (You may need to enable “Display Readonly Settings” and “Override Readonly Settings”), This did require a little lateral thinking as we were already using this script to convert recordings to MP3 and save them to AWSS3 storage, But we didn’t want an email sent after all recordings do we included an additional ‘if’ statement to check if the qgosub variable was passed over to the script and if it was email the attachment otherwise do nothing.

I hope this shows the flexibility of FreePBX and asterisk and how fairly complex call routings and requests can be fulfilled in a manner that doesn’t require complex dial plans or require high support overheads.

If you want to achieve similar don’t hesitate to get in touch as by using modules already in FreePBX you’re not paying to reinvent the wheel.

Categories
Blog FreePBX Knowledge Base

Running Subroutines on answer for Queues

Some years ago we wrote a post on running macros on queue answer here. this was very useful for integration with backends, At the time we raised a feature request to get it added to Freepbx, But this never happened.

Now the variable QGOSUB is in the dialplan for freepbx queues, But still there is no way of setting this in a default freepbx installation and it requires a snip-it of custom dialplan that is called from freepbx by a ‘custom destination’ . For example at its simplest the dialplan to set it could be :-

[qmacro-set]
exten => .,1,Noop(ians test) 
exten => .,n,Set(_QGOSUB=ians_routine) 
exten => .,n,Goto(app-daynight,1,1)  

and this sets the variable for all channels in this call, and when the Queue command is run in the default freepbx dialplan

Queue(9471,${QOPTIONS},,${QAANNOUNCE},${QMAXWAIT},${QAGI},,${QGOSUB},${QRULE},${QPOSITION})  

This allows simple or more complicated routines to be run. For example sending an email on answer which was a request we had that caused us to revisit this.

[ians_routine]
exten = s,1,Set(origtime=${EPOCH})
exten = s,n,Noop(${CHANNEL})
exten = s,n,Set(Agent11=${CUT(CHANNEL,@,1)})
exten = s,n,Set(Agent12=${CUT(Agent11,/,2)})
exten = s,n,Noop(${Agent11} , ${Agent12} )
exten = s,n,Set(fulltime=${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)})
exten = s,n,system(echo "There has been a call , Callers Details: ${CALLERID(number)} ,  ${CRM_SOURCE} , Date and Time: ${fulltime} ,  Agent: ${Agent12} ,Timestamp: ${origtime} , Queue Number: ${QUEUENUM} " | mail -s "failed recall at ${fulltime}" email@address.com)
same = n,Return()

If you think that you would like to be able to set this variable in the freepbx gui give it a vote https://issues.freepbx.org/browse/FREEPBX-22274

Categories
Knowledge Base Products and services

Aastra 6753i Transfer

Step By step instructions for call transfer when using the Aastra 6753i with firmware 3.x.x and above.

Phone Idle screen.

Once a call is answered their number will show and an icon of a ‘off hook phone’ will also show

To transfer the call press your ‘Transfer key’. Another ‘line’ will show numbered 2 with a ‘ > ’ next to it.

Enter the number you want to dial and press ‘>‘ dial if the call isn’t immediately dialed.

To ‘Blind’ transfer the call press the Transfer Button again or put the Handset down. NOTE if you do this you will not be able to get the call back.

After pressing dial the Phone Icon will show ‘ringing’

To get the call back while it is ringing press the ‘ < ‘ button shown on the display next to ‘Cancel’. Then L1 in this example will flash and ‘call held’ will show on the display as below, you need to get the call back by pressing the Flashing Line Key.

If the call goes to Voicemail or the caller answers the display will show the ‘off hook’ icon against 2

If the Caller wants the call then Press the ‘Transfer key’ the Red ‘Hangup key’ or put the handset down and the call will be transferred to them. Do not press the ‘>‘ Drop button.

If they don’t want the call or it goes to voicemail and you want to get the caller back, Press the ‘ > ‘ Drop Button and that call will be dropped and as before ‘call held’ will show on the screen and you press the L1 button to get the caller Back

Categories
Knowledge Base

Setting up Postfix to use Office 365 mail

FreePBX uses centos 7 and postfix fom its mail delivery, normally this is fine unless the customer is using Office 365 mail then there can be delivery issues.

Firstly you will need to set up a user in Office 365 for the system.

Postfix’s main configuration file is main.cf and that is where we make the required change as follow:

[root@localhost ~]# vi /etc/postfix/main.cf

Append the following lines

masquerade_domains = domainname
myhostname = USERNAME.domainname
mydomain = USERNAME.domainname
myorigin = USERNAME@domainname
relayhost = [smtp.office365.com]:587

mynetworks = 127.0.0.0/8
inet_interfaces = loopback-only
smtp_use_tls = yes
smtp_always_send_ehlo = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_tls_security_level = encrypt
smtp_generic_maps = hash:/etc/postfix/generic 
# smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

Save and exit from the file.
Next we need to edit the configuration for the postfix SASL credentials:

[root@localhost ~]# vi /etc/postfix/sasl_passwd

Add a line below

[smtp.office365.com]:587 user@domainname:password

Replacing user@domainname:password with your sender account details

Save and exit from file

A Postfix lookup table must now be generated from the sasl_passwd text file by running the following command.

[root@localhost ~]# postmap /etc/postfix/sasl_passwd

Now change permission for this file

[root@localhost ~]# chown root:postfix /etc/postfix/sasl_passwd

[root@localhost ~]# chmod 640 /etc/postfix/sasl_passwd

Next, we need to configure generic file in order to be able to send emails as a valid user (this is required for Office365).

[root@localhost ~]# vi /etc/postfix/generic

Go the end of file and append following lines.

root@localhost.localdomain UserName@Domain.com

Again replacing localhost.localdomain and UserName@Domain.com with your service hostname and the email user are using

Save and exit from file.

Next let’s correct the file permission.

[root@localhost ~]# chown root:root /etc/postfix/generic

[root@localhost ~]# chmod 0600 /etc/postfix/generic

[root@localhost ~]# postmap /etc/postfix/generic

Now restart Postfix service.

[root@localhost ~]# systemctl restart postfix

Now try to send a test email using the command below:
FOR Centos:

echo "This is the body of the email"| mail -r"Sender-Display-Name<sender@domain.com>" -s "This is the subject(E-Mail from SMTP Relay) line" recipeat@gmail.com

In FreePBX under Voicemail admin you must change the senders address to match your account as well as the sender for notifications such as backups etc. otherwise you can get errors and mail wont be delivered.