I am trying to automate incoming call to an Android Phone.
I have a sip client on my PC which supports call to Phone Number. For this I need a SIP account which will allow me to make a call to Actual Phone Number. This SIP service should be available in India and US.
I wanted to know
if I make a SIP call to a number will I get Incoming Call Notification in Android Phone?
Can any one guide me which SIP service I can use to have to make a call from PC to phone? This SIP service should allow 3rd party SIP client to connect to it. And also I want to generate just an Incoming call notification in Phone. So Please let me know if there any Free SIP service from which I can achieve this or some cheap service as Audio quality does not matter..
You can use sip2sip.info and it's free. It supports calls to PSTN networks. Check out how you can configure your device.
Related
I have an Twilio Mobile number that has both voice and SMS functionality. I would like to set this up to make/receive calls and send/receive SMS in MuzuDroid Android Softphone app.
I can find how to set it up to make and receive calls, but I do not know how to set it up to send/receive SMS. Does anyone know how to set this up or if this is even possible?
If it is not possible, can anyone recommend a Softphone App that can do both calls and SMS with a Twilio mobile number?
Appreciate the feedback!
It's not really a softphone app for the phone but maybe the Twilio Dev Phone also does the job for you.
It's basically a soft phone you can start via the Twilio CLI and use from the browser.
I am trying to make an app for making calls from app to app and app to phone. I want to know what is ,
-the process to connect the call from my app to the server and server to the client app (app-server-app)while both are having active internet connections
-the process to connect the app to the server and the server places the call to a PSTN or ISDN (app-server-phone) where one phone is having an active internet connection and the other one is not having an internet connection, but is connected to a GSM or other telephone network.
Being an android developer, I am not well versed with web side programming. I have only made API calls in my previous apps. Please enlighten me on what is required to make calls from WEB SERVER TO TELEPHONE, and make VOIP CALLS.
I have already researched some sdks for the same, namely
-TWILIO
-ASTERISK
-ZOIPER
-LINPHONE
and gone through
App to app Call with Sinch
but this is only for making calls from app to app, I need to put a server inbetween and make the calls via server and record the duration and other data,and also make voice calls from server to telephone.
Any type or criticisms and suggestions are welcome.
you should have a PBX(Server), the app connect to PBX and make call, the PBX will route calls to another app or PSTN base on the dial plan(inbound and outbound rule), you also need to configure a VoIP provier or SIP Trunk in your PBX in order to make calls to PSTN or receive calls from PSTN.
You might be best off using twilio's sip trunk, and creating a custom asterisk script. Asterisk is a pbx, which will let you use voip phones, and soft phones that will run on computers.
You can still use twilio's API to add and remove numbers, and some other stuff.
I am developing a VoIP service where two devices can have an audio conversation.
I have been reading about signalling protocols like SIP. I understand the power of SIP but I prefer to have my own signalling protocol since my service will be very basic and will not require the full power of SIP.
As far as I understand, the main purpose of SIP and other protocols is to find the address of the remote party. This information I can get from my server, so no need for SIP here.
Establishing the connection from the caller should be relatively easy.
The problem I am facing however: How can I make the callee Android system listen for RTP packets specific to my app? I need this so I can fire up an intent to deal with answering the call etc.
A ServerSocket has been suggested, but I am not using TCP, and I am trying to make a client-to-client connection, not a server-client one.
SIP is not only used to find the IP address of remote party but also to agree on ports involved in media communication.
For 1-to-1 calls, when caller establishes connection it sends SIP INVITE to callee IP and SIP port. Caller knows that IP because it can query for it from the Registrar server for example.
The SIP INVITE sent from caller to callee has RTP/RTCP ports of caller stored in SDP payload of SIP INVITE message.
When receiving SIP INVITE the callee immediately responds to caller with 180 Ringing, the callee then may display an alert indicating that incoming call is received. Assuming that user accepts the call 200 OK is generated and sent to caller. This 200 OK message has SDP payload with RTP/RTCP ports that will be used by callee to listen for media packets. When 200 OK is received by caller both parties know the ports that will be used for the communication.
If I were you I wouldn't invent any protocols. I would rather try using 3rd party libraries such as pjsip, sofia-sip or some Android SIP stack.
If this is not the case, I would try to adapt the above message flow to your protocol. The problem is that the caller has to know in advance callee's IP and port where signalling message has to be sent. This may be difficult to achieve without any server involved (to query for callee port and IP).
This is an abstract question on how the SIP protocol works. Let us say I have a SIP server (Asterisk/Yate). And I have two Android devices that wish to connect to each other to have an audio call. ( I am looking for a purely VoIP call, no need for telephone numbers or carrier information).
How would this work? Do the packets have to pass through the server? or does the connection happen between the end-points. If the packets has to pass through the server, does the SIP server also provides profiles, or do profiles have to be created by a third party?
I need to understand how the scheme works in order to start planning building the system.
I have read lots of technical documentations, but none show an abstraction of the system. If you can provide me with resources, that would be great too.
Thanks
Since your device not know where each other located(ip/port), they call sip server or proxy.
Sip server match dialplan and send request changed(server) or unchanged(proxy) to other side.
In INVITE request each peer send address/port and info about media stream RTP
If that info unchanged(proxy) they can see each other rtp info and send rtp packets directly.
Also there is posible enother INVITE after call bridged,called re-INVITE with info about new stream for rtp(can be sound on other ip/port or video)
There are nothing called profiles in sip standart, sorry.
Anyway seams bad idea start planning voip system if you have limited REAL experience with sip server.
There are alot of articles(including wikipedia), videos on youtube with topic "how sip works", there are no way put all that here in one answer.
I am working on project with following functionality.
Incoming GSM call after few seconds should be forwarded to VOIP number over Wifi.
Anyone from Laptop/Desktop PC should be able to establish GSM call using android phone over Wifi.
To achieve this following components will be required
VOIP System (Asterisk)
Android client with functionality of incoming call Interception, VOIP agent and forwarding incoming GSM call to voip number
Windows Desktop Application to listen forwarded calls by Android and to establish outgoing GSM calls.
Is it feasible to redirect/forward incoming GSM call to voip number over Wifi and establish outgoing call using android over Wifi
The more usual way to do this would be to simply add a GSM card into your Asterisk VoIP system.
This is quite a common use case and there are multiple suppliers of such cards for Asterisk systems available.
There is even at least one standalone IP to WiFi Asterisk based box available (google GOIP) and there may be others also.
I don't believe that Android as it currently is implemented at the time of writing will allow you to connect a call from GSM to a WiFi VoIP call on the device itself.