roramirez / qpanel

Dashboard for Queues in Asterisk and FreeSWITCH. app_queue panel for Asterisk and mod_callcenter in FreeSWITCH. Get news -> http://eepurl.com/dxKt7X
https://boxtub.com/qpanel/
MIT License
173 stars 112 forks source link

 

QPanel

The Dashboard for Queues/CallCenter in Asterisk and FreeSWITCH


Build status Contributors Chat on Gitter

Demo

Overview

QPanel is a panel for queues on Asterisk and FreeSWITCH, powerful and simple monitor in realtime:

Also you can use a API of QPanel for data query related to queues

Requirement

Asterisk

On /etc/asterisk/manager.conf do you set command permission for read and write, example:

    [qpanel]
    secret = mi_super_secret_password
    read = command
    write = command,originate,call,agent

AMI options

Some features maybe not included in your Asterisk version. In the patch directory you can find the patchs for add more powerfull to the QPanel.

Freeswitch

The feature realtime counter for answered and abandoned calls in a queues if not included in your FreeSWITCH version. In the patch directory you can find the patch

You can configure a freeswitch section for your config.ini file like

    [freeswitch]
    host = 127.0.0.1
    port = 8021
    password = ClueCon

In general section set config

    ; Use FreeSWITCH as backend. Use mod_callcenter
    freeswitch = True

To use a FreeSWITCH need install SWIG. In system Debian base run

 apt-get install swig
 pip install -r requirements/fs.txt

1. Clone this repository

 git clone https://github.com/roramirez/qpanel.git

2. Install dependencies

 $ pip install -r requirements.txt

If dont have pip in your system. For install

Debian and Ubuntu

 sudo apt-get install python-pip

Fedora

 sudo yum install python-pip

Get Javascript, CSS and external web libraries

Is necessary have installed Node.

    npm install

3. Go and prepair environment

  cd qpanel
  cp samples/config.ini-dist config.ini

Edit config.ini file with Manager Asterisk parameters

Note: Can set the absolute path for configuration file in an enviroment variable called QPANEL_CONFIG_FILE.

4.- Translations

  pybabel compile -d qpanel/translations

5.- Run and relax

    python app.py

Go url of machine http://IP:5000

If you want run QPanel like a service, see the samples configurations files. There are a example for use with uWSGI + NGINX

QueueLog Stats for Asterisk

You could use the stats for queue of Asterisk from QueueLog. If need more informacion about this go Stats, Realtime and other things or see the section [queue_log] of the sample configuration file

New features?

If you like new features or something is wrong please open a issue

If you want check the development version get checkout of develop branch

 git clone -b develop https://github.com/roramirez/qpanel.git

Updating source new in a release

Go the QPanel directory

    cd qpanel

Get the new code

    git pull

Update dependencies

    pip install -r requirements.txt
    npm install

Notes

Errors

pip update

For error in instalation process of requirements. UserWarning: python_requires requires setuptools version > 24.3 pip install --upgrade setuptool

How to contribute

Happy coding :)