Browsed by
Category: Collaboration

Asterisk & FreePBX: How To Create AMI User?

Asterisk & FreePBX: How To Create AMI User?

AMI (Asterisk Management Interface) is used for third party applications to work properly with Asterisk (FreePBX). Applications can retrieve updated information about system events via AMI and send some commands to Asterisk.

To use AMI on Asterisk and FreePBX, you need to define a user and password. You can create this in two ways:

  1. By editing the /etc/asterisk/manager.conf file
  2. By creating a user with Asterisk Manager in FreePBX.

Let’s examine both methods in more detail.

Creating an AMI User on Asterisk:

  1. Connect to the Asterisk server via SSH.
  2. Open the /etc/asterisk/manager.conf file with an editor.
nano /etc/asterisk/manager.conf
  1. Enter the AMI settings in the [general] section:
[general] 
enabled = yes 
port = 5038 
bindaddr = 0.0.0.0 
displayconnects = no
  1. Create a new user under the [general] section:
[amiuser] 
secret = 123456 
deny = 0.0.0.0/0.0.0.0 
permit = 192.168.0.0/255.255.255.0 
read = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message 
write = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message 
writetimeout = 5000

Note: In this example, the username is amiuser and the password is 123456. It only accepts requests from the 192.168.0.0/24 network, but all access is read and write.

  1. Save and close the file.
  2. Reinstall the Asterisk Manager module:
asterisk -rx "manager reload"

Creating AMI User on FreePBX:

  1. Click Settings in the top navigation bar and then Asterisk Manager Users:
Asterisk Manager Users Menu

2. Click the Add Manager button to add a new user.

FreePBX Add Manager

3. Here you can see the settings window for a new user. Complete the relevant fields here:

AMI User Properties
  • Manager Name: Enter the AMI Username (no spaces).
  • Manager Secret: Enter the password for the AMI User.
  • Deny: Here you can specify the IP address and subnet mask that you want to restrict connection with AMI. You can use the “&” symbol to specify multiple networks, eg 192.168.1.0/255.255.255.0&192.168.2.0/255.255.255.0
  • Permit: Specify the network or unique IP address to which you allow AMI connection.
  • Write Timeout: Enter the timeout period for the execution of the AMI command.
  1. Set access permissions using the Permissions tab.
AMI Permissions

5. Click the Submit button at the bottom right to save the settings and then click Apply Config appears at the top left to complete the process.

How to Enable CDR & CMR on CUCM

How to Enable CDR & CMR on CUCM

The Call Detail Records (CDR) and Call Measurement Records (CMR,  also referred as “Call Diagnostics Records”) offer details for each phone call passing by the Cisco Unified Communications Manager (CUCM). In CUCM CDR CMR records are disabled by default, so that you have to enable them manually.

You can enable CDR and CMR in CUCM by following steps below:

How to Enable Call Detail Record (CDR) on CUCM:

  1. Login to administration page on Publisher CUCM. Click System -> Service Parameters menu.

2. Then select your server which has callmanager service enabled and then select Cisco CallManager (Active)

3. On System section find CDR Enabled Flag Parameter and set to True. If you’d like to see calls with zero duration, find CDR Log Calls with Zero Duration Flag (just below the CDR Enabled Flag)and set to True.

4. Do this for each CUCM Server if you have more than one server that has Callmanager service enabled.

How to Enable Call Measurement (CMR) on CUCM:

  1. On the same Service Parameter menu, go up and click Advanced.

2. Find the Clusterwide Parameters section, and change Call Diagnostics Enabled Parameter from Disabled to which option you wish.  

Note: Since CMR parameter is in Clusterwide Parameters, you don’t need to enable this on each server.

How to Get Wireshark Capture in CMS?

How to Get Wireshark Capture in CMS?

In this article, you can find steps to get Wireshark Packet Capture over Cisco Meeting Server (CMS).

While dealing with Cisco Meeting Server (CMS), you may encounter many errors such as audio / video packet loss, signaling problems, and you may need to listen to network traffic from time to time to fix them. In this article, you can find steps to get Wireshark Packet Capture in Cisco Meeting Server (CMS).

CMS Wireshark Packet Capture Steps:

  • First, connect to your CMS server via SSH to access the CMS MMP interface.
  • In some installations, CMS may have more than one network interface. So, after connecting, use the callbridge command to find out which interface to capture from:
Find Interface Using “callbridge” Command

To start the packet capture process, use the pcap command (in our example we will use the pcap a command):

Starting Packet Capture with “pcap a” Command
  • Once you start the Packet Capture process, re-create the traffic you want to listen to, and then use the Ctrl + C key combination to finish the capture process.

Note: The size of the .pcap file can be up to 100MB.

  • You can use an SCP program to download the generated .pcap file (in our example we will use WinSCP). Connect to the CMS using the username and password that you SSH connection with the SCP program, and find the corresponding .pcap file, and then download it to your computer:
Accessing the pcap File with WinSCP

That’s all 🙂

Cisco RJ-21 Pinout

Cisco RJ-21 Pinout

Cisco multi-port voice gateways have one or more ports for analog phones which is called RJ-21. Since the distance between the Cisco voice gateway and the phone distribution frame can be variable, you may need to make a special cable to connect these ports.

You can see the RJ-21 port and pin order used in Cisco multi-port analog voice gateways in the following image:

Cisco RJ-21 Connector Pinout

In the table below, you can find the pin sequence of RJ-21 ports used in Cisco multi-port analog voice gateways:

Port Number Connector Pin Signal
1 1
26
Ring
Tip
2 2
27
Ring
Tip
3 3
28
Ring
Tip
4 4
29
Ring
Tip
5 5
30
Ring
Tip
6 6
31
Ring
Tip
7 7
32
Ring
Tip
8 8
33
Ring
Tip
9 9
34
Ring
Tip
10 10
35
Ring
Tip
11 11
36
Ring
Tip
12 12
37
Ring
Tip
13 13
38
Ring
Tip
14 14
39
Ring
Tip
15 15
40
Ring
Tip
16 16
41
Ring
Tip
17 17
42
Ring
Tip
18 18
43
Ring
Tip
19 19
44
Ring
Tip
20 20
45
Ring
Tip
21 21
46
Ring
Tip
22 22
47
Ring
Tip
23 23
48
Ring
Tip
24 24
49
Ring
Tip
25,50,51,52 GND

Google Meet and Noise Canceling Solution with Artificial Intelligence

Google Meet and Noise Canceling Solution with Artificial Intelligence

Because of the pandemic period, you know that web video conferencing systems have become very popular with working from home. Although Zoom is dominating the market, Google is also one of those who want to increase it’s market share. It aims to add new features to its platform day by day. Thanks to noise canceling feature recently added to Google Meet, Google seems to have made an innovation in this area.

In April 2020, Google announced that Meet’s noise canceling feature is available for G Suite Enterprise and G Suite Enterprise for Education. We should also point out that the father of the idea of this feature is G Suite Product Management Director Serge Lachapelle. Serge Lachapelle has worked on video conferencing technologies for 25 years, (13 of which are on Google) and he is quite experienced.

Beginning of the Project

Basically, this project starts with acquisition of Limes Audio in January 2017. The main idea arises from the difficulties experienced in the meetings held with the participants in different time zones (sounds of children and pets of home workers, breakfast sounds, etc.).

How to Prevent Noise in Google Meet?

Maybe there are those who use it, some headphones and smartphones have noise canceling mechanisms that use multiple microphones. This method basically works by extracting the sound signal received from far end microphone than the sound signal received from main microphone. The feature offered in Google Meet is implemented using a completely cloud-based infrastructure and machine learning, independent of user device.

A machine learning model (denoiser) needs to be trained to find out what is speech and what is not speech, to understand the difference between noise and speech, and then to filter only speech. Serge and his team use their own meetings to train the model, then the algorithm is matured by Youtube videos which includes many people and then manual verification methods. Ultimately, the system can intelligently filter background distractions such as dog barking, pen clicking and much more.

As you can see in the video below, while talking, Serge shows how the feature works by making noise with things like a nut bag, a pen and a glass-spoon. Non-routine noises are heard loud as soon as they start, but over time these noises are damped:

Google Meet Noise Cancellation Demo

As you can appreciate, your voice needs to be listened by Google in order to use a noise canceling system with artificial intelligence. The voice encrypted by the user is decoded and analyzed in Google data centers, and the filtered voice is also encrypted and transmitted to the users. Although the analysis of the sound by listening is a question mark on the part of the user, it is stated that this analysis is made only within denoiser. I think that it is very important to realize these transactions in a short time, especially for real-time communications.

To activate this feature, just click the three dots on the bottom right during the meeting and activate Noise cancellation from Settings:

Google Meet Noise Cancellation Settings

Last Words

The method of processing data in the center (in the cloud), which is a method that Google loves, and leaving the user side more lean, has also emerged in another area. For now, this service, which is still limited to G Suite Enterprise and G Suite Enterprise for Education customers, will be available to all Google Meet users soon. In the future, I think that Google may offer it to other service providers as a cloud service.

Exit mobile version