PyPhonelog

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(+cat)
 
(46 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Languages|PyPhonelog}}
 
{{Languages|PyPhonelog}}
 +
 +
This page now manily discusses the PyPhonelog gtk+ gui.
 +
 +
If you want the gui to work with finger scrolling, download:
 +
[http://downloads.tuxfamily.org/3v1deb/openmoko/python-mokoui2_0.1.0+svnr4342_armv4t.ipk 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.
 
This daemon uses the framework to track and log all the calls made to and from the moko.
Line 6: Line 19:
 
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 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".
+
= 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"
  
If you want the gui to work with finger scrolling, download:
+
= Files =
[http://downloads.tuxfamily.org/3v1deb/openmoko/python-mokoui2_0.1.0+svnr4342_armv4t.ipk python-mokoui2]
+
* author: Tom Hacohen <available_at_profile>
 +
* code is at: [http://shr.bearstech.com/git/?p=pyphonelog.git;a=tree;hb=HEAD git]
 +
* gui: [http://shr.bearstech.com/shr-testing/ipk/armv4t/pyphonelog_0.15.10-r0.1_armv4t.ipk package]
 +
* daemon: [http://www.stosb.com/openmoko/pyphonelogd_0.11.0_armv4t.ipk package]
  
 +
= 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).
  
'''IMPORTANT NOTICE:''' 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=
 +
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)
  
= Package =
 
* author: Tom Hacohen <available_at_profile>
 
* this is a python script so code resides in /usr/bin/phonelogd and /usr/bin/phonelog untill I open a proper place for it.
 
* link: [http://stosb.com/openmoko/fso-phonelog_0.8.1_armv4t.ipk package]
 
  
=Change Log=
+
'''DAEMON: 0.11.0'''
'''0.8.1'''
+
* It now supports limiting the lists sizes though only it requires the newest pyphonelog (0.15.1-r2)
* Fixed a major bug causing missed calls not to be logged and outgoing calls to be logged as missed in certain situations.
+
'''0.15.1'''
'''0.8.0'''
+
* Fixed a major issue causing the fallback to legacy daemon not to work..
* There's now a call button which works and a show number button which isn't yet useful, and doesn't work.
+
'''0.15.0'''
'''0.7.1'''
+
* Added support for config vars of all types, and added many new configuration options
* Fixed the double outgoing calls bug in the daemon.
+
'''0.14.0'''
'''0.7.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.
* The gui now supports the retrieval of the caller's name from the sim phonebook, thanks a lot to Thomas for the patch.
+
'''0.13.2'''
'''0.6.2'''
+
* Fixed the bug concerning the daemon with empty lists.
* Cleaned the code a bit. Cleaned everything that got ugly in version 0.6.0 ;]
+
'''0.13.1'''
'''0.6.1'''
+
* Fixed some major bugs rendering 0.13 useless with the legacy daemon.
* Thanks to a patch by Thomas, the new missed calls are now bold and the old ones are regular.
+
'''0.10.0 - DAEMON'''
'''0.6.0'''
+
* The done now conforms with gui completely, every gui feature is supported.
* As suggested by Thomas, the new missed calls and the old missed calls are now marked in different colors.
+
'''0.13.0'''
'''0.5.0'''
+
* Added the general list tab.
* 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)
+
'''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.
'''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


IMPORTANT NOTICE: 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.

Package

  • author: Tom Hacohen <available_at_profile>
  • this is a python script so code resides in /usr/bin/phonelogd and /usr/bin/phonelog untill I open a proper place for it.
  • link: package

Change Log

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