Reply
Thread Tools
Posts: 2 | Thanked: 0 times | Joined on May 2010
#1
Hi,

I am interested in making calls by sending commands on Xterminal.

Idea is to connect N900 using ssh to my ubuntu machine and send commands from ubuntu machine to n900 so that it can make calls.

I would also like to do the same using usb connection, where in my n900 is connected to ubuntu machine using usb(PC suite mode) and I send command from ubuntu to n900, it(n900) initates a call as a result.

Regards

Mrudul
 
Posts: 27 | Thanked: 10 times | Joined on Mar 2010
#2
Code:
dbus-send --system --type=method_call --print-reply --dest=com.nokia.csd.Call /com/nokia/csd/call com.nokia.csd.Call.CreateWith string:"$YOURNUMBERHERE" uint32:0
 

The Following 5 Users Say Thank You to Salatheel For This Useful Post:
F2thaK's Avatar
Posts: 4,365 | Thanked: 2,467 times | Joined on Jan 2010 @ Australia Mate
#3
wow, thats cool. pretty well, a computer that makes phone calls
 
Posts: 37 | Thanked: 52 times | Joined on Aug 2005 @ Bremen, Germany
#4
you can also use the ofono stack:

http://wiki.maemo.org/User:Jebba/Ofono
 
lostinmirkwood's Avatar
Posts: 128 | Thanked: 232 times | Joined on Sep 2009 @ New Jersey, USA
#5
I've often wondered if you can use dbus commands to get the most recent SMS ("Conversations") messages as well.
 
Posts: 82 | Thanked: 44 times | Joined on Feb 2010
#6
Check out http://wiki.maemo.org/Phone_control - lots of xterm commands for doing all sorts of things
 

The Following 5 Users Say Thank You to benh_n900 For This Useful Post:
lostinmirkwood's Avatar
Posts: 128 | Thanked: 232 times | Joined on Sep 2009 @ New Jersey, USA
#7
Wow, how did I not stumble across this Wiki before. Thanks.
 
Posts: 2 | Thanked: 0 times | Joined on May 2010
#8
Hi,

I tried giving the command on x-terminal and i get following error "Error com.nokia.csd.Call.Error.InvalidAddress: Create call: Invalid Address Error"

I am giving command as follows -
dbus-send --system --type=method_call --print-reply --dest=com.nokia.csd.Call /com/nokia/csd/call com.nokia.csd.Call.CreateWith string:"$0404848048" uint32:0

(NOTE: I have changed the number but the number length kept is same.)
I tried the same on serial port from my ubuntu machine using ATD command it works fine.
for eg: ATD 0404848048;

I have tried using python script and that also gives same error.
Here is the python code -
====mycall.py========

import gobject, dbus
from dbus.mainloop.glib import DBusGMainLoop

def place_call(number):
bus = dbus.SystemBus()
csd_call = dbus.Interface(bus.get_object('com.nokia.csd',
'/com/nokia/csd/call'),
'com.nokia.csd.Call')
csd_call.CreateWith(str(number), dbus.UInt32(0))

DBusGMainLoop(set_as_default=True)
place_call('0404848048')
gobject.MainLoop().run()

====mycall.py========

Can someone point to me what is going wrong here?

-MVP
 
woof404's Avatar
Posts: 11 | Thanked: 2 times | Joined on May 2010 @ Norway
#9
Originally Posted by mrudulpen View Post
Hi,

I tried giving the command on x-terminal and i get following error "Error com.nokia.csd.Call.Error.InvalidAddress: Create call: Invalid Address Error"

I am giving command as follows -
dbus-send --system --type=method_call --print-reply --dest=com.nokia.csd.Call /com/nokia/csd/call com.nokia.csd.Call.CreateWith string:"$0404848048" uint32:0

(NOTE: I have changed the number but the number length kept is same.)
I tried the same on serial port from my ubuntu machine using ATD command it works fine.
for eg: ATD 0404848048;

I have tried using python script and that also gives same error.
Here is the python code -
====mycall.py========

import gobject, dbus
from dbus.mainloop.glib import DBusGMainLoop

def place_call(number):
bus = dbus.SystemBus()
csd_call = dbus.Interface(bus.get_object('com.nokia.csd',
'/com/nokia/csd/call'),
'com.nokia.csd.Call')
csd_call.CreateWith(str(number), dbus.UInt32(0))

DBusGMainLoop(set_as_default=True)
place_call('0404848048')
gobject.MainLoop().run()

====mycall.py========

Can someone point to me what is going wrong here?

-MVP
That code worked fine with me. Remove the "$" from the string with the number in the dbus-send command on your terminal and see if it works better. I did some modification to implement a little dictionary, new code:

Code:
#!/usr/bin/python
import dbus, sys

def place_call(number):
bus = dbus.SystemBus() csd_call = dbus.Interface(bus.get_object('com.nokia.csd', '/com/nokia/csd/call'), 'com.nokia.csd.Call') csd.call.CreateWith(str(number), dbus.UInt32(0))
s = sys.argv[1] ar = ['name1', 00000000, 'name2', 00000000, 'name3', 00000000] if s == ar[0]:
place_call(ar[1])
elif s == ar[2]:
place_call(ar[3])
elif s == ar[4]:
place_call(ar[5])
else:
print "Sry, mate"
Had to write the adove code off from the N900 so there might be some typos, but you get the idea.
 
Reply


 
Forum Jump


All times are GMT. The time now is 06:52.