phone-caller
Utilities
Score 61%
Description:

The phone-dialer is a small and simple perl-program that uses an analogous modem to dial.

I used it to enhance kaddressbook, so phone numbers are clickable (see screenshot). That's the reason why I post it here, though it is not really a KDE application ...

It works with my modem and my system, but I have no experiences gathered with other configurations. However, the Hayes-AT-commandset for modems is a standard and should work for every modem.

Install:
Just copy or move the phone.pl file somewhere in your $PATH.

Usage:
A few command line options are described in the file itself. The most important are:
"call 'number'" or "dial 'number'" -- dials
"hangup" -- hangs up the modem
"--device=/dev/modem" -- selects the device file

Something about the number:
You can use numbers with leading + and country code ("+33 2 123456" for a number in france). If the country code is equal with your given area-code (--area=33), then +33 is omitted and replaced by a 0 (zero). Otherwise (if the number is not startet by +), nothing is changed, except that "-" _within_ numbers are removed ("069-1234-5678-90"). Spaces whithin numbers are allowed, but then the whole number has to be in ".

Of course, I give absolutely no guaranty, that phone.pl does not kill you, your system, the president or anybody else ;-)
Last changelog:

13 years ago

0.9.2:
- GUI-interface for hangup (use --ui=kde or --ui=tk as option)
- minor bugfixes
0.9.1:
- using Getopt::Long for handling of options
- more general default-values

BryanFRitt

8 years ago

When I try to run this program, I get a bunch of

read() on closed filehandle FHR at ./16319-phone.pl line 163.

errors, and nothing else.

Report

BryanFRitt

8 years ago

Had to install perl-tk to run this, otherwise, I'd get this message, when I try to run it:

Can't locate Tk.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/bin/phone.pl line 6.
BEGIN failed--compilation aborted at /usr/bin/phone.pl line 6.

Report

bbroeksema

11 years ago

Hi the script doesn't work at all for me. (Both don't work, btw). This is the first time i try something with a modem in linux so i probably forget something. Can you give me some hints on things i could try? Kernel configuration for example.

Report

zdravo

13 years ago

hi
I tried your script, but although it brings up the dial tone it doesn't dial the number.

I'm using a conexant winmodem on mandrake 10.1 with drivers from linuxant.

Any ideas would be welcome, as would an idiots guide on how to "plug" this in to kde3 address book.

Ta
Simon

Report

stegru

13 years ago

Both scripts are working well.

But how do you manage dialing and hanging-up after picking up the phone
from within Kadressbook with the Perl-Program?
You can call phone.pl either for a
call or for hangup, don't you?

What about adding a simple dialog
for this task like the shell-script
above?

Stefan

Report

C

reiter

13 years ago

On my system, I added phone.pl as Non-KDE-program with parameter "hangup" to Kicker, so I just have to click to hangup. But that is mainly an improvised solution though it works well.

But I am working on a better solution:
I think of a small window too, but since the script itself is not dependent on KDE, I think I shouldn't use something like kdialog.

Report

sarahb523

13 years ago

Your script don't work for my elsa mikrolink 56K. The initstring is ATZ and a pick up isn't alowed. After init and sending the dial string your script hangs in the loop of phone_readecho.

I wrote a very simple bash script without any "intelligence" and it works great:

#!/bin/bash
# phone.sh
BEEP=`which beep`

if [ -n $BEEP ]; then
beep -f 800
fi

echo "ATDT$1;" >> /dev/modem
sleep 1
kdialog --msgbox "After the connection is established, pick up the phone and press ok. "
echo "ATH0" >> /dev/modem
#end.

The only thing I have to do is the removal of any non numeric character in the number string.

Report

C

reiter

13 years ago

If you have "ATZ" as initstring, "AT ATZ" will be sent to the modem -- You have to give just the Z (or whatever) without the "AT".

I don't deny that your script works well, but phone.pl gives you more (not documented ... (-: ) comfort. Not only that it does some initialization (volume of the modem for example). Other commands like "redial" are as well as possible ("phone redial").

Report

13 years ago

0.9.2:
- GUI-interface for hangup (use --ui=kde or --ui=tk as option)
- minor bugfixes
0.9.1:
- using Getopt::Long for handling of options
- more general default-values

product-maker 13 24

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
0.9.2
updated Nov 11 2004
added Sep 19 2004
downloads today
0
page views today 2