| 1 |
Asterisk Flash Operator Panel |
|---|
| 2 |
Copyright (c) 2006 Nicolás Gudiño. All rights reserved. |
|---|
| 3 |
http://www.asternic.org |
|---|
| 4 |
|
|---|
| 5 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|---|
| 6 |
For complete and up to date documentation, please visit the web page |
|---|
| 7 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|---|
| 8 |
|
|---|
| 9 |
What is Flash Operator Panel? |
|---|
| 10 |
----------------------------- |
|---|
| 11 |
|
|---|
| 12 |
The Flash Operator panel is a 'switchboard' application for the Asterisk PBX |
|---|
| 13 |
system. It displays information about your Asterisk PBX activity in real |
|---|
| 14 |
time via a standard web browser with Flash plugin. The display and button |
|---|
| 15 |
layout is configurable, you can have more than a 100 buttons on the screen |
|---|
| 16 |
at once. |
|---|
| 17 |
|
|---|
| 18 |
You can see at a glance: |
|---|
| 19 |
|
|---|
| 20 |
* What extensions are busy, ringing or available |
|---|
| 21 |
* Who is talking and to whom (clid, context, priority) |
|---|
| 22 |
* SIP registration status and reachability |
|---|
| 23 |
* Meetme room status (number of users) in the room |
|---|
| 24 |
* Queue status (number of users waiting) |
|---|
| 25 |
* Parked extensions |
|---|
| 26 |
* Call duration Timers |
|---|
| 27 |
* Logged in Agents |
|---|
| 28 |
|
|---|
| 29 |
You can perform these actions: |
|---|
| 30 |
|
|---|
| 31 |
* Hang-up a channel (double click the colored dot on the button) |
|---|
| 32 |
* Transfer a call leg via drag&drop (drag the phone icon on a button to |
|---|
| 33 |
another button) |
|---|
| 34 |
* Originate calls via drag&drop |
|---|
| 35 |
* Drag an available extension to an ongoing conversation and conference |
|---|
| 36 |
the three together. |
|---|
| 37 |
* Change the callerid text to something meaningfull when transferring or |
|---|
| 38 |
originating a call |
|---|
| 39 |
* Mute/Unmute meetme participants |
|---|
| 40 |
|
|---|
| 41 |
Requirements |
|---|
| 42 |
------------ |
|---|
| 43 |
|
|---|
| 44 |
* You need PERL and basic knowledge on how to use Asterisk. |
|---|
| 45 |
|
|---|
| 46 |
* You have to add a user to asterisk's manager.conf and reload asterisk for |
|---|
| 47 |
the changes to take effect. |
|---|
| 48 |
|
|---|
| 49 |
* For the conference buttons, message waiting indication and automatic three |
|---|
| 50 |
way conferences, you need asterisk CVS-HEAD as of 5/25/2004 |
|---|
| 51 |
|
|---|
| 52 |
* You need flash player versions 7 and up |
|---|
| 53 |
|
|---|
| 54 |
* You also need to define in your dialplan the conferences in a proper way |
|---|
| 55 |
and in their own context, as explained in op_server.cfg comments. |
|---|
| 56 |
|
|---|
| 57 |
* If you plan to use the "Info" box to set the callerid text when |
|---|
| 58 |
transferring or originating a call, you need to modify your dialplan. See |
|---|
| 59 |
extensions.conf.sample |
|---|
| 60 |
|
|---|
| 61 |
* You also need to be wary, as English is not my first language. |
|---|
| 62 |
|
|---|
| 63 |
|
|---|
| 64 |
Install |
|---|
| 65 |
------- |
|---|
| 66 |
|
|---|
| 67 |
1) Untar de package on a suiteable place, for example /usr/local |
|---|
| 68 |
(if you are reading this you probably already done that) |
|---|
| 69 |
|
|---|
| 70 |
2) Copy the files in the 'flash' or 'dhtml' subdirectory to a suitable place |
|---|
| 71 |
on your web server. If your web root is /var/www/html, you can create a |
|---|
| 72 |
subdirectory 'panel' and copy the files there. The base files required |
|---|
| 73 |
for the flash client are index.html and operator_panel.swf, you can also |
|---|
| 74 |
copy the help files for your language. |
|---|
| 75 |
|
|---|
| 76 |
There are several ways (index files) to load the flash applet, try them |
|---|
| 77 |
out. You can modify the file help-xx.html files to your liking. |
|---|
| 78 |
|
|---|
| 79 |
The dhtml panel allows you to use javascript/dhtml to desing your own |
|---|
| 80 |
layout. But the client is limited to monitoring (you cannot perform |
|---|
| 81 |
actions yet) |
|---|
| 82 |
|
|---|
| 83 |
3) Edit op_server.cfg and change the appropriate parameters for your setup. |
|---|
| 84 |
|
|---|
| 85 |
"flash_dir" parameter must be the exact location of the directory where |
|---|
| 86 |
the html and swf files are placed (where you copied the files from step |
|---|
| 87 |
2 above) |
|---|
| 88 |
|
|---|
| 89 |
The rest of the parameters are well commented in the cfg file, basically |
|---|
| 90 |
you have to set the manager host, user and password. (Be sure to enable |
|---|
| 91 |
the manager in /etc/asterisk/manager.conf) |
|---|
| 92 |
|
|---|
| 93 |
4) Edit op_buttons.cfg to suit your needs. The file is commented and its |
|---|
| 94 |
self explanatory. |
|---|
| 95 |
|
|---|
| 96 |
5) Edit op_style.cfg to suit your needs. You can change the button size and |
|---|
| 97 |
colors, icon placement and size, etc. DO NOT modify the variable names, |
|---|
| 98 |
just the value after the equal sign and DO NOT use spaces. With proper |
|---|
| 99 |
adjusting, you can have more than a 100 buttons on the screen. |
|---|
| 100 |
|
|---|
| 101 |
You can change the toolbar layout by changing the number after the |
|---|
| 102 |
variable show_???. Each one represents a possible element in the toolbar. |
|---|
| 103 |
A value of 0 disables that element. A number represents the order in the |
|---|
| 104 |
toolbar it will be displayed, number one being the leftmost part of the |
|---|
| 105 |
toolbar. In the example configuration, all the toolbar elements are |
|---|
| 106 |
displayed in correlative order. Eg: if you do not want to display a DEBUG |
|---|
| 107 |
button, set the 'show_btn_debug' to 0. You can translate the text of the |
|---|
| 108 |
toolbar in the corresponding variables. |
|---|
| 109 |
|
|---|
| 110 |
--!! Please note !!--------------------------------------------------- |
|---|
| 111 |
If you want to transfer an available channel to an already connected |
|---|
| 112 |
call, you have to configure your dialplan correctly and have the |
|---|
| 113 |
context properly defined, if you don't do that you will experience |
|---|
| 114 |
hanged channels and asterisk lockups. Thats because when you redirect |
|---|
| 115 |
a call within the asterisk manager with an incorrect contexts, |
|---|
| 116 |
asterisk does not handle the error gracefully. |
|---|
| 117 |
--!!----------------------------------------------------------------- |
|---|
| 118 |
|
|---|
| 119 |
|
|---|
| 120 |
International Characters |
|---|
| 121 |
------------------------ |
|---|
| 122 |
|
|---|
| 123 |
If you want to display foreign characters in button labels, you have to save |
|---|
| 124 |
the configuration file with UTF-8 encoding. To convert the file to UTF-8 |
|---|
| 125 |
utilizing vi and the command line just perform: |
|---|
| 126 |
|
|---|
| 127 |
vi -c ":wq! ++enc=utf8" op_buttons.cfg |
|---|
| 128 |
|
|---|
| 129 |
|
|---|
| 130 |
Running |
|---|
| 131 |
------- |
|---|
| 132 |
|
|---|
| 133 |
The op_server.pl must run on the same computer as the web server, but not |
|---|
| 134 |
necesarily on the machine where asterisk is installed. |
|---|
| 135 |
|
|---|
| 136 |
When started, it writes the file 'variables.txt' to the http directory where |
|---|
| 137 |
the flash applet is installed with configuration data. It must have |
|---|
| 138 |
permissions to write to that directory. |
|---|
| 139 |
|
|---|
| 140 |
You can run it daemonized using -d as its command line argument. There are |
|---|
| 141 |
some example init scripts in the directory inits |
|---|
| 142 |
|
|---|
| 143 |
If you want to start the server when the machine starts, you can add a line |
|---|
| 144 |
similar to the following to your rc.local file (you have to replace the |
|---|
| 145 |
values between '*' with the ones for your system, if you do not want to run |
|---|
| 146 |
the op_server.pl as root, just su to that user: |
|---|
| 147 |
|
|---|
| 148 |
(cd */path/*; su *operator-user* -c */path/*op_server.pl & ) |
|---|
| 149 |
|
|---|
| 150 |
Or better yet, use one of the init scripts provided. |
|---|
| 151 |
|
|---|
| 152 |
|
|---|
| 153 |
Security |
|---|
| 154 |
-------- |
|---|
| 155 |
|
|---|
| 156 |
Its not meant to be secure. You should take provisions yourself, like |
|---|
| 157 |
limiting who can connect by means of .htaccess files, firewall rules, etc. |
|---|
| 158 |
There is basic encryption for messages sent from the server to the client, |
|---|
| 159 |
and the security code is sent with MD5. It will hide sensitive information |
|---|
| 160 |
from the casual observer, but its not strong enough to send credit card |
|---|
| 161 |
information. |
|---|
| 162 |
|
|---|
| 163 |
|
|---|
| 164 |
How to use it |
|---|
| 165 |
------------- |
|---|
| 166 |
|
|---|
| 167 |
Click the HELP button when running the Flash Operator Panel. Experiment. |
|---|
| 168 |
Drag icons, move your mouse around. Click and double click when the arrow |
|---|
| 169 |
turns into a hand. |
|---|
| 170 |
|
|---|
| 171 |
|
|---|
| 172 |
Support |
|---|
| 173 |
------- |
|---|
| 174 |
|
|---|
| 175 |
For support or submitting bug reports, features requests, etc, please |
|---|
| 176 |
subscribe to the mailing list by sending an empty email to |
|---|
| 177 |
operator_panel-subscribe@lists.house.com.ar |
|---|
| 178 |
|
|---|
| 179 |
Donations |
|---|
| 180 |
--------- |
|---|
| 181 |
|
|---|
| 182 |
If you like the program, or have feature requests, you can contribute to the |
|---|
| 183 |
cause by donating via paypal. Click the donate button on the webpage. You can |
|---|
| 184 |
also contact me for custom works, or asterisk consultancy. |
|---|
| 185 |
|
|---|
| 186 |
Thanks! |
|---|
| 187 |
|
|---|
| 188 |
|
|---|
| 189 |
Credits |
|---|
| 190 |
------- |
|---|
| 191 |
|
|---|
| 192 |
MD5 Algorithm. Copyright: |
|---|
| 193 |
(C) 1991-2, RSA Data Security, Inc. Created 1991. All rights reserved. |
|---|
| 194 |
|
|---|
| 195 |
TEA Encryption algorithm: |
|---|
| 196 |
Copyright (c) 2000, Peter J Billam c/o P J B Computing, www.pjb.com.au |
|---|