Please sugest: Internet Phone SIP

Using applications, configuring, problems
Message
Author
enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

Please sugest: Internet Phone SIP

#1 Post by enrique »

1rst allow me to explain what I am looking for. I do have knowledge on Cellphone, Skype & WhatsApp etc. I am not even looking into go Underground like tor, etc.

The Idea is to simply have a few good friends hook together without been ties to the Social network apps. See the point, we try to get away of the scrutiny of the Social Network but not necessary been hidden.

One option I has seen is puppyphone.
http://distro.ibiblio.org/puppylinux/pe ... x86_64.pet
http://smokey01.com/software/internet/p ... x86_64.pet

I had never used it an do not know if applicable. But I have read
The Public IP address field is for true peer to peer communications. This is where you enter your
unique public IP address. ...
at http://www.smokey01.com/help/psip/psip-help.html.

So PSIP is my 1rst candidate. I will be testing it. Meanwhile i will be looking forward to your suggestions.

Please suggest also an android app that is compatible with this setup. As always thanks in advance.

williams2
Posts: 337
Joined: Fri 14 Dec 2018, 22:18

#2 Post by williams2 »

There are alternatives to Facebook, Twitter, etc.

https://en.wikipedia.org/wiki/Compariso ... networking
https://en.wikipedia.org/wiki/Compariso ... g_services
https://en.wikipedia.org/wiki/GNU_social

(forum won't let me post links to these web pages:)
Diaspora
Mastodon

I think you can just go to a website already running one of these social media servers, and create your own group.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#3 Post by enrique »

Thanks for the replay. No Social Network. The Idea is to stay away from it. While we work. But we are in different countries. So Chat/SIP. I know there are a few. In the past I done torchat. Quite nice but tor some times fails so I do not want to rely on it. Plus there is no need for hiding. Just stay away form social net.

Lets start with puppyphone. What will be a good Android app to chat/talk with a Puppy running puppyphone or puppychat.

Edit:
After reading a little GNU Social can be setup to run on private server. But seems a lot of work now. This may be a future project.

Edit2:
From what I see I think psip puppyphone may fit my needs. Now I need an android app to go with it. I tried the basic "CSipSimple" but as it old it hangup on new androids. Any one can suggest one?
Last edited by enrique on Sun 22 Dec 2019, 15:21, edited 1 time in total.

User avatar
OscarTalks
Posts: 2196
Joined: Mon 06 Feb 2012, 00:58
Location: London, England

#4 Post by OscarTalks »

I suggest you try Linphone
http://linphone.org
It is available for Android as well as desktop.
I have compiled it from source for various Puppies in the past, but not for Bionic64 so you may need to try installing via PPM which will probably be a lot larger but should work.
You have audio and video with optional encryption, plus text messages.

PSIP Puppy Phone works very well but is audio only.
Theoretically any SIP phone should be able to communicate with any other SIP phone so you should be able to talk to Linphone on Android from PSIP on Puppy, but that may not always work in practice.
Oscar in England
Image

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#5 Post by enrique »

I tried 1st Misudroid but had trouble on new androids. App seem to fail to connect.

Then I tried downloading linphone from linphone.org work in my Android 5.1 but new androids did not wanted to sideload. So I was force to download from the market. This linphone seems to do the job now. Will stick to it for now.

Thanks OscarTalks for you suggestion.

User avatar
gcav
Posts: 104
Joined: Fri 25 May 2012, 04:12
Location: Ontario

with android try 3cx

#6 Post by gcav »

with android try 3cx.

g

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#7 Post by enrique »

I saw some suggestions to that 3cx. But I thinks I saw something about PBX. That is what I did not tried. Now that you mention I may try it. Thanks

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#8 Post by enrique »

I am moving this to this thread to prevent/stop hijacking HowTo!!! Verify that your VPN is hooking you up correctly


Flash wrote:... should be used to make a P2P PuppyPhone call?...
Possibly correct. Now this is the address assigned NOT to You!!! It is the address assigned to your local gateway ( the route to the Internet ). Most likely your Home/ Residence modem. Now Here is the important part. To use it for PuppyPhone you need to tell the Router that when it receives a call using Port [X] to PLEASE Forward X to your local address in your PC. And In some routers you need to Open that Port X.

So you need to know your PC IP

Code: Select all

ip route | grep default 
or more exactly

Code: Select all

ip route | grep default | awk '{print $3}'
Now you need to know the Port PuppyPhone is using:

Code: Select all

netstat -peanut | grep psip
or more exactly

Code: Select all

netstat -peanut | grep psip | awk '{print $4}'
So lets resume. 1rst make sure PuppyPhone is running. The info needed for myself is:

Code: Select all

root@live:~/netinfo# ip route | grep default | awk '{print $3}'
192.168.40.1
root@live:~/netinfo# netstat -peanut | grep psip | awk '{print $4}'
0.0.0.0:5060
0.0.0.0:5060
root@live:~/netinfo# curl ifconfig.me
107.72.165.74
This mean:
1) I have to go to the router and allow a Port Forward of 5060 to my PC Local IP 192.168.40.1. In some routers you need to separately OPEN that port 5060.

2) In my PC Firewall Port I need to OPEN also Port 5060.

Opening this port are necessary to allow Someone else to call us. This mean wee need to allow this call to come throu our security.

Now that we are ready we can tell our Friends that our PUBLIC IP is 107.72.165.74.

So you thinks this is all !!! NOOOO... Most likely your router assign you a different address every time you hook to internet. This means that today's LOCAL address is different that before!! So when your call try to come in it will NOT reach you as you are in different address!!!. To resolve this issue you need to Set Your PC with a STATIC LOCAL IP Address. And in some routers. You need to also go and allow that to happen.

Waooo what a monospeach. Hope it helps
Last edited by enrique on Sun 29 Dec 2019, 19:41, edited 1 time in total.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#9 Post by enrique »

This question was made on another thread [quote To prevent/stop Hijack I will respond it here. HowTo!!! Verify that your VPN is hooking you up correctly Then if we have to extend no one will be able to complain.
foxpup wrote:@enrique very nice instructions for puppyphone with IP!!
enrique wrote:Now you need to know the Port PuppyPhone is using:

Code: Select all

netstat -peanut | grep psip
When I try this I get 2 ports, 5060 and 5061:

Code: Select all

root# netstat -peanut | grep psip
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      0          91578      29175/./psip64      
tcp        0      0 0.0.0.0:5061            0.0.0.0:*               LISTEN      0          91582      29175/./psip64      
udp        0      0 0.0.0.0:5060            0.0.0.0:*                           0          91575      29175/./psip64 
Any idea what this means?
I don't use VPN.
See below for my answer

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#10 Post by enrique »

I run in BusterDog64.

I believe I downloaded http://smokey01.com/software/internet/p ... x86_64.pet And transform the pet into a debian deb package.

After executing PSIP I get

Code: Select all

root@live:~# netstat -peanut
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name             
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      0          23514      3853/psip                     
udp        0      0 0.0.0.0:5060            0.0.0.0:*                           0          23511      3853/psip

If I make a call I see

Code: Select all

root@live:~# netstat -peanut
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name              
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      0          23514      3853/psip           
tcp        0      0 192.168.45.235:60791    192.168.45.235:5060     ESTABLISHED 0          32406      3853/psip           
tcp        0      0 192.168.45.235:5060     192.168.45.235:60791    ESTABLISHED 0          33315      3853/psip                    
udp        0      0 0.0.0.0:4000            0.0.0.0:*                           0          32407      3853/psip           
udp        0      0 0.0.0.0:4001            0.0.0.0:*                           0          32408      3853/psip           
udp        0      0 0.0.0.0:5060            0.0.0.0:*                           0          23511      3853/psip  
After I Hung the Call

Code: Select all

root@live:~# netstat -peanut
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name              
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      0          23514      3853/psip           
tcp        0      0 192.168.45.235:60791    192.168.45.235:5060     TIME_WAIT   0          0          -                            
udp        0      0 0.0.0.0:5060            0.0.0.0:*                           0          23511      3853/psip

After waiting a while I see

Code: Select all

netstat -peanut
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name         
tcp        0      0 0.0.0.0:5060            0.0.0.0:*               LISTEN      0          23514      3853/psip              
udp        0      0 0.0.0.0:5060            0.0.0.0:*                           0          23511      3853/psip  


MY executable is

Code: Select all

root@live:~# file /usr/bin/psip
/usr/bin/psip: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, stripped
This is the about

Code: Select all

PSIP 1.42
PSIP - Puppy SIP Phone
A simple GTK GUI for PJSIP

(psip-2018-12-05.tar.bz2)
(Built with pjsip 2.4 and osxcart 1.2.0)
(Built in Fatdog-800b.iso)
Copyright © James Budiono 2011, 2015, 2018
Now as you see the initial port use is 5060. I guess used to contact SIP Provider. But once I make a call a few other pids get used on Listening by PSIP 4000, 4001. I do not its purpose. Then 1 more are generated 60791. I assume this last one us use for the Forward and Return voice channels.

IN Spanish we say "El que busca encuentra". "If you search, you will find". Yes we can speculate as to what this 5061 pid is used. I can not tell you as I have not inspect the source code.

1rst try again. Turn Poweroff of PC and reboot. Do netstat. Then Call the program, do netstat. Then generate a call. Do netstat. One more after hangup and some time latter.

Then lets us now what you see, with the version and where you got pet.

Finally If it bather you. Go ahead and download the one I did use and test that one too for comparison.
Last edited by enrique on Sun 29 Dec 2019, 19:35, edited 1 time in total.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#11 Post by enrique »

Let me clarify one more time about opening the port 5060. 1rst I am new to puppy and to PuppyPhone. I can only guess how it works. I may be wrong in my assumptions. If I am correct then then this is how it works.

You can use the PSIP in two ways.

1) Thru an SIP operator. For example iptel.org. If you call your buddies this way you should not need to open any ports. You only need to call PSIP and your firewall & home router should allow the call go thru.

2) The original question was how is done using our public ip. In this method we do not use a SIP operator. So chances are that you may need then to open an inbound port from internet to your PC. This means setting your router and PC to forward that port 5060 from router to your PC. This will then allow and incoming call to arrive at your PC.


I hope not to be wrong and to clarify your questions. But maybe we can find a dedicated thread in this forum with the correct answer.

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

2 ports listening

#12 Post by foxpup »

Hello @enrique, thank you for taking the time for such a detailed answer.
enrique wrote:I run in BusterDog64.

I believe I downloaded http://smokey01.com/software/internet/p ... x86_64.pet
I run mainly Bionicpup64 or dPupStretch 32bit (from radky).
I went to the repo of Smokey01 and dowloaded the proper pets for this to pups.
I found that the 64bit pet you use in BusterDog64 behaves the same in Bionicpup64: only port 5060 is listening.
The 32bit pet from the same repo (in dPupStretch and in Slacko6.9.9.9 from norgo) behaves as I have reported: both ports 5060 and 5061 are listening.

I intend to report this in the psip thread.

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

3rd way for psip

#13 Post by foxpup »

enrique wrote:You can use the PSIP in two ways.
I would say there is a third way.
Smokey has explained in the PuppyLinuxNewsletters from august 2018 and january 2019.
He calls it a psip VPN. It works with n2n/edge.
Instead of a SIP operator you use a provider of a supernode to make the connection,
which is (probably) more reliable.
Additional advantage is that your 'coordinates' do not change, as can happen to your IP.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

Re: 3rd way for psip

#14 Post by enrique »

I love to learn. What is the link for those PuppyLinuxNewsletters? Thanks

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

Re: 3rd way for psip

#15 Post by foxpup »

enrique wrote:I love to learn. What is the link for those PuppyLinuxNewsletters? Thanks
Look on Smokey's website: http://smokey01.com/ :-)

By the way. I have CsipSimple on a small android tablet.
CsipSimple is EOL for a few years now and it is not on Google Play any more.
It still works fine for me though.
I'm sure you could still find it on other apk providers.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#16 Post by enrique »

I feel s7upid...
I see http://smokey01.com/newsletters/. I knew about a download area smokey01 has build for some puppy master builders. Like in "http://smokey01.com/software/internet/p ... x86_64.pet" . But never got to try main address http://smokey01.com/ and what it contains. I guess I have to read a little. Thanks.

See I like to chat with you as I do learn. Now regards "CSipSimple". I previously say:

Code: Select all

 I tried the basic "CSipSimple" but as it old it hangup on new androids.
I did try and seems to work in old 4.3 and I think I do not recall well but 5.0. But some of my friends had I think 7 or 8 and the app hangup.

What version of Android do you run it on?

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#17 Post by enrique »

This link you had sent me is fantastic. http://smokey01.com/newsletters/

I read for now only the two articles you mention. Wao smokey01 did put a lot of work in those newsletters. From what I read he will stop doing them. Sad.
I would say there is a third way.
Yes and Not really. I do not want to go into details. But all is related as how our Firewall works. A firewall blocks any unsolicited incoming communication. But a program from inside your PC is allow to open almost any port. Then if the program stay on holding the port in listening, your Firewall will leave that port open. There are firewalls both at the PC and your Router.

A program keep listening on port 5060 for incoming calls. When a program keeps listening to a port it is define or functioning as Server. It in fact provides a "service" to "clients". So PSIP is a server.

In option 1: PSIP is provided with SIPUSER:PASS & SipProviderServer. So PSIP should initiate a Call to SipProviderServer leaving port 5060 OPEN at both your PC & Router.

In option2: PSIP have no user SIPUSER:PASS & SipProviderServer info. So my best guess is that it may still listen to port 5060 but in UDP mode. As it does not generate the 1rst call to SipProviderServer ports should remain CLOSED. That is why we need to manually open the port.

Now I have not study your 3 option in detail but.
N2N is a peer-to-peer VPN system. Edge is the edge node daemon for n2n which creates a TAP interface to expose the n2n virtual LAN. On startup n2n creates the TAP interface and configures it then registers with the supernode so it can begin to find other nodes in the community.
But to me it is just option1, Because now it seems you run another Server in your PC with N2N edge that then is responsible to opening the ports. Now you not only have port 5060 but what ever extra ports edge is opening!!!

Listen I am now going to speculate. Just ignore if you are not comfortable. Imagine we are in to Mathematical Theorems.
Theorem 1 says your firewall keeps you safe as long as all ports are closed.
Theorem 2 reads a server in your PC can open Ports, to allow Important Services to Clients.

Then a Mathematical Geek quickly deduce Theorem 3. A hacker can use Theorem 2 to break Theorem 1! The more ports are open the more chances you get....

Do not get me wrong neither, Common puppy users love the puppy OS as it comes pre-configured with many services and ready to use. This means there are many servers included!

Lets go even further. Must of all none puppy Distros used "Systemd". Systemd force all apps to communicate using sockets... I do not have the details, but to me this means Linux have many servers listening to those apps, and I wonder how those ports are manage! Clearly there most be some sort of protection, but I personally wonder sometimes.

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

#18 Post by foxpup »

@enrique
I've missed your mention of CsipSimple.
I have it on android7. But it has been a long time I've used it/tried it.
Maybe it was still another android when I did. I should try it again.

About n2n psip. You do a lot of thinking!! :shock:
I agree it is like with a sipprovider: there is a man in the middle.
In the case of bytemark.leggewie.org it is debian, not a commercial enterprise.
Also, sipproviders do not work well all the time for gratis users.
You could run a supernode yourself if you do not want the man in the middle.

I do not know about servers firewalls and ports and sockets, what is safe and what is not, whether n2n leaves ports open (I guess it does) ...
I hardly understand. :oops:
Maybe someone else knows about protection.
(protection against what?)

As with anything you do, you should use n2n as it was meant to be used.
You find some remarks on n2n security here:
https://www.ntop.org/products/n2n/
n2n 1.x has been designed to be simple and used in private n2n networks. We’re aware that it has some security limitations such as
.

enrique
Posts: 595
Joined: Sun 10 Nov 2019, 00:10
Location: Planet Earth

#19 Post by enrique »

Please try again CsipSimple on your android and report me. If it still works I will like to have that version to download.

I think the issue us compiling it with new android sdk. I read something about 32/64 bit apps.

As I say I am willing to learn. Do you use this N2N edge? And for what porpose?

This type of app are called mesh network
A mesh network (or simply meshnet) is a local network topology in which the infrastructure nodes (i.e. bridges, switches, and other infrastructure devices) connect directly, dynamically and non-hierarchically to as many other nodes as possible and cooperate with one another to efficiently route data from/to clients. This lack of dependency on one node allows for every node to participate in the relay of information. Mesh networks dynamically self-organize and self-configure, which can reduce installation overhead. The ability to self-configure enables dynamic distribution of workloads, particularly in the event a few nodes should fail. This in turn contributes to fault-tolerance and reduced maintenance costs
I have use for android serval

Code: Select all

http://www.servalproject.org/
https://github.com/servalproject/batphone
Youtube Click on image
Image

Image

You can do several test without subscribing to it.

If you use N2N Edge can you explain how it works?

foxpup
Posts: 1132
Joined: Fri 29 Jul 2016, 21:08

#20 Post by foxpup »

enrique wrote:Please try again CsipSimple on your android and report me. If it still works I will like to have that version to download.

I think the issue us compiling it with new android sdk. I read something about 32/64 bit apps.
I've just tried it with the 'sip provider method'.
I called to and from the little tablet from and to puppyphone on my laptop. That still works.
It is CSipSimple version 1.02.03. I had it installed from google play some time ago.
Do you use this N2N edge? And for what porpose?
...
If you use N2N Edge can you explain how it works?
No I do not use N2N.
Is the explanation from Smokey in the newsletter not enough? What is not clear?

It would more usefull for me (for the above use case for example)
if one could set n2n up in android as well.
At the time one had to root android and I did not do that.
There has been some development since with n2n for android, so maybe I should look into that again.

Another use case is the one Smokey explains. That is to set up a private group of sip/puppyhone users.
I think one could make this into a conference room using all the same IP address in the script (-a option for n2n-edge) and for Puppyphone (Public IP address).

Post Reply