PyPhonelog

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(+cat)
 
(37 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Languages|PyPhonelog}}
 
{{Languages|PyPhonelog}}
  
 +
This page now manily discusses the PyPhonelog gtk+ gui.
  
This daemon uses the framework to track and log all the calls made to and from the moko.
+
If you want the gui to work with finger scrolling, download:
Because it uses the framework, it's limited to [[FSO]] supporting distributions only. The daemon uses sqlite and currently (Read: Has to change) keeps the database in "/home/root/.phonelog.db". It has a dbus interface which enables pulling out incoming/outgoing and missed calls including the time the call was placed at.
+
[http://downloads.tuxfamily.org/3v1deb/openmoko/python-mokoui2_0.1.0+svnr4342_armv4t.ipk python-mokoui2]
  
This daemon uses the "org.smartphone.opimd" dbus bus name. It's by no means the expected opimd, it's just a daemon that uses this name because it makes sense!
+
SHR users are suggested not to install this daemon as the default in the config (changeable) uses the SHR daemon.
  
This package also includes a working gtk+ gui for use with the daemon. The gui also keeps a file in "/home/root/.phonelog.dat".
+
Please check out the config file which resides at:
 +
~/.phonelog/phonelog.conf
 +
for a couplef of interesting config options.
  
 +
About the daemon:
  
If you want the gui to work with finger scrolling, download:
+
This daemon uses the framework to track and log all the calls made to and from the moko.
[http://downloads.tuxfamily.org/3v1deb/openmoko/python-mokoui2_0.1.0+svnr4342_armv4t.ipk python-mokoui2]
+
Because it uses the framework, it's limited to [[FSO]] supporting distributions only. The daemon uses sqlite and currently (Read: Has to change) keeps the database in "/home/root/.phonelog.db". It has a dbus interface which enables pulling out incoming/outgoing and missed calls including the time the call was placed at.
 +
 
 +
This daemon uses the "org.smartphone.opimd" dbus bus name. It's by no means the expected opimd, it's just a daemon that uses this name because it makes sense!
  
 
= Installation =
 
= Installation =
 
* Install the pyphonelog (gui) package.
 
* Install the pyphonelog (gui) package.
If you use SHR that's it (actually, untill ophonekitd starts shipping with the logger that's not it...), if not (i.e, debian/fso):
 
 
* Install pyphonelogd (daemon) as well.
 
* Install pyphonelogd (daemon) as well.
 +
'''Notice:''' (If you use [[SHR]] you don't have to install this daemon.)
  
 
I strongly suggest adding the following configs to your gtkrc:
 
I strongly suggest adding the following configs to your gtkrc:
<nowiki>
+
style "treeview"
style "treeview"
+
{   
{   
+
    GtkTreeView::expander-size = 40
    GtkTreeView::expander-size = 40
+
}
    GtkTreeView::indent-expanders = FALSE
+
widget_class "*TreeView*" style "treeview"
}
+
widget_class "*TreeView*" style "treeview"
+
</nowiki>
+
  
 
= Files =
 
= Files =
 
* author: Tom Hacohen <available_at_profile>
 
* author: Tom Hacohen <available_at_profile>
 
* code is at: [http://shr.bearstech.com/git/?p=pyphonelog.git;a=tree;hb=HEAD git]
 
* code is at: [http://shr.bearstech.com/git/?p=pyphonelog.git;a=tree;hb=HEAD git]
* gui: [http://stosb.com/openmoko/pyphonelog_0.11.1_armv4t.ipk package]
+
* gui: [http://shr.bearstech.com/shr-testing/ipk/armv4t/pyphonelog_0.15.10-r0.1_armv4t.ipk package]  
* daemon: [http://stosb.com/openmoko/pyphonelogd_0.9.1_armv4t.ipk package]
+
* daemon: [http://www.stosb.com/openmoko/pyphonelogd_0.11.0_armv4t.ipk package]
  
 
= Important Notices =
 
= Important Notices =
* '''SHR USERS MUST READ THIS: ''' The gui and the daemon are now in different packages, and the packages no longer comply with the older package name. To install this version please first 'opkg remove fso-phonelog' if you had a version older than 0.9.0 before.
+
* The gui and the daemon are now in different packages, and the packages no longer comply with the older package name. To install this version please first 'opkg remove fso-phonelog' if you had a version older than 0.9.0 before.
The gui now supports the SHR phone logger so users that run SHR should not install the pyphonelogd.
+
* The gui now supports the SHR phone logger so users that run SHR should not install the pyphonelogd. (Actually they should if they don't use the latest git generated package, the logger isn't yet up stream).
Though, keep in mind that even SHR users should install the daemon untill ophonekitd will ship with phonelogging enabled.
+
 
+
* For some reason in the newest shr the daemon hasn't started automaticlly at boot time. After a bit of debugging I noticed that's because the frameworkd isn't started yet while the daemon is trying to connect it (although it's set to start a long time after). I added a sleep for 4 seconds in 0.4.2 (and on?) though this must be resolved otherwise.
+
  
 
=Change Log=
 
=Change Log=
'''0.11.1'''
+
This changelog is now mainly for the legacy daemon, for pyphonelog's changelog please refer to the git commit log.
* Grouping now works for non contacts as well.
+
(Major changes may still be listed here)
'''0.11.0'''
+
 
* Added grouping support in the lists.
+
 
'''0.10.1'''
+
'''DAEMON: 0.11.0'''
* Fixed the lists not sorted bug, and another minor bug.
+
* It now supports limiting the lists sizes though only it requires the newest pyphonelog (0.15.1-r2)
'''0.10.0'''
+
'''0.15.1'''
* The gui now supports the ophonekitd phonelogger, which is SHR only, though, if the ophonekitd isn't installed (i.e debian/fso) you can install the pyphonelogd as well as pyphonelog to have a working phone logger.
+
* Fixed a major issue causing the fallback to legacy daemon not to work..
'''0.9.1'''
+
'''0.15.0'''
* The daemon and the gui are now in different packages and the packages are now named pyphonelog and pyphonelogd respectively.
+
* Added support for config vars of all types, and added many new configuration options
'''0.8.1'''
+
'''0.14.0'''
* Fixed a major bug causing missed calls not to be logged and outgoing calls to be logged as missed in certain situations.
+
* Added a configuration file, it now only supports one option 'phonekitd = True/False' (True by default, falls back to the legacy if phonekitd isn't found, change to False to force legacy use) this option must reside in the configuration file, though many will be added in the future. The configuration now resides in ~/.phonelog/phonelog.conf also moved the time file.
'''0.8.0'''
+
'''0.13.2'''
* There's now a call button which works and a show number button which isn't yet useful, and doesn't work.
+
* Fixed the bug concerning the daemon with empty lists.
'''0.7.1'''
+
'''0.13.1'''
* Fixed the double outgoing calls bug in the daemon.
+
* Fixed some major bugs rendering 0.13 useless with the legacy daemon.
'''0.7.0'''
+
'''0.10.0 - DAEMON'''
* The gui now supports the retrieval of the caller's name from the sim phonebook, thanks a lot to Thomas for the patch.
+
* The done now conforms with gui completely, every gui feature is supported.
'''0.6.2'''
+
'''0.13.0'''
* Cleaned the code a bit. Cleaned everything that got ugly in version 0.6.0 ;]
+
* Added the general list tab.
'''0.6.1'''
+
 
* Thanks to a patch by Thomas, the new missed calls are now bold and the old ones are regular.
+
 
'''0.6.0'''
+
'''NOTICE:''' all of the other changes were removed to improve page readability, if you want to view them, please go to this page's history.
* As suggested by Thomas, the new missed calls and the old missed calls are now marked in different colors.
+
'''0.5.0'''
+
* As suggested by Thomas, the missed calls page is now opened first by default.
+
'''0.4.2'''
+
* The issue described in 0.4.1's changelog has been hacked to work. (added a sleep for 4 seconds)
+
'''0.4.1'''
+
* It seems 0.4.0 started too fast after the framework daemon causing the daemon to fail connecting to the framework. In this version, startup is supposed to be delayed a bit.
+
'''0.4.0'''
+
* Daemon now starts upon installation
+
* Added a clear list button
+
* DB does not get erased after upgared anymore.
+
* The GUI app starts faster than before.
+
'''0.3.1'''
+
* Fixed the broken premissions that were found in the previous package.
+
  
 
= TODO =
 
= TODO =
* add a limit to x records
+
Watch the TODO file in the git tree.
* clear lists only updates the list after a restart of the app. make it an instant change
+
 
 +
= Known Issues =
 +
1.
 +
sqlite3.OperationalError: no such table: calls
 +
This means your ophonekitd's version is too old and you should update it!
 +
If you already have and the problem still consists, do the following:
 +
killall ophonekitd
 +
rm /var/db/phonelog.db
 +
DISPLAY=:0.0 ophonekitd & > /dev/null
 +
 
 +
2.
 +
ERROR:dbus.connection:Unable to set arguments ('incoming', 50) according to signature u's': <type 'exceptions.TypeError'>: Fewer items found in D-Bus signature than in Python arguments
 +
This means you are using an old version of the legacy daemon with an new version of pyphonelog, please upgrade the daemon.
 +
 
 +
3.
 +
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.smartphone.opimd was not provided by any .service files
 +
This means you are trying to run the gui without any backend daemon installed please install the daemon, or if you use shr, please update ophonekitd to the latest.
 +
 
 +
4.
 +
You see the numbers as "234234" instead of just 3224234 in the numbers tab, this is the (frameworks?) double quotes bug, please just install version >= 0.15.3 where a workaround is added.
 +
 
 +
6. You get a very small expand groups triangles, that's an issue with the gtkrc you are using, please refer to the [[PyPhonelog#Installation|Installation]] section.
 +
 
 +
=Screeshots=
 +
'''TODO: These pictures are old, should add new ones!'''
 +
 
 +
 
 +
[[Image:pyphonelog1.png]]
 +
[[Image:pyphonelog2.png]]
 +
[[Image:pyphonelog3.png]]
 +
[[Image:pyphonelog4.png]]
 +
 
 +
This one is newer than the others, their list structure (expanding and stuff) is still there, though you can now change the tab names to icons or to different texts, and you can also show the call duration.
  
=Screeshot=
+
[[Image:pyphonelog5.png]]
[[Image:pyphonelog.png]]
+
 
[[Category:FSO]]
 
[[Category:FSO]]
 
[[Category:Debian]]
 
[[Category:Debian]]
 
[[Category:SHR]]
 
[[Category:SHR]]
 +
[[Category:Middleware]]
 
[[Category:Telephony]]
 
[[Category:Telephony]]

Latest revision as of 11:02, 19 July 2009


This page now manily discusses the PyPhonelog gtk+ gui.

If you want the gui to work with finger scrolling, download: python-mokoui2

SHR users are suggested not to install this daemon as the default in the config (changeable) uses the SHR daemon.

Please check out the config file which resides at: ~/.phonelog/phonelog.conf for a couplef of interesting config options.

About the daemon:

This daemon uses the framework to track and log all the calls made to and from the moko. Because it uses the framework, it's limited to FSO supporting distributions only. The daemon uses sqlite and currently (Read: Has to change) keeps the database in "/home/root/.phonelog.db". It has a dbus interface which enables pulling out incoming/outgoing and missed calls including the time the call was placed at.

This daemon uses the "org.smartphone.opimd" dbus bus name. It's by no means the expected opimd, it's just a daemon that uses this name because it makes sense!

Contents

[edit] Installation

  • Install the pyphonelog (gui) package.
  • Install pyphonelogd (daemon) as well.

Notice: (If you use SHR you don't have to install this daemon.)

I strongly suggest adding the following configs to your gtkrc:

style "treeview"
{   
    GtkTreeView::expander-size = 40
}
widget_class "*TreeView*" style "treeview"

[edit] Files

  • author: Tom Hacohen <available_at_profile>
  • code is at: git
  • gui: package
  • daemon: package

[edit] Important Notices

  • The gui and the daemon are now in different packages, and the packages no longer comply with the older package name. To install this version please first 'opkg remove fso-phonelog' if you had a version older than 0.9.0 before.
  • The gui now supports the SHR phone logger so users that run SHR should not install the pyphonelogd. (Actually they should if they don't use the latest git generated package, the logger isn't yet up stream).

[edit] Change Log

This changelog is now mainly for the legacy daemon, for pyphonelog's changelog please refer to the git commit log. (Major changes may still be listed here)


DAEMON: 0.11.0

  • It now supports limiting the lists sizes though only it requires the newest pyphonelog (0.15.1-r2)

0.15.1

  • Fixed a major issue causing the fallback to legacy daemon not to work..

0.15.0

  • Added support for config vars of all types, and added many new configuration options

0.14.0

  • Added a configuration file, it now only supports one option 'phonekitd = True/False' (True by default, falls back to the legacy if phonekitd isn't found, change to False to force legacy use) this option must reside in the configuration file, though many will be added in the future. The configuration now resides in ~/.phonelog/phonelog.conf also moved the time file.

0.13.2

  • Fixed the bug concerning the daemon with empty lists.

0.13.1

  • Fixed some major bugs rendering 0.13 useless with the legacy daemon.

0.10.0 - DAEMON

  • The done now conforms with gui completely, every gui feature is supported.

0.13.0

  • Added the general list tab.


NOTICE: all of the other changes were removed to improve page readability, if you want to view them, please go to this page's history.

[edit] TODO

Watch the TODO file in the git tree.

[edit] Known Issues

1.

sqlite3.OperationalError: no such table: calls

This means your ophonekitd's version is too old and you should update it! If you already have and the problem still consists, do the following:

killall ophonekitd
rm /var/db/phonelog.db
DISPLAY=:0.0 ophonekitd & > /dev/null

2.

ERROR:dbus.connection:Unable to set arguments ('incoming', 50) according to signature u's': <type 'exceptions.TypeError'>: Fewer items found in D-Bus signature than in Python arguments

This means you are using an old version of the legacy daemon with an new version of pyphonelog, please upgrade the daemon.

3.

dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.smartphone.opimd was not provided by any .service files

This means you are trying to run the gui without any backend daemon installed please install the daemon, or if you use shr, please update ophonekitd to the latest.

4. You see the numbers as "234234" instead of just 3224234 in the numbers tab, this is the (frameworks?) double quotes bug, please just install version >= 0.15.3 where a workaround is added.

6. You get a very small expand groups triangles, that's an issue with the gtkrc you are using, please refer to the Installation section.

[edit] Screeshots

TODO: These pictures are old, should add new ones!


Pyphonelog1.png Pyphonelog2.png Pyphonelog3.png Pyphonelog4.png

This one is newer than the others, their list structure (expanding and stuff) is still there, though you can now change the tab names to icons or to different texts, and you can also show the call duration.

Pyphonelog5.png

Personal tools


This daemon uses the framework to track and log all the calls made to and from the moko. Because it uses the framework, it's limited to FSO supporting distributions only. The daemon uses sqlite and currently (Read: Has to change) keeps the database in "/home/root/.phonelog.db". It has a dbus interface which enables pulling out incoming/outgoing and missed calls including the time the call was placed at.

This daemon uses the "org.smartphone.opimd" dbus bus name. It's by no means the expected opimd, it's just a daemon that uses this name because it makes sense!

This package also includes a working gtk+ gui for use with the daemon. The gui also keeps a file in "/home/root/.phonelog.dat".


If you want the gui to work with finger scrolling, download: python-mokoui2

Installation

  • Install the pyphonelog (gui) package.

If you use SHR that's it (actually, untill ophonekitd starts shipping with the logger that's not it...), if not (i.e, debian/fso):

  • Install pyphonelogd (daemon) as well.

I strongly suggest adding the following configs to your gtkrc: style "treeview" { GtkTreeView::expander-size = 40 GtkTreeView::indent-expanders = FALSE } widget_class "*TreeView*" style "treeview"

Files

  • author: Tom Hacohen <available_at_profile>
  • code is at: git
  • gui: package
  • daemon: package

Important Notices

  • SHR USERS MUST READ THIS: The gui and the daemon are now in different packages, and the packages no longer comply with the older package name. To install this version please first 'opkg remove fso-phonelog' if you had a version older than 0.9.0 before.

The gui now supports the SHR phone logger so users that run SHR should not install the pyphonelogd. Though, keep in mind that even SHR users should install the daemon untill ophonekitd will ship with phonelogging enabled.

  • For some reason in the newest shr the daemon hasn't started automaticlly at boot time. After a bit of debugging I noticed that's because the frameworkd isn't started yet while the daemon is trying to connect it (although it's set to start a long time after). I added a sleep for 4 seconds in 0.4.2 (and on?) though this must be resolved otherwise.

Change Log

0.11.1

  • Grouping now works for non contacts as well.

0.11.0

  • Added grouping support in the lists.

0.10.1

  • Fixed the lists not sorted bug, and another minor bug.

0.10.0

  • The gui now supports the ophonekitd phonelogger, which is SHR only, though, if the ophonekitd isn't installed (i.e debian/fso) you can install the pyphonelogd as well as pyphonelog to have a working phone logger.

0.9.1

  • The daemon and the gui are now in different packages and the packages are now named pyphonelog and pyphonelogd respectively.

0.8.1

  • Fixed a major bug causing missed calls not to be logged and outgoing calls to be logged as missed in certain situations.

0.8.0

  • There's now a call button which works and a show number button which isn't yet useful, and doesn't work.

0.7.1

  • Fixed the double outgoing calls bug in the daemon.

0.7.0

  • The gui now supports the retrieval of the caller's name from the sim phonebook, thanks a lot to Thomas for the patch.

0.6.2

  • Cleaned the code a bit. Cleaned everything that got ugly in version 0.6.0 ;]

0.6.1

  • Thanks to a patch by Thomas, the new missed calls are now bold and the old ones are regular.

0.6.0

  • As suggested by Thomas, the new missed calls and the old missed calls are now marked in different colors.

0.5.0

  • As suggested by Thomas, the missed calls page is now opened first by default.

0.4.2

  • The issue described in 0.4.1's changelog has been hacked to work. (added a sleep for 4 seconds)

0.4.1

  • It seems 0.4.0 started too fast after the framework daemon causing the daemon to fail connecting to the framework. In this version, startup is supposed to be delayed a bit.

0.4.0

  • Daemon now starts upon installation
  • Added a clear list button
  • DB does not get erased after upgared anymore.
  • The GUI app starts faster than before.

0.3.1

  • Fixed the broken premissions that were found in the previous package.

TODO

  • add a limit to x records
  • clear lists only updates the list after a restart of the app. make it an instant change

Screeshot

Pyphonelog.png