Asterisk Active Message Waiting Indication
Java
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
conf
src
.gitignore
LICENCE
README.markdown
buildfile

README.markdown

Description

ActiveMWI is a mailbox waiting message notifier. It opens up a manager connection to the asterisk and hooks onto the login event of a peer. When it receives a login event it looks for new messages in the mailbox of the peer. If the mailbox contains any unread messages, then activemwi will originate a connection between the peer and the mailbox.

Running

The dependencies are managed using buildr.

There are currently two ways for running the project:

  • Using buildr run, which launches the compiled classes from the target folder.
  • Generate the eclipse configuration using buildr eclipse and create an executable JAR including the dependencies from within eclipse.

Configuration

The location of the configuration file is

  /etc/activemwi.properties

The following properties are mandatory:

  • server.ip
  • manager.user
  • manager.pass
  • mbox.exten
  • mbox.context

Example Configuration

Assume you have the following configuration as:

# IP where the asterisk server is running
server.ip = 172.16.123.222
# the TCP port of the asterisk manager server
# manager.port = 5038
# the manager connection user
manager.user = manager
# the manager connection user password
manager.pass = tekO9BNfS8J668TkZZLI7Z
 
## properties for call origination 
# the mailbox extension
mbox.exten = 9000
# the mailbox context
mbox.context = mailbox
# mbox.ring.timeout = 20000
# mbox.retry.inverval = 600000
# mbox.retry.max = 6

Then the asterisk manager configuration /etc/asterisk/manager.conf would look like the following:

[general]
enabled = yes
port = 5038
bindaddr = 172.16.123.222

[activemwi]
secret=tekO9BNfS8J668TkZZLI7Z
permit=172.16.123.0/255.255.255.0
read=system
write=originate,reporting

And the diaplan /etc/asterisk/extension.conf must have a matching context with a matching extension.

[mailbox]
exten => 9000,1,VoiceMailMain(${CALLERID(num)},s)