Menu

Caller ID

2009-10-03
2013-04-30
  • David Willis

    David Willis - 2009-10-03

    Hey, I have installed BK2, and everything works great, except the caller id shows up as "outside call"  Is there anyway to get it to work?

    By the way, I am running 0.3.7-1pclos2007  and skype 2.0.0.72, I know there is a newer version, but it does not work for some reason, in fact it seems no body running pclinuxos can use the newer version of B2K.

     
  • David Willis

    David Willis - 2009-10-11

    ok, I intslled skype and skypmate in windows, to test and see if it was possible, and the caller id works fine.  I also tried to run it in virtualbox, but with skype and skypmate in virtual box the caller id does not work.  I found this kindof odd and have no idea why, but I can not find a way to get the caller id to work in linux.

    Any help would be appreciated.
    thanks
    David

     
  • Simon_6162

    Simon_6162 - 2009-10-11

    Hi

    Caller id isn't implemented in kb2kskype, as I don't know how to do it. There was a project that implemented it however they never released the source code for it.

    You can either, try using their project,  find me a library that I can use, or bully the author of b2kmate to share his code.

    See
    http://forum.skype.com/index.php?showtopic=67560&st=140
    and
    http://www.lunarflow.com/projects/b2kmate/

    Sorry for the bad news
    Simon

     
  • David Willis

    David Willis - 2009-10-12

    Simon, Thanks.  At least I know why it doesn't work, and some places to look.

     
  • Koohiisan

    Koohiisan - 2010-01-05

    Has anyone attempted to work on the caller ID function?  I read the thread over at the skype forum you posted, Simon, and it mentioned that someone had adapted the caller id routines from asterisk.  I checked the asterisk source and it does indeed look pretty robust as far as being able to build and transmit the caller id message (kind of a complicated little critter).

    Anyway, from my examination of the source code available, it would seem that this may be better suited to place in the usbb2k-api-mod program, and just pass the caller id/name in the socket communication.

    Am I way off on any of this?  Has anyone attempted this before or done something else that met with success in this (kb2kskype) project?

     
  • Simon_6162

    Simon_6162 - 2010-01-05

    Hi,

    No-one is working on it so feel free to try, if you want, all the latest code is in SVN. My email address is in the source code so contact me on that re access.

    The asterisk code, is pretty much all you need and it should go in usbb2k-api nas you suggest. kb2kskype should just set the ringing, and when it does send some info on who it is or a blank message such as UNKNOWN the info comes from Skype easily.

    You also probably want kb2kskype to determine what device the caller ID tones should be played down, by assuming that the current Skype output is the box and getting the details out of the Skype api. This might be less of an issue now that Skype do pulseaudio only.

    In my post on the Skype forum I put the alsa config needed to use the caller ID and caller waiting at the same time as Skype via alsa / dmix, but i don't think you need to do anything  to use pulse audio.

    I don't think the asterisk code has an interface to PulseAudio, so you will have to figure it out, if you are going to do this I'd follow Skype's lead and just make it compatible with that and ignore alsa.

    As caller waiting and CallerID  arren't critical features, it would be nice to have it as option at compile time, or at least the option to disable it, so that the additional libraries aren't required, (but I wouldn't worry about that to much at first)

    The idea I had for caller waiting was just to have an wav file and play that down the line when another call came in,  using some noddy command line tool e.g. paplay. Then people can replace it with whatever they like, by making the filename available as a config option. I suppose have some sort of repeat delay as well.

    If only I had the time……………….

     
  • Koohiisan

    Koohiisan - 2011-08-08

    I never got to tear into the caller ID issue.  Has anyone else made any progress on it? 

    Also, on a similar note, I currently get around having no caller ID by leaving skype running on other Windows XP PCs in the house.  It works because they will pop up a notice about who is calling in since they all ring together.  But, skype on XP is consistently eating 90% of the system, so I'd like to replace it with a program of my own that reads the phone # and name from the socket that kb2kskype is using and displays it on those other PCs.  Is there any way I can access that socket safely without running into a file-lock issue or causing timing trouble for kb2kskype?

     
  • Simon_6162

    Simon_6162 - 2011-08-08

    I'm not sure I understand your question.

    What number are you trying to display on the other computers ? Is it an incoming Skype call or a PSTN number? Assuming its the Skype one, you could get kb2kskype to make a file when a call is incomming or in progress (simillar to the on-hook file stamp that exists now) and just get windows to poll that location over the network (samba or http ) and display a windows with the file contents if it exists, make a ring tone ….

    Please note I've added a QT4 version to svn written in python. If you want this behaviour as a command line option let me know.

     
  • Koohiisan

    Koohiisan - 2011-08-08

    I think you nailed exactly what I'm looking for!  :)

    I want to display the info on an incoming Skype call and spread that info to other PCs in my network, so that custom programs residing on those PCs can display that info onscreen.

    I haven't yet looked at the QT4 version yet, but sure, I'd like to get this kind of feature requested.  Perhaps it would be possible to have it delete the file when the call is either answered or is otherwise no longer ringing…that would be good.

    I was also curious in my question about real caller ID as can be displayed on the normal phone handsets.  I guess I may have made my questions more confusing by combining them in such a way, sorry!  But, has the feature of real caller ID come any closer to success?

    Thanks!

     
  • Simon_6162

    Simon_6162 - 2011-08-08

    The feature to make a file when ringing containing a caller id is no problem, and remove it when answered / aborted.
    There is also an old flag that isn't in the new version yet for in call, I'll put that back in.

    As for the real caller ID, no realy progress although when I ever find time I think I know how to do it. I want to finish off the QT4 version first as I think thats more pressing as QT3 support is vanishing from new distros.

    Simon 

     
  • Koohiisan

    Koohiisan - 2011-08-08

    Sure, finishing the QT4 version first is very reasonable!  :)

    I would love to see the 'in call' flag put in, as I had a problem with the QT3 version turning on the dial tone on the handset if the phone rang while I was in a call already.  So, I hacked together a rudimentary 'in call' flag in my own copy of the source from a while back.  I used the flag to simply not try to ring if there was already a call taking place.  So, yes, please add that flag in, if it's not too much trouble.  Thanks for the quick response!

     
  • Simon_6162

    Simon_6162 - 2011-08-08

    You're just lucky I'm sat at my desk for once! I'll look into that bug, I wasn't aware of it, which means I've probably done the same thing in the new version.

    Simon.

     
  • Koohiisan

    Koohiisan - 2011-08-08

    More details on the bug: when I was in-call, and another call came in, it would correctly drop the incoming call as expected.  The downside was that the routine that dropped the call turned on the dialtone (as you would normally expect it to).  So, I used a flag to tell it to drop the call but not enable the dialtone if I was in a call. 

    Thanks!  I guess I should have reported that here, huh?  :)

    Keep up the great work!

     

Log in to post a comment.