1. Guides
  2. PBX Integration

Guides

PBX Integration

PBX Integration with Stubber to enables your users to initiate calls from their PBX Extension.

Stubber has the ability to integrate with your PBX ( Private Branch Exchange) System, this level of operational efficiency reduces the need for your users to switch between systems when making calls.

click-to-dial is a feature that allows users to initiate a call directly from a stub, using their Organization's existing PBX System.

Feedback Actions provide a great mechanism to update stubs with the necessary data as well as the actual recording once the call has ended.

Setup

In order to integrate your PBX with Stubber you will need the following:

1. Contact the Stubber PBX Integration Team

Contact the Stubber PBX Integration Team to assist configuring a PBX profile for your Organization. The team they will provide you with the following:

  • STUBBER_ORG_UUID - The UUID of the Organization you wish to integrate with
  • STUBBER_PBX_UUID - The Stubber generated UUID of the PBX created in the Organization
  • STUBBER_API_KEY - Unique API Key provided by Stubber

2. Docker Installation

The easiest way to get started is to use the Official Docker Installation Guide.

Install Docker Using the Convenience Script
        # Install Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

      
Post Installation Steps
        # Start Docker
sudo systemctl start docker
# Enable Docker
sudo systemctl enable docker

      

3. Create a Docker Compose File

Create a docker-compose.yml file in the /srv/stubber/stubber-asterisk-client directory:

Create Docker Compose File
        mkdir -p /srv/stubber/stubber-asterisk-client/
cd /srv/stubber/stubber-asterisk-client/
nano docker-compose.yml

      

Once the file is open, paste the following into the file:

docker-compose.yml
        version: "3.3"

services:
  stubber-asterisk-client:
    environment:
      - STUBBER_ORG_UUID=[INSERT ORG UUID]
      - STUBBER_PBX_UUID=[INSERT PBX UUID]
      - STUBBER_API_KEY=[INSERT STUBBER API KEY]
    image: stubber/stubber-asterisk-client
    deploy:
      mode: replicated
      replicas: 1
    restart: always
    extra_hosts:
      - "host.docker.internal:172.17.0.1"
    volumes:
      - source: /etc/asterisk/
        target: /etc/asterisk/
        type: bind
      - source: /var/spool/
        target: /var/spool/
        type: bind

      

Ensure that you replace the following environment variables with the correct values:

  • STUBBER_ORG_UUID - The UUID of the Organization you wish to integrate with
  • STUBBER_PBX_UUID - The Stubber generated UUID of the PBX created in the Organization
  • STUBBER_API_KEY - Unique API Key provided by Stubber

4. Start the Docker Container

Once you have created the docker-compose.yml file, you can start the container by running the following command from the /srv/stubber/stubber-asterisk-client directory:

Start the Docker Container
        docker compose up

      

The stubber-asterisk-client container will now start-up.

On first run, docker will download the latest stubber-asterisk-client image and configure the Asterisk AMI to accept connections from the stubber-asterisk-client.

Organization and PBX specific configuration files will be retrieved automatically and appended to the /etc/asterisk/ directory.

Once the setup is complete, the Asterisk service should be restarted before running the following:

Restart Stubber Asterisk Client
        docker compose down
docker compose up -d

      

5. Verify the Integration

Once the stubber-asterisk-client container has started, you can verify the integration by navigating to your Stubber contact and assigning a new contact point of type PBX Extension with your specific Extension Number. image

Navigate to the stub and click on the phone icon button to initiate a call from your PBX Extension to that specific contact's number.

image

Finally, the call recording will be automatically uploaded to the stub once the call has ended.

image

Advanced Configuration

Please refer to the Dial Notification documentation for more information on how to configure the dial notification.