PyMaemo/Accessing APIs without Python bindings/More examples
From Maemo Wiki
More examples
This page contains some other example code using ctypes. Note that they are not complete, and assume some code already shown on the [[../|main article]].
Searching contacts by phone number
Searching contacts by phone number can be done using the osso_abook_query_phone_number() and e_book_get_contacts() functions:
ebook = ctypes.CDLL('libebook-1.2.so.5')
err = ctypes.c_void_p()
c_book = ebook.e_book_new_default_addressbook(ctypes.byref(err))
if not ebook.e_book_open(c_book, 1, 0):
print >>sys.stderr, "Couldn't load addressbook."
sys.exit(1)
# fuzzy search enabled to allow partial matches (refer to documentation)
c_query = osso_abook.osso_abook_query_phone_number("12345678", 1)
contacts = ctypes.c_void_p()
if not ebook.e_book_get_contacts(c_book, c_query, ctypes.byref(contacts), err):
print >>sys.stderr, "Couldn't get query results."
sys.exit(1)
The "contacts" is a GList which can be iterated over as explained [[../#Accessing Items in a GList|here]].