ARI Libraries?

Home » Asterisk Users » ARI Libraries?
Asterisk Users 2 Comments

Up till now, I have only used Asterisk versions 1.2, 10 and 11, on CentOS
4, 5 and 6, and have made extensive use of AMI and FastAGI connections to a multi-threaded backend written in C.

For a new project, I am looking at trying Asterisk 16 with ARI, on CentOS 7.

I was looking at the various ARI libraries available, particularly the ones for Python and Node.js in github.

I noticed that the files in the Python ARI project at https://github.com/asterisk/ari-py are all over 5 years old and the version number is 0.1.3. Does that mean it is abandoned, or that it is so stable it has not needed any updates during that time? Is it a good choice to use? Does it support all the ARI
features in Asterisk 16?

In contrast, https://github.com/asterisk/node-ari-client, the Node.js client for ARI, saw its last commit only 7 months ago. Is this the preferred solution nowadays?

Are there any other languages/libraries I should be considering?

Thanks for any advice!

Cheers Tony

Tony Mountifield Work: tony@softins.co.uk – http://www.softins.co.uk Play: tony@mountifield.org – http://tony.mountifield.org

2 thoughts on - ARI Libraries?

  • –EdJpmFC2KOya35UHtFLIQu8V33KwN2Sz6
    Content-Type: text/plain; charset=utf-8
    Content-Language: en-US
    Content-Transfer-Encoding: quoted-printable

    Hi Tony,

    Le 20/07/2019 à 06:29, Tony Mountifield a écrit :

    Same here, after years of AGI / AMI, I recently made my first project using ARI on Asterisk-16. I love Python, and was disappointed to find that Python ARI looks abandoned. Then I found aioari
    (https://github.com/M-o-a-T/aioari), an asyncio version of Python ARI, which looked newer, and supported modern Python. Apart from a bug with channel variables, aioari works for me. Hope that helps.

    Best regards,

  • –1JDbVW2usFITaIKD57JIEbUurrxMvJx9d Content-Type: text/plain; charset=utf-8
    Content-Language: fr-FR
    Content-Transfer-Encoding: quoted-printable

    Le 20/07/2019 à 12:21, Tony Mountifield a écrit :

    Channels variables caused an error, my fix is in aioswagger11/client.py
    (line 80) :
    elif param[‘paramType’] == ‘body’:
    < if not data: < data = {} < data[pname] = value require dict input") I know, I should fork and make a pull request… Best regards,