Share My Creation VoIP SIP (Voice Calls) System : Source Code

Hello everyone :)

First of all and as always we start by thanking the great @Erel for making this possible for us :)

We made a post asking the lovely B4X Family about what to create next, a VPN or VoIP and most of the votes went to VoIP, so here we are :)

Today we would like to announce that in exactly 4 weeks (28/03/2021) (dd-mm-yyyy) we are releasing a new amazing project :
VoIP (Voice over Internet Protocol) system, which will consist on the following :
1- Text messages
2- Real Time voice calls
3- Group Voice Calls


Real time voice calls will work locally or publicly (through the internet) by using the SIP technology
The Audio Codec will be : PCMA (G.711)
Supported Audio Codec : h.264 codec

The Project will be built using :
1- B4J System Admin + System Server :
- Managing Incoming Calls
- Managing Outgoing Calls
- Managing Users information
- Able to disconnect any active call
- Calls and text messages log
- Able to record any active call and save the call as a MP3 file
- Able to get any text messages sent/received as save the log as a .txt file

2-B4A Client
- Each client registers will get a unique ID (just like a phone number)
- Speed Dial (able to add anyone to the list by typing the ID)
- Call block (able to block any incoming call from a specific ID)
- Able to send text messages
- Phone book (able to add anyone to the list by typing the ID)
- Calls History

3- B4J SIP Client has been released! :)

3-IOS Client - Coming Soon...

- Each client registers will get a unique ID (just like a phone number)
- Speed Dial (able to add anyone to the list by typing the ID)
- Call block (able to block any incoming call from a specific ID)
- Able to send text messages
- Phone book (able to add anyone to the list by typing the ID)
- Calls History



More information will be posted once we finish developing feature by feature

The source code will be for sale : 150$
Project Price : 35$ Only
fs-payment1 (1).png

*Once you send the payment you will receive an email from our partner FastSpring which contains the source codes.

We have added to list "Features to be added" :
-Avaya integration
As many of you know that Avaya is leading in the field of VoIP so we will add a feature to integrate the features of Avaya in the project which is amazing because with this feature you can transform the call from Avaya phone device to your own server which will give you the ability to :
1- Control and manage the call from the server side (record , log , etc...) (B4J Server App)
2- You can answer the phone call from anywhere in the world (B4A + B4i Client App)

*This is an extra feature to the app meaning the app will not need any Avaya equipment and it does not need Avaya SDK to work, it's only an extra feature.



We will keep you updated :)

Thank you guys for your support :)
 
Last edited:

sfsameer

Well-Known Member
Licensed User
Registration procedure, the main problem is why I do not want to use public SIP servers. I was hoping to create an application in which my user makes a registration once, inside my application. After that, he will have the opportunity to talk with the consultant via the Internet. I do not want to force the user to pre-register on a public SIP server through a browser. I was hoping that the VoIP SIP Saif Sameer project would solve this problem.
Hello,

You can use it as a public service, by connecting the B4A App/B4J App to the B4J Server.

Thank you,
Saif
 

anbrik

New Member
Hi there!
@sfsameer Could you please answer on the next question? If I want to connect my mobile devices through Internet, in that case should I use my own server with kind of SIP settings? If I'm right, could you please advise any articles on this subject and free or non-expensive servers for testing?
Thank you in advance!
 

sfsameer

Well-Known Member
Licensed User
Hi there!
@sfsameer Could you please answer on the next question? If I want to connect my mobile devices through Internet, in that case should I use my own server with kind of SIP settings? If I'm right, could you please advise any articles on this subject and free or non-expensive servers for testing?
Thank you in advance!
Hello,

This project contains B4J VoIP Server which you can install it on any VPS/PC and you will be able to connect the B4A VoIP app and B4J VoIP app to it and you will be able to make calls between the apps.

As for a free VPS, there are many free services, for example : google free tier, amazing free aws, etc...

Thank you,
Saif
 
Hello,

This project contains B4J VoIP Server which you can install it on any VPS/PC and you will be able to connect the B4A VoIP app and B4J VoIP app to it and you will be able to make calls between the apps.

As for a free VPS, there are many free services, for example : google free tier, amazing free aws, etc...

Thank you,
Saif
Could you look into my post sent to you yesterday, in regards to my last post to you from about 3-4 days ago, about an issue with a library you provide? Thanks!
 

Magma

Well-Known Member
Licensed User
If you try to use the B4A client and the latest B4J client, those with user and password, you will see that they can connect to classic sip pbx like Asterisk or 3Cx
Personally I have tried with FreePbx and they seem to work correctly, at least in the features currently present

Then, try to take the next step, try to register the B4a or B4J client directly on the sip server of the voip phone provider
And you will see that this works too
Well, if this second test works, then it means that the basic tools for communicating with a sip server, in the Voip Sip source code project, are present

So, could you tell me what are the technical difficulties in allowing the B4J server to communicate with a sip server, as well as the B4A and B4J client can do NOW?

Well if you can log-in at a SIP Server with an account and "communicate" it with it successfully ?... can you ? (can you call from b4j client to a sip number or get a call) - if you can, the quality is good ? (if you can do all these the 99% of library created succesfully by sfsameer)

Forward calls, transfer calls to another sip ---> is a feature... That may be can come from the "sip server" already exists / So your b4j server will be sending just the setup/config to SIP Server (freepbx)...

Let's say you have a sip account with a DID number (A) attached to it... and you want to forward calls to other account (B)... you ll make you b4j server connect to this sip account send the command need to forward to (B) and just logout...

So forwarding can be like this... will be fast as a thunder...

So a b4j client that connects to (B) account of sip server will get all the calls of (A)..
 

amorosik

Well-Known Member
Licensed User
Well if you can log-in at a SIP Server with an account and "communicate" it with it successfully ?... can you ? (can you call from b4j client to a sip number or get a call) - if you can, the quality is good ? (if you can do all these the 99% of library created succesfully by sfsameer)

It would be interesting to understand, since it would make it a usable project in real life, why that 1% was not realized
 

Magma

Well-Known Member
Licensed User
It would be interesting to understand, since it would make it a usable project in real life, why that 1% was not realized
I just asking you - if it connects and and you can speak with 3rd SIP servers... to outside world... ?

can you call - receive calls... make calls ???

Is it working (b4j client can receive calls, is sound listening - i really want to know if that works with outside sip numbers-external sip servers) ?

ps: For 99%... hey don't count numbers - we are not accountants / we are developers... 1..2... 3.. 10%...
 
Last edited:

amorosik

Well-Known Member
Licensed User
With B4A client (last update, with password) is possible to register with 3Cx or Freepbx
It is possible to call other extensions
Other extensions can call the B4A client
From a B4A client, registered on 3Cx or Freepbx, it is possible to initiate a call to a public network mobile phone number, obviously the switchboard must have the possibility to "go out" in some way, in my case I use a hardware device that connects the switchboard to the public telephone network
From a public telephone network it is possible to call the telephone number connected to the switchboard, which will make the extensions ring, and the client can take the call
The audio, using the B4A client is not intelligible, you can hear something but it is not usable for real calls
 

Magma

Well-Known Member
Licensed User
With B4A client (last update, with password) is possible to register with 3Cx or Freepbx
It is possible to call other extensions
Other extensions can call the B4A client
From a B4A client, registered on 3Cx or Freepbx, it is possible to initiate a call to a public network mobile phone number, obviously the switchboard must have the possibility to "go out" in some way, in my case I use a hardware device that connects the switchboard to the public telephone network
From a public telephone network it is possible to call the telephone number connected to the switchboard, which will make the extensions ring, and the client can take the call
The audio, using the B4A client is not intelligible, you can hear something but it is not usable for real calls

1) So... that is a problem... that may be coming from different codec or not usable codec... going slow or has garbages (like lower hz) ?

2) what about b4j client (i am asking because i want to make a project and this library created may be is useful) ?

3) at freepbx sip account isn't there a way to forward calls - transfer calls to other sip account ? So with a web-service call we could change who will receive the call... Is what actually a Telephone center do.. and must do.. ??

Thanks for your answers... i had the curiosity...
 

amorosik

Well-Known Member
Licensed User
1) So... that is a problem... that may be coming from different codec or not usable codec... going slow or has garbages (like lower hz) ?

2) what about b4j client (i am asking because i want to make a project and this library created may be is useful) ?

3) at freepbx sip account isn't there a way to forward calls - transfer calls to other sip account ? So with a web-service call we could change who will receive the call... Is what actually a Telephone center do.. and must do.. ??

Thanks for your answers... i had the curiosity...

1) may be

2) b4j client, with password, can register on pbx but is not able to start phone call or receive one call

3) yes, is the basic functionality of all pbx, and yes i think is possible but don't' know how obtain
 

Magma

Well-Known Member
Licensed User
1) may be

2) b4j client, with password, can register on pbx but is not able to start phone call or receive one call

3) yes, is the basic functionality of all pbx, and yes i think is possible but don't' know how obtain
1) that is a problem (i am not familiar with codecs needed but i think this is the problem) - if can;t get a call from outside or can;t call and listen+speak+listen you too clear is a prob.
2) ...not happy reading that :-( hope that worked :-(
3) i think some SIP providers sending simple dtmfs (dialing/calling #,numbers,* and then ending call if needed)... can do that or with webservice call..
 
Top