Creating A SIP client without Success

Hello everyone!

I am losing my mind trying to understand all the concepts.
So I have a asterisk server and now I am building a sip client.
What I want to do is create a backend client that processes the voice, use google speech to text, transform the text and return back using google text to speech.
I already checked ARI, AGI and AMI and it seems that doesn’t fit the purpose.
I have also seen some libraries, in java and python, but none seems licence free or adaptable to the problem(or they are really old without any documentation).

Any help will be welcome!

Thank you

1 Like

Is the client connecting using SIP, and then doing Google Text to Speech… or are you actually doing two things - writing a SIP client AND trying to directly connect Google Text to Speech to Asterisk.

If the first then Asterisk wouldn’t care, it’d just be talking SIP.

What I want is to have a User Agent that process sip communication, get audio from RTP and process it(doesn’t really matter which service is used) and in the end should return the audio. Also I can’t find any kind of open source stable well documented library to use for SIP client.

PJSIP is widely used. I don’t keep track of other options, but it’s unlikely you’ll find many individuals here with such knowledge or experience.

I thought that PJSIP was an open source library for SIP UACs and UAS’

But it seems possible the approach that I am trying @jcolp? What If I use Jain-SIP?

Asterisk doesn’t care, all of the logic/code is client side then and thus is dependent on how easy to use the SIP library is, if there’s a Google Speech to Text library, how easy dealing with media is, your skills as a developer. I have no experience doing such a thing with Google so no idea.

Although that is open source, it has a dual licence format. In this case if I don’t want to open source it I need to pay for it:
PJSIP licence

Forget about google services :slight_smile:. There is any kind of example that does a SIP connection and is prepared for RTP connection? Or at least an example with SIP communication only, waiting for receiving invites? thanks!

So you don’t want open source in general, but something like the BSD licence, an non-copyleft one.

Asterisk also has a copyleft licence.

The link you provided doens’t really describe a dual licence, but rather the situation that always exists for any open source work in which the supplier holds all the intellectual property rights, namely that they can always licence it under any other licence. This also applies to much or all of the Asterisk code, and is why one has to sign a contributor agreement before submitting patches.

A real dual licence is where two alternative licences are actually granted, one of which can, optionally, be ignored.

Thank you David. I was not aware that Asterisk had a copyleft licence.

It is just me or there are not many libraries for SIP and SIP clients? Everything that I see is from the last decade and/or is outdated and not mantained.

Just to be sure: AMI AGI or ARI doesn’t solve my problem right?

They are APIs for writing applications for use with Asterisk. They aren’t for writing SIP clients or VoIP clients in general.

Well, still confused. I can’t use asterisk for my purpose? Or I can create a backend app to be a sip endpoint and call asterisk server?

Asterisk is a VoIP server. VoIP clients connect to it. Your subject and description was about creating a SIP VoIP client and connecting it to Asterisk. Anything SIP can generally talk to Asterisk, so the client side is completely up to you.

The APIs mentioned (AMI, ARI, AGI) are unrelated to that aspect.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.