Connecting to Asterisk Manager from multiple .NET clients

Hi all,

We have a Freepbx server to which our four client applications (.NET) are connecting to its Asterisk manager for listening to its events. My question from experts is that:

  • Is connecting to the asterisk manager using 4 parallel connections ok?
  • Should we use a single asterisk manager account for all 4 agent applications or create a separate client account for each client application?
  • How reliable is manager connection as our all logic of client’s applications is working using these connections to asterisk manager.

I would never have multiple clients connected. You need to create a server piece for your software that connects to the AMI and than dispatches out to your clients what it needs. Do not have every client connected direct to the AMI. 1 security will be a nightmare and 2 more importantly the AMI is not designed for that and you need a proxy for that.

@tonyclewis,

As far as security is concerned, our applications and this whole setup is just under one roof and is limited to a single LAN.

Your 2nd point regarding AMI design, does the API can’t handle even 4 parallel connections?

What I understand is that you want to say that I should have a single server side client application listening to all Asterisk events and then this application should tell other client applications about the events those are generated by server for those extensions/agents. Right?

The AMI API isn’t particularly well suited to multiple access systems. It can do it, but there are lots of ways that you can walk on other people’s work.

Having a server-side application that creates an API that handles the AMI interface would actually be a cool thing.

1 Like