VOIP

Under development: PCMCIA, wireless, etc.
Message
Author
User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#46 Post by Lobster »

Thanks guys :)
Have created a wiki page and added everyones discoveries
If I have omitted anything - please add.

New info welcome :)
http://tmxxine.com/wik/wikka.php?wakka=PuppySip

Smokey has asked me a about piping commands from gtkdialog to the command line of PjSua . . .

eh . . . :oops:

How is that done :?:
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
HairyWill
Posts: 2928
Joined: Fri 26 May 2006, 23:29
Location: Southampton, UK

#47 Post by HairyWill »

good work smokey,

It looks like we have a reasonable working program.
pjsua is intended as a reference implementation.
There are smaller versions in the build with less functionality.
The full version UI isn't exactly idiot proof.

I suspect that building a graphical client will involve some hacking of the source to one of the reference versions. I'm not sure whether it would be better to enhance the external bindings and try and interact with it from bash or it might just be more simple to use gtk.

If we are angling for inclusion in an official release it might be simplest to just include a very simple program that allows you to dial out and possibly answers incoming calls automatically. simpleua is 256K stripped and gzipped. I'm not exactly sure what its capabilities are.

I spoke to smokey for a while just now, good quality.

lobster you might want to consider turning down the logging
--log-level 3
--app-log-level 4
still allows IMs to work
Will
contribute: [url=http://www.puppylinux.org]community website[/url], [url=http://tinyurl.com/6c3nm6]screenshots[/url], [url=http://tinyurl.com/6j2gbz]puplets[/url], [url=http://tinyurl.com/57gykn]wiki[/url], [url=http://tinyurl.com/5dgr83]rss[/url]

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#48 Post by smokey01 »

The easiest way to check if someone in your buddy list is on line:

Press s [enter] -1 [enter]

This will subscribe all of your buddy's and check every 300 seconds to update status.

To unsubscribe your buddy's:

Press u [enter] -1 [enter]

charnisingh
Posts: 138
Joined: Sat 06 Oct 2007, 11:58

VOIP

#49 Post by charnisingh »

Hi Lobster,

i downloaded version sip7 and filled the details just the same i did last time

and i think it did register (not sure) in the end it did say 0 call but it did show

all the buddy list and menu.

it may take me some time to understand its working in toto.

regards,
Charni.

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

Driving pjsip 101

#50 Post by smokey01 »

How to retrieve voice mail in PJSIP:

address is: 611@proxy01.sipphone.com

The voice message tells you to press 2 to retrieve messages.

Press # [enter] 2 [enter]

For new messages Press # [enter] 1 [enter]

Get the idea. Whatever you are told to do press hash [enter] first.

Smokey

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#51 Post by Lobster »

Puppy Sip 0.8 now available as a .pet (almost)
http://tmxxine.com/sip/puppysip8.pet

The pet creates a menu entry (which does not work)
Any ideas?

However if you go to the directory /puppysip8
and run ps-08 - it runs OK

New for the version
Minor tweaks and improvements to the help file
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#52 Post by Lobster »

This is the very latest code
I have started implementing a dialpad
(I know Smokey is working on this too)
How are you getting on?
What I need to know is how to pass a '#1' to the console . . .
Is this possible once the program is running?
How?
Something like

Code: Select all

<action>rxvt '#1' &</action>

Code: Select all

#!/bin/bash
# GPL v3 License
# PS VOIP for Puppy Linux v 0.9 June 28 008
# created by Lobster, CEL, HairyWill, Smokey
# tested by Pritish, Eric, Charni and the Puppy Community
###################

export PJCFG='/puppysip8/config8.cfg' # config-file

export DIALOG='
<window title="PS8 ~ Puppy Soft Internet Phone" window-position="1">
<vbox>
<menubar> 
  <menu>
    <menuitem>
       <label>Run Phone Prog</label>
         <action>rxvt -e ./pjsua --config-file=config8.cfg &</action>
    </menuitem>
    <menuitem>
       <label>Run Gizmo</label>
       <action>gizmo &</action>
    </menuitem>
      <menuitem stock="gtk-quit">
           <action>echo You selected the quit menu item</action>
           <action type="exit">exit by menu</action>
         </menuitem>
    <label>Phone</label>
      </menu>   
   <menu>
         <menuitem>
           <action>leafpad config8.cfg &</action>
           <label>Edit config file</label>
           <action>exit</action>
         </menuitem>   
      <label>Configure</label>
    </menu>
    <menu> 
         <menuitem>
           <label>Puppy SIP thread</label>
           <action>defaulthtmlviewer http://www.murga-linux.com/puppy/viewtopic.php?p=206813#206813 &</action>
         </menuitem>
         <menuitem>
           <label>Puppy SIP Wiki</label>
             <action>defaulthtmlviewer http://tmxxine.com/wik/wikka.php?wakka=PuppySip &</action>
         </menuitem>
              <menuitem>
           <label>Help</label>
           <action>defaulthtmlviewer file://`pwd`/resources/help.html &</action>
         </menuitem>
        <menuitem>
           <label>Credits</label>
           <action>defaulthtmlviewer file://`pwd`/resources/credits.html &</action>
         </menuitem>
     <label>Help</label>
   </menu>   
 </menubar> 
        <hbox> 
        <button>
            <label>1</label>   
                  <action>cd /puppysip8 &</action>
              <action>#1 &</action>        
        </button> 
           <button>
            <label>2</label>
             </button> 
           <button>
            <label>3</label>
          </button> 
       </hbox>
       <hbox> 
        <button>
            <label>4</label>
             </button> 
        <button>
            <label>5</label>
        </button> 
        <button>
            <label>6</label>
       </button> 
       </hbox> 
       <hbox> 
        <button>
            <label>7</label>
                 </button> 
        <button>
            <label>8</label>
            </button> 
        <button>
            <label>9</label>
            </button> 
        </hbox>  
        <hbox>  
            <button>
            <label>0</label>
          </button> 
        </hbox>  
     <frame>
          <pixmap icon_size="6">
           <input file>logo.jpg</input>
          </pixmap>
         <text><label>Fill in details and save config</label></text>
         <text><label>Click phone to run - Press return in console for menu options</label></text>
   </frame>
  <hbox>
    <text>
      <label>Your SIP URL:  </label>
    </text>
    <entry>
      <input>sed -rn /^--id/s/^--id.//p /$PJCFG</input>
       <variable>SIP_ID</variable>
     </entry>
    <text>
      <label>eg. sip:yourname@proxy01.sipphone.com</label>
    </text>
  </hbox>
  <hbox>
    <text>
      <label>Registrar URL:</label>
    </text>
    <entry>
      <input>sed -rn /^--registrar/s/^--registrar.//p /$PJCFG</input>
       <variable>SIP_REGISTRAR</variable>
     </entry>
    <text>
      <label>eg. sip:proxy01.sipphone.com</label>
    </text>
  </hbox>
  <hbox>
    <text>
      <label>Auth Realm:   </label>
    </text>
    <entry>
      <input>sed -rn /^--realm/s/^--realm.//p /$PJCFG</input>
       <variable>SIP_REALM</variable>
     </entry>
    <text>
      <label>eg. *</label>
    </text>
  </hbox>
  <hbox>
    <text>
      <label>Username:     </label>
    </text>
    <entry>
      <input>sed -rn /^--username/s/^--username.//p /$PJCFG</input>
       <variable>SIP_USERNAME</variable>
     </entry>
    <text>
      <label>eg. yourname</label>
    </text>
  </hbox>
  <hbox>
    <text>
      <label>Password:      </label>
    </text>
    <entry invisible_char="*" visibility="false">
      <input>sed -rn /^--password/s/^--password.//p /$PJCFG</input>
      <variable>SIP_PASSWORD</variable>
    </entry>
  </hbox>
  <hbox> 
      <text>
      <label>Save config details</label>
      </text>
         <button ok></button>
          <button>
            <label>P H O N E</label>
              <action>cd /puppysip8 &</action>
              <action>rxvt -e ./pjsua --config-file=config8.cfg &</action>
          </button>    
     <button cancel></button>
  </hbox> 
</vbox>
 </window>'

I=$IFS; IFS=""
for STATEMENTS in $(gtkdialog3 --program DIALOG --name PuppySIPConfig); do
  eval $STATEMENTS
done
IFS=$I

if [ "$EXIT" = "OK" ]; then
  sed -e /^--id/d -e /^--registrar/d -e /^--realm/d -e /^--username/d -e /^--password/d $PJCFG > /tmp/puppysiptmp
  mv /tmp/puppysiptmp $PJCFG
  echo "
--id $SIP_ID
--registrar $SIP_REGISTRAR
--realm $SIP_REALM
--username $SIP_USERNAME
--password $SIP_PASSWORD" >> $PJCFG 
fi
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
HairyWill
Posts: 2928
Joined: Fri 26 May 2006, 23:29
Location: Southampton, UK

#53 Post by HairyWill »

lobster
I emailed you this in the wee hours.
It is based on 7 and includes a tone dialer, maybe you didn't get it

Lobster,
this shows that it can be done
I probably won't have time to look at it for the next couple of days

main working features
call - to call a buddy, need to add ability to type in a url
answer (should work though I haven't actually tested)
hangup
gizmo voicemail (then use the number buttons)
toggle visibility

its a bit of code spaghetti but the logic for starting the pipe is in start-pjsua
once pjsua is running you can pass in commands by concatenating them onto pjsua-input
the stuff shown on the console is also written to pjsua-output, I scraped the buddies list from here
will probably need to continually scan pjsua-output looking for IMs and checking buddy status
Will
contribute: [url=http://www.puppylinux.org]community website[/url], [url=http://tinyurl.com/6c3nm6]screenshots[/url], [url=http://tinyurl.com/6j2gbz]puplets[/url], [url=http://tinyurl.com/57gykn]wiki[/url], [url=http://tinyurl.com/5dgr83]rss[/url]

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#54 Post by Lobster »

Hi Will,
Great stuff :)

Just what is needed
Yes I got your message :)
Just been looking at the code and it is now advancing sufficiently for me to bow out and leave to real programmers :oops:
though I will contribute and test and do what I can

Looking at the code I notice an empty 'names' file
that I assume is called from pjsua-controller
so the names in earlier config files can be added to that?

What is needed is someone to combine the new help file
into this new version and to test and in particular to add the
buddy list of people to call . . .

Anyone willing to try? Will is busy for a while . . .
Smokey - how are you getting on?
I will have a go at the coding myself - but it is now getting a little complex for my taste
Tronkel - you got some time?
Help!

Some great progress guys :)
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#55 Post by Lobster »

OK have (I think) merged Wills code with version 9 Help file - which are now outdated anyway . . .

Anyway this is the latest code which should be put in /
so everything is run from the puppysip9.1 directory

http://tmxxine.com/sip/ps9.1.tar.gz

the only thing I have working so far from Wills code is the voicemail . . .
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
smokey01
Posts: 2813
Joined: Sat 30 Dec 2006, 23:15
Location: South Australia :-(
Contact:

#56 Post by smokey01 »

Lobster wrote:This is the very latest code
I have started implementing a dialpad
(I know Smokey is working on this too)
How are you getting on?
Lobster, I haven't had much time to do any work on the dial pad. Unfortunately I regularly work 11 and 12 hour days.

I have a play between sleep and golf, oops and the family.

Do you know if there is such a software program like MS access where the entire graphics could be constructed on forms with various buttons etc that have their own properties. Clicking on the object would take some action and parse it to pjsip. Maybe this is a better question for Will.

Is this possible in GTKdialog3?

Is there a good tutorial available to learn GTKdialog3?

Keep up the good work guys. I'm pretty happy with the command line version of pjsip as It can now do most of what I need but it will not be enough for some. Has anyone worked out how to make conference calls and what is the limit of people that can participate in the conference?

To make pjsip popular it will need to be graphical, functional and simple to use. I don't believe it needs too many features. Bloat needs to be kept to a minimum.

Smokey

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#57 Post by Lobster »

I have a play between sleep and golf, oops and the family.
I have heard golf is a very absorbing game. In order to cut down on human reality as much as possible I play it on the Wii - though my preferred game is Wii Sports tennis . . .
I am getting very aggressive, swearing at the screen . . .

. . . now then . . .
I have heard from Hairy aka Will and . . .
he is making some great progress.
Rather than continue I will allow him to post anything he has created but he seems to be getting most of the components working from the interface he is adding to Puppy SIp.

He is also making excuses about families and sleep and such . . .
. . . however we can wait . . .

Really looking forward to his efforts, what he has done so far is already a vast improvement

m m m . . . as for the gtkdialog3 tutorial
this is a great way of learning . . .
Well a good way will be to follow what Will is doing . . .

To get a more complex interface you can use Glade and Gtkdialog3 together
Programming is time consuming though . . .

Anyone up for creating a tutorial?
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#58 Post by Lobster »

OK this is the very latest code from Will
http://tmxxine.com/sip/puppsip_290608v2.tgz

If you wish to modify - you have two hours to work on it (from this posting) then Will will be back on it (possibly)

I intend to work on the wiki for now as this can be the basis of the help file

Test and suggestions welcome
We are getting closer to a release version . . .
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#59 Post by Aitch »

Hi Lobster

Thanks for the continued updates; your voice sounds clearer with every tweak, it seems

Well done Will & Lobster for working on Puppysip

I don't know if either of you, or anyone else may know this, I have a couple of creative labs usb voipblaster adapters on the way,

Image

Image

which enable ordinary UK housephones to connect [via usb?] to a voip enabled PC, & which apparently work with linux using the [badly named] fobbit software

http://fobbit.sourceforge.net/

Will, can you have a look? as there are source files & rpms, I think, and it would be nice to be able to use them

This review says they can be made to work with skype, too??

http://forum.skype.com/lofiversion/index.php/t1635.html

Also I have found this HK advert [ebay] for a premicell - a GSM dual band mobile phone VOIP adapter suitable for vans & boats, apparently

GSM Premicell

Any idea if this would work with linux? - I think it uses nokia chipset, but no other details

Aitch

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#60 Post by Lobster »

Thanks Aitch for info. :)
We also need to know how people can register a SIP number without Gizmo?
We also need to start looking for video software AND updating the webcam http://www.moyo.me.uk/pupplinux/ drivers - for possible future enhancements . . . :)

Errors and feedback:
keeps asking me repeatedly to leave a message (some loop or command repeat) when trying to leave voice message
What does clear do? It's not - eh . . . clear . . . :)

all updated info here
http://tmxxine.com/wik/wikka.php?wakka=PuppySip
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#61 Post by Aitch »

We also need to know how people can register a SIP number without Gizmo?
We also need to start looking for video software........
maybe something here - they have eyebeam & videoconference, but may be proprietory licenced


http://www.counterpath.com/x-lite.html&active=4

ibeam setup

I think *buntu already use ekiga, but I don't know how successfully

this might be useful, but I'll keep looking

http://www.vide.net/cookbook/cookbook.e ... name=H.323

Aitch

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#62 Post by Lobster »

I am having problems leaving voicemail with PuppySip users
Grant (who is using the latest version) does seem to be getting through . . .
Gizmo may be playing with my account as I also noticed a balance of $8 - not put in by me had appeared . . .

If so (understandable as we are using their servers) . . .

Setting up a server or bypassing by phoning IP to IP is a priority
or something to ensure we can continue . . .

I have used earlier versions of PuppySip on a fresh Dingo with the same results the voicemail message keeps looping - remember I am sending in some weird signals to Gizmo - so it could be me that has done all this - (unintentional hackery) :oops:

Wills new version is looking great. Has a much better interface.
Do keep using whatever version of PuppySip that works for you - keeping a channel online and keep sending messages etc.

Thanks guys. 'It's good to talk' :oops:
- Oh no the viral memes marketing of BT have got to me . . .

:)
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
HairyWill
Posts: 2928
Joined: Fri 26 May 2006, 23:29
Location: Southampton, UK

#63 Post by HairyWill »

Lobster wrote:I have used earlier versions of PuppySip on a fresh Dingo with the same results the voicemail message keeps looping - remember I am sending in some weird signals to Gizmo - so it could be me that has done all this - (unintentional hackery) :oops:
:oops: there is a typo in the gtkdialog definition for the 3 button. It is actually echoing a 2. Smokey told me about this yesterday.

I didn't work on this last night and I'm going to try to do real life things to day, might even turn the computer off!

The 290608v2 tar listed above includes the bones of a process that continually parses the output of pjsua looking for interesting messages. It is possible to use this to split out the messages from the other output.

I will probably use this to to write out the current state to a number of different files ie. buddies-list, accounts-list, calls-list (currently open calls).

I'm not 100% sure how the messaging system will work. To be able to display messages as they arrive, I don't think it will be in gtkdialog. I think xdialog includes a log viewer that zigbert used in ptimer. This could have a scrolling transcript above a text entry box with a send button. It would probably be sensible to launch separate chat windows for each person you wanted to chat to. The chatlogs could be saved in side your profile so each time you opened the IM window for a particular person you would just append stuff to the end of the last chat.

Currently there is no feedback showing you that an action is in progress (such as dialing). It would be possible to have a status box at the bottom of the main dialog but this could only be updated when a button is pressed. An alternative to this would be popping up a separate message window, it would probably be sensible to have this killed automatically, either after a timeout or when the next message arrives. The problem with this is that the window would grab the focus so it would be irritating if you were trying to do something else. This would probably work for dialing and disconnect type messages but imagine trying to type an IM and losing the focus every time pjsua issued an is typing or message received notification.

Another notification of interest is when your buddys' status changes. By diffing the previous buddies-list with a new one it is possible to check for this. These notifications must also be included in some of the messages.
Will
contribute: [url=http://www.puppylinux.org]community website[/url], [url=http://tinyurl.com/6c3nm6]screenshots[/url], [url=http://tinyurl.com/6j2gbz]puplets[/url], [url=http://tinyurl.com/57gykn]wiki[/url], [url=http://tinyurl.com/5dgr83]rss[/url]

muggins
Posts: 6724
Joined: Fri 20 Jan 2006, 10:44
Location: hobart

#64 Post by muggins »

I don't know if this is a newer release, than the one currently being used, but I just saw this post on freshmeat.

User avatar
HairyWill
Posts: 2928
Joined: Fri 26 May 2006, 23:29
Location: Southampton, UK

#65 Post by HairyWill »

thanks muggins
I checked pjsip out of the subversion repository last week and built from that. For anyone trying to repeat the experience you will come unstuck with the portaudio import because puppy svn won't do ssl. I just copied the portaudio stuff from the latest version of the pjsip source tar.
Will
contribute: [url=http://www.puppylinux.org]community website[/url], [url=http://tinyurl.com/6c3nm6]screenshots[/url], [url=http://tinyurl.com/6j2gbz]puplets[/url], [url=http://tinyurl.com/57gykn]wiki[/url], [url=http://tinyurl.com/5dgr83]rss[/url]

Post Reply