View Single Post
Old 01-13-2017, 08:12 PM   #20
davidfor
Grand Sorcerer
davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.
 
Posts: 24,905
Karma: 47303824
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
Quote:
Originally Posted by besucherin View Post
And more fun with sqlite......

Doing a backup first is always a good idea.....
Code:
sqlite> .backup /some/directory/kobodb
What other tables do we have?
Code:
sqlite> .fullschema
This one looks interesting:
Code:
CREATE TABLE AnalyticsEvents(.
Id TEXT,.
Type TEXT,.
Timestamp TEXT,.
Attributes TEXT,.
Metrics TEXT,.
TestGroups TEXT,.
PRIMARY KEY(Id));
It has the type of stuff you'd expect for it to tell you what percentage of a book you've read and how long you've spent reading, and when you sync, it sends something like this (along with the other events recorded? maybe I'll wireshark it one day and find out):
Code:
INSERT INTO "AnalyticsEvents" VALUES('<some unique string of numbers and letters>','UserMetadataUpdate','2017-01-13T23:40:57Z','{"AccountType": "Adult","Affiliate": "Kobo","CustomerType": "RMR","DeviceModel": "Kobo Aura ONE","KoboSuperPointsBalance": "0","KoboSuperPointsStatus": "","OSVersion": "3.0.35+","SDCardStatus": "No"}','{"DownloadedLibrarySize": 99,"LibrarySize": 116,"NumberOfDownloadedFreeBooks": 0,"NumberOfDownloadedPaidBooks": 0,"NumberOfDownloadedPreviews": 35,"NumberOfFreeBooks": 0,"NumberOfPaidBooks": 16,"NumberOfPreviews": 36,"NumberOfShelves": 0,"NumberOfSideloadedBooks": 64,"StorageSize": 6890}','{}');
Personally, I don't think they have any business knowing how many books I'm getting from elsewhere..... (btw the sync failed, "ServerErr", probably because there's no account set up.)

And here's an example of what Kobo sees if you flip through a preview book:
Code:
INSERT INTO "AnalyticsEvents" VALUES('<some unique string of numbers and letters>','OpenContent','2017-01-13T23:41:10Z','{"ContentFormat": "application/x-kobo-epub+zip","Monetization": "Preview","StartFile": "OEBPS/haupttitel.html","StartSpan": "kobo.1.1","volumeid": "<some nonunique string of numbers and letters>"}','{}','{}');
INSERT INTO "AnalyticsEvents" VALUES('<some unique string of numbers and letters>','LeaveContent','2017-01-13T23:42:16Z','{"ContentFormat": "application/x-kobo-epub+zip","Monetization": "","StartFile": "OEBPS/kapitel1.html","StartSpan": "kobo.1.1","volumeid": "<some nonunique string of numbers and letters>"}','{"IdleTime": 24,"PagesTurned": 2,"SecondsRead": 1}','{}');
I know some people don't have a problem with being constantly watched to be better advertised to, but I say no thanks. And I actually like, you know, owning my devices, you know?
The table has been discussed before. But my take on it is that it is information that helps Kobo understand the way the device is used and hence improve it. And looking at the rows you picked, they are for books you have purchased from Kobo. That means Kobo are already know about the book and are that fact in it's recommendations to you. For this and other reasons, I'm pretty sure the tracking for advertising is done by another mechanisms.

If you don't want this, then you can add a trigger to delete the rows as they are added. If you are a calibre user, my Kobo Utilities plugin has an option to do this. There is also an option on the "Reading settings" page to disable tracking reading activity. I don't know if this affects this table. The plugin will also do a backup (by file copy) of the database if you want.
davidfor is offline   Reply With Quote