After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 520668 - Mobile Phone Support
Mobile Phone Support
Status: RESOLVED WONTFIX
Product: conduit
Classification: Other
Component: dataproviders
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: conduit-maint@gnome.bugs
conduit-maint@gnome.bugs
gnome[unmaintained]
: 550146 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2008-03-06 04:50 UTC by John Stowers
Modified: 2018-07-11 23:20 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
First Attempt (7.08 KB, patch)
2008-03-11 13:03 UTC, John Stowers
needs-work Details | Review
Better Enumeration (20.88 KB, patch)
2008-03-13 10:06 UTC, John Stowers
none Details | Review
Better Enumeration (21.84 KB, patch)
2008-03-13 12:28 UTC, John Stowers
needs-work Details | Review
Getting close (28.13 KB, patch)
2008-03-18 10:26 UTC, John Stowers
committed Details | Review
GammuModule.py (8.53 KB, text/x-python)
2008-12-12 05:10 UTC, Matthew Vavrek
  Details

Description John Stowers 2008-03-06 04:50:34 UTC
As a start with Gammu and Python/gammu. Can reuse a lot of code from Wammu
 * http://www.gammu.org/wiki/index.php?title=Main_Page
 * http://wammu.eu/
 * http://code.google.com/p/phonetooth/
Comment 1 John Stowers 2008-03-06 13:07:14 UTC
http://code.google.com/p/pybluez/ makes discovery easier. I am unsure how pairing works and plays with bluez-gnome
Comment 2 John Stowers 2008-03-11 13:03:53 UTC
Created attachment 107056 [details] [review]
First Attempt

The attached patch uses bluez for device discovery, and then python-gammu for enumerating the phone. 

Its a work in progress, but at least shows that this fits in our worldview. Things to do

1. Before enumerating the phone model using gammu, it would be good to first use python-bluez to see what service classes it supports. If it supports obex, then make a file dp (using gnomevfs-obex). If its supports serial/dun then guess that it supports gammu, if it supports syncml then make a libsyncml dp
2. Dont actually set up a gammu driver until we are in the GammuDataProvider. Surely there must be a better way to get the model number first, so that we can then guess the driver later...

Shutdown needs work, and we dont need to keep getting data on a phone that we know the ID of.
Comment 3 John Stowers 2008-03-13 10:06:32 UTC
Created attachment 107207 [details] [review]
Better Enumeration

Much better phone capability enumeration, dynamically creates data providers based on service classes that the phone supports. E.g. if your phone support obex file transfer then create a photo dp, if it gets detected by gammu then create a contact dataprovider.

I would appreciate it if interested parties ran scripts/ListPhones.py with their bluetooth phone paired and in range, and posted the output here.
Comment 4 John Stowers 2008-03-13 12:28:06 UTC
Created attachment 107216 [details] [review]
Better Enumeration

Like the last patch, check with gammu to see it can talk to the phone, while also splitting the gammu stuff into its own file to reduce the core dep on in, and make it easy to offer alternatives, such as gnokii or gpm based enumeration/IO
Comment 5 John Stowers 2008-03-18 10:26:43 UTC
Created attachment 107521 [details] [review]
Getting close

The enumeration seems to work really well. This patch lists the contacts on the phone using Gammu. Seems to work.

TODO:
1) Implement GammuContact GammuTodo etc by deriving from the GammuBase (in the sameway as Wammu does - see Wammu.Reader)
2) Add utility setter/getters to conduit Contact datatype to set the info. Return these from GammuContact

extra) Implement a Plain, pure python contact getter using AT commands only (aka phonetooth)
Comment 6 John Stowers 2008-03-18 10:28:35 UTC
Also see http://www.bitpim.org/ for LG/Samsung CDMA support (its also python, GPL2)
Comment 7 John Stowers 2008-03-28 12:25:30 UTC
Commited preliminary code. Its easier to work on in SVN....

Now some convenience wrappers for the contact data types need to be written, and then we can actually return contact data
Comment 8 Jakub 'Livio' Rusinek 2008-03-28 19:38:00 UTC
I'm happy you're working on this :) .

Thanks to you I and many others can sync their addressbook with phone and maybe in future, with PDA and Pocket PC?
Comment 9 Matthew Vavrek 2008-12-12 05:10:30 UTC
Created attachment 124482 [details]
GammuModule.py
Comment 10 John Stowers 2009-02-13 11:26:19 UTC
*** Bug 550146 has been marked as a duplicate of this bug. ***
Comment 11 Matthias Hataj 2009-02-13 18:06:11 UTC
still no success here to get my phone as a syncing partner.
despite all these success messages, nothing comes up in conduit.
what am i doing wrong?

[DBus                ][DEBUG  ] DBus Message from /: Emmiting DBus signal DataproviderAvailable TestSource (DBus.py:134)
[dataproviders.DataProvider][DEBUG  ] DataProviderFactory <TestFactory object at 0x19217d0 (conduit+dataproviders+DataProvider+DataProviderFactory at 0x17cbfa0)>: Emitting dataprovider-removed for DynamicTestSource1:Foo (DataProvider.py:584)
[Module              ][INFO   ] Dynamic dataprovider (DynamicTestSource1:Foo) unavailable by <TestFactory object at 0x19217d0 (conduit+dataproviders+DataProvider+DataProviderFactory at 0x17cbfa0)> (Module.py:71)
[DBus                ][DEBUG  ] DBus Message from /: Emiting DBus signal DataproviderUnavailable DynamicTestSource1:Foo (DBus.py:134)
[modules.Phone       ][INFO   ] Bluetooth Device Discovered: Mutabor@00:1A:75:BC:F1:24 (ScanThreads.py:53)
[modules.Phone       ][INFO   ] Thread 1106327888 Found Phone: 00:1A:75:BC:F1:24 (ScanThreads.py:28)
[modules.Phone       ][DEBUG  ] Bluetooth Search Complete (ScanThreads.py:61)
[modules.Phone       ][INFO   ] Connecting to 00:1A:75:BC:F1:24 Using: blueat (Gammu.py:93)
[modules.Phone       ][INFO   ] 	 ---> OK (blueat, R1BC002  R1BC002     prgCXC1250092_EU_1_CA, W800i/W800c, Sony Ericsson) (Gammu.py:97)
[dataproviders.SimpleFactory][INFO   ] Item Removed: /org/freedesktop/Hal/devices/bluetooth_acl_1a75bcf124 (SimpleFactory.py:28)
[dataproviders.SimpleFactory][INFO   ] Item Removed: /org/freedesktop/Hal/devices/bluetooth_acl_1a75bcf124 (SimpleFactory.py:28)
[dataproviders.SimpleFactory][INFO   ] Item Removed: /org/freedesktop/Hal/devices/bluetooth_acl_1a75bcf124 (SimpleFactory.py:28)
[modules.Phone       ][INFO   ] Beginning Bluetooth Scan (Gammu.py:110)
[modules.Phone       ][INFO   ] Bluetooth Device Discovered: Mutabor@00:1A:75:BC:F1:24 (ScanThreads.py:53)
[modules.Phone       ][DEBUG  ] Bluetooth Search Complete (ScanThreads.py:61)
[modules.Phone       ][INFO   ] Beginning Bluetooth Scan (Gammu.py:110)
^[	[modules.Phone       ][INFO   ] Bluetooth Device Discovered: Mutabor@00:1A:75:BC:F1:24 (ScanThreads.py:53)
[modules.Phone       ][DEBUG  ] Bluetooth Search Complete (ScanThreads.py:61)
Comment 12 Nick Jenkins 2009-02-27 05:47:36 UTC
With "Blueman" (installed as per the first half of these directions: http://tanere.blogspot.com/2008/11/mobile-broadband-over-bluetooth-on.html ), I can pair with the device, browse the device with Obex, copies files in both directions, all over bluetooth. However, when I then run Conduit 0.3.14, I can't see any indication that conduit can see any bluetooth devices. Is Conduit compatible with blueman? Do I need to install something else? (Google searches - e.g. "set up conduit for bluetooth gnome", "enable bluetooth conduit linux", "bluetooth sync conduit linux" - have not been especially helpful, although a blog post announcing the release of Conduit 0.3.9 + this bug being open lead to me suspect it's a work-in-progress). Assuming that's the case, it would be really nice to be able to use Conduit to sync Evolution's contacts with my phone, using blueman (I tried bluez-gnome instead of blueman, but had trouble getting it to work and gave up, whereas blueman saw the phone and worked straight away using the above instructions).
Comment 13 John Stowers 2009-02-27 05:52:35 UTC
(In reply to comment #12)
> With "Blueman" (installed as per the first half of these directions:
> http://tanere.blogspot.com/2008/11/mobile-broadband-over-bluetooth-on.html ), I
> can pair with the device, browse the device with Obex, copies files in both
> directions, all over bluetooth. However, when I then run Conduit 0.3.14, I
> can't see any indication that conduit can see any bluetooth devices. Is Conduit
> compatible with blueman? Do I need to install something else? (Google searches
> - e.g. "set up conduit for bluetooth gnome", "enable bluetooth conduit linux",
> "bluetooth sync conduit linux" - have not been especially helpful, although a
> blog post announcing the release of Conduit 0.3.9 + this bug being open lead to
> me suspect it's a work-in-progress). Assuming that's the case, it would be
> really nice to be able to use Conduit to sync Evolution's contacts with my
> phone, using blueman (I tried bluez-gnome instead of blueman, but had trouble
> getting it to work and gave up, whereas blueman saw the phone and worked
> straight away using the above instructions).
> 

Yep, it is a work in progress, and you will need to run conduit from SVN to see anything close to working. With that being said however, there is still a lot of work to go, and the loss of my compatible mobile phone means this is no longer a priority for me.

The current implementation used python-gammu, so if you can browser yours phones data using a pygtk tool called wammu, then there is a good chance that Conduit could/would work with it.

Comment 14 Ilia Sh 2009-06-18 08:02:54 UTC
I'v created the BluezPhoneModule.py stored on http://code.google.com/p/conduitphone/
It's uses python-bluetooth and  lightblue to connect via bluetooth.
Phone must be paired with PC. If someone whant to continue develop it i'll be glad!
Comment 15 Jakub 'Livio' Rusinek 2009-06-18 10:32:51 UTC
Only Bluetooth. Naaa...

I still need to use MyPhoneExplorer via VirtualBox and Windows XP.

And sorry for bug spam, I know you won't do anything regardless my comment.
Comment 16 André Klapper 2018-07-11 23:20:16 UTC
Conduit is not under active development anymore, has not seen code changes for eight years, and saw its last tarball release in 2010.
Its codebase has been archived: https://gitlab.gnome.org/Archive/conduit/commits/master

Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect reality. Please feel free to reopen this ticket (or rather transfer the project to GNOME Gitlab, as GNOME Bugzilla is deprecated) if anyone takes the responsibility for active development again.