| What is AMS? |
| AMS (Asterisk Manager Suite) is a collection of software, namely a proxy interface for
Asterisk's Manager Interface, a C library AMI (Asterisk Manager Interface) and a GTK GUI for
administration and monitoring called AMA (Asterisk Manager Administrator).
The intention of the software overall is to extend the functionality of the Asterisk
(asterisk.org) PBX server. Currently AMS is designed for
corporate environments with call centers both to allow non-technical managers to manage
call centers as well as allowing phone system administrators intuitive tools to monitor and
administer the phone server. |
| |
| Help! The Proxy is hanging while trying
to load statistics from a DB file after a crash! |
Yeah. Berkely DB can be a little picky sometimes. This particular problem occurrs when
the proxy has experienced a crash (I hope you caught a core dump for me!). The crash caused
the server not to close the DB files correctly and has corrupt a little bit of the data.
Here's how to resolve the issue:
Go to the directory with all the files in it (default /var/lib/ampd/stats/mm-dd-yyyy/) and run
the following command:
#> db_recover -e -v
db_recover is part of the berkely DB (SleepyCat) package
which you need to compile AMP.
This will recover the db files and it's environment. Make sure you save it's environment!
If you do not specify the -e flag, the environment will be lost and AMP won't be able to start.
If you accidently forgot to save the environment, move the directory you're trying to save to
a temporary name, start the daemon, stop the daemon, and move the stats.db file you're trying
to save into the directory created by the proxy server. |
| |
| I get a compile error similar to "error: incompatible type for argument 4 of indirect function call" or "error: too many arguments to function" |
| If you have multiple versions of libraries things can get messy. This specific error was generated by having two versions of Berkely DB on a machine. Make sure the compiler finds the most recent version of db4 you have installed. Also, make sure the library linked during compilation is the same version that is linked during run time, otherwise you will probably get segfaults. I highly recommend using the very latest versions of all required libraries, including libxml, and db4. |
| |
| While trying to run the AMP Daemon for the first time I get the following error: "ampdb.c->ampdb_open: Unable to create new directory for stats db: No such file or directory" |
If you're using statistics you must create the following directories by hand:
(these are the defaults)
/var/lib/ampd
/var/lib/ampd/stats
If you plan on using the "call center" frame in AMA, you also need to create the directory:
/var/lib/ampd/profiles |
| |
| Some clients are trying to run specific commands and getting a generic "You don't have permission to run this command!" error! |
Different environments will require different permissions. I haven't had the time yet to create a configuration file for specifying permissions on a per-command basis, so you'll have to do some configuration within a c file. Don't worry, it's easy:
in the ampd source tree, open the file client.c .
Scroll down until you find "static const struct amp_command command_list[] =" followed by a long list of commands. It should look similar to this:
"{ "DBGet", CLIENT_REG_TYPE_ADMIN, client_cmd_dbget },"
Simply find the command you want to change permissions on and change the "CLIENT_REG_TYPE_*" to one
of "CLIENT_REG_TYPE_ADMIN" for admin permissions,
"CLIENT_REG_TYPE_MONITOR" for monitor permissions or
"CLIENT_REG_TYPE_AGENT" for agent permissions
Recompile the source and re-install.
Restart the proxy daemon and you should be all set!
|
| |
| I tried connecting to Asterisk with AMA but it just hangs forever during login! |
| AMA does not work directly with Asterisk. You need to have AMP running. You can then connect to AMP with AMA. The default port for AMP is 3553, which can be changed in ampd.conf. |
| |
| AMP gives an error similar to "Received an error from asterisk: Permission denied" during start up! |
Not enough permissions were given to the user you configured in manager.conf that AMP is trying to use to connect to Asterisk with. You must specify enough permissions for AMP to operate for both read and write operations. The bare minimum to
start AMP is 'call' and 'agent', but I highly recommend specifying all permissions, which would look like this:
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user |
| |
| I like your software! Do you accept
donations? What can I do to help? |
Thanks!
Nope. I don't accept or ask for donations.
If you'd like to help the project, here are some things you could do to help out:
Tell someone about it
Write some code for it
Write some documenation for it
Find some bugs in it
I also wouldn't mind if you had a friend who needed some simple hosting :) |
| |
| I found a bug, wrote some code or have
something to say. How can I get a hold of you? |
| You can contact me for any reason, even to tell me you think the software sucks (try to be
constructive though). You can contact me at j@intuitivecreations.com. |