+ Reply
Page 1 of 3 123 LastLast
Results 1 to 20 of 58

Your favorite Apple, iPhone, iPad, iOS, Jailbreak, and Cydia site.


Thread: Is it possible to increase Call history count?

is a discussion within the

File Mods

forums, a part of the

iPhone Modding

section;
So looking more into this phone noticed that all of your recent calls are stored in the call_history.db file. That file is a SQLite file which you can easily open.
...
  1. #1
    iPhone? More like MyPhone
    Join Date
    Jul 2007
    Posts
    122
    Thanks
    2
    Thanked 13 Times in 8 Posts

    Default Is it possible to increase Call history count?
    So looking more into this phone noticed that all of your recent calls are stored in the call_history.db file. That file is a SQLite file which you can easily open. I noticed there are a few parameters in there and one is call history limit which is set to 100, which means its holding 100 of your most recent calls. I tried to change to say 500, but it still only holds the last 100. In that DB file also is the list of calls you made to who, what time, duration (which seems to round upto nearest minute). It also tracks your data usage and stuff, basically what you see on your Usage screen.

    So wondering if anyone has sucessfully increased the call history count, I also tried to add a few blank rows to that table thinking maybe it allocated 100 rows and only works there, but that didnt work either.

    Dixit

  2. #2
    Green Apple
    Join Date
    Oct 2007
    Posts
    76
    Thanks
    8
    Thanked 6 Times in 6 Posts

    Did you try backing up the files and deleting the one that had the calls in it, changing the value to 500 and rebooting your phone?
    8GB 3G iPhone

    • Universal-Sim 5.5 Unlock
    • 2.1 Pwned with Pwnage Tool

  3. #3
    iPhone? More like MyPhone
    Join Date
    Jul 2007
    Posts
    122
    Thanks
    2
    Thanked 13 Times in 8 Posts

    Quote Originally Posted by glustic View Post
    Did you try backing up the files and deleting the one that had the calls in it, changing the value to 500 and rebooting your phone?
    I have tried that but will have to wait because now I have to generate more than 100calls to see if it actually takes it past 100 or does it still FIFO in the 100.

    Dixit

  4. #4
    iPhone? More like MyPhone
    Join Date
    Jul 2007
    Posts
    122
    Thanks
    2
    Thanked 13 Times in 8 Posts

    So got tired of waiting for a 100calls to happen ended up quickly just generating that many and seems like even with that property changed to 500, the actual call list table only seems to only 100 of the last calls, no matter what that property value is set in the first table. Just seems to FIFO the calls in the last 100.

    Dixit

  5. #5
    Livin the iPhone Life Reako's Avatar
    Join Date
    Sep 2007
    Posts
    1,683
    Thanks
    31
    Thanked 182 Times in 126 Posts

    Hmmm, maybe a little more tweaking is needed. I wish I knew how to help...

    Reako

  6. #6
    Green Apple
    Join Date
    Nov 2007
    Posts
    64
    Thanks
    12
    Thanked 20 Times in 10 Posts

    Gosh really wish it were possible to make the call history unlimited, that would really help me for one.

    Is there any tweak that could be done for this? Thanks.

    Cheers.

  7. #7
    Green Apple
    Join Date
    Aug 2007
    Posts
    48
    Thanks
    1
    Thanked 11 Times in 7 Posts

    Quote Originally Posted by vikasmal View Post
    Gosh really wish it were possible to make the call history unlimited, that would really help me for one.

    Is there any tweak that could be done for this? Thanks.

    Cheers.
    sqlite trigger placed on the table would work.

  8. #8
    Green Apple
    Join Date
    Aug 2007
    Posts
    48
    Thanks
    1
    Thanked 11 Times in 7 Posts

    For those who want to test unlimited size of last call list, use attached file.
    After unzipping replace /var/root/Library/CallHistory/call_history.db with the new one.
    I recommend to keep a copy of the old one just to be safe.
    Please note it will erase all your current history.
    Reboot your iPhone to start the trigger.

    Please note that it may slow down the "last calls" screen, depending on how big your list will be.

    So far mine works fine, with 3000 records.
    Remember that I take no responsibility if it blows up your phone
    Attached Files Attached Files

  9. The Following 3 Users Say Thank You to piranha For This Useful Post:

    bigdogjonx (12-11-2007), Hunter926 (04-11-2013), vikasmal (12-14-2007)

  10. #9
    iPhone? More like MyPhone
    Join Date
    Jul 2007
    Posts
    122
    Thanks
    2
    Thanked 13 Times in 8 Posts

    Quote Originally Posted by piranha View Post
    For those who want to test unlimited size of last call list, use attached file.
    After unzipping replace /var/root/Library/CallHistory/call_history.db with the new one.
    I recommend to keep a copy of the old one just to be safe.
    Please note it will erase all your current history.
    Reboot your iPhone to start the trigger.

    Please note that it may slow down the "last calls" screen, depending on how big your list will be.

    So far mine works fine, with 3000 records.
    Remember that I take no responsibility if it blows up your phone
    How did you do this? Ive been looking at the SQLite database for a good bit of time and could not get it working myself, looked at yours and didnt see the trigger, still shows the 100record limit in the properties. Is yours setup to just be unlimited or rotate after so many?

    Dixit

  11. #10
    Green Apple
    Join Date
    Aug 2007
    Posts
    48
    Thanks
    1
    Thanked 11 Times in 7 Posts

    I created following trigger:
    Code:
    CREATE TRIGGER [deleteKeep] 
    BEFORE DELETE ON [call] 
    FOR EACH ROW 
    BEGIN 
    
    insert into call
    select null,address,date,duration,flags,id from call
    where call.ROWID=OLD.ROWID  ;
    
    END
    which is fired when the record is deleted. It simply inserts back what has been deleted.
    Don't know what backend you use for sqlite, my recommendation is sqlite admin

    Much better solution is to move deleted records to another table, and that's the solution I used in SMS database. There I also created a view which combines both tables, and modified SMSD to display the info from the view. That way I always have 900 records in SMS table, and the rest is in archive table. I can view all SMS using SMSD

    The delete of the records, happens in the Telephony framework it's not a property of DB.
    Last edited by piranha; 12-11-2007 at 08:58 AM.

  12. The Following User Says Thank You to piranha For This Useful Post:

    Hunter926 (04-11-2013)

  13. #11
    My iPhone is a Part of Me Digital Oxygen's Avatar
    Join Date
    Sep 2007
    Posts
    525
    Thanks
    0
    Thanked 29 Times in 27 Posts

    Good work Piranha, will try this.
    Search NAZI

  14. #12
    iPhone? More like MyPhone
    Join Date
    Jul 2007
    Posts
    122
    Thanks
    2
    Thanked 13 Times in 8 Posts

    Quote Originally Posted by piranha View Post
    Don't know what backend you use for sqlite, my recommendation is sqlite admin
    Thanks Piranha, Ive been using SQLite Database browser and it shows all the data in the tables but clearly didnt show the Views or Triggers, thanks for the recommendation, this is 10x better than SQLite Browser.

    I just imported all my data from the original one so I still have my original 100 list and cumulative call timers and stuff. This definetely works, good stuff man.

    Dixit

  15. #13
    Livin the iPhone Life Reako's Avatar
    Join Date
    Sep 2007
    Posts
    1,683
    Thanks
    31
    Thanked 182 Times in 126 Posts

    So does this mean we can alter the SMS database also? I hate having to delete them. It is so corny.

    Reako

  16. #14
    Green Apple
    Join Date
    Aug 2007
    Posts
    48
    Thanks
    1
    Thanked 11 Times in 7 Posts

    SMS is more advanced, and I am trying to get in touch with author of SMSD to get it implemented in the program.

    First we need to create "archive" table:
    CREATE TABLE 'messag1' (
    "ROWID" integer,
    address text,
    date integer,
    text text,
    flags integer,
    "replace" integer,
    svc_center text
    )

    Then the trigger:
    CREATE TRIGGER message_limit
    AFTER INSERT
    ON message
    WHEN (select count(*) from message)>700
    BEGIN
    insert into messag1 select * from message limit 1;
    delete from message where message.ROWID in (select messag1.ROWID from messag1);
    END

    And optionally a view combining data from both tables (used by modded SMSD to access old SMSes):
    CREATE VIEW [messag] AS
    select *,datetime(date, 'unixepoch') as sDate from message
    union
    select *,datetime(date, 'unixepoch') as sDate from messag1

    You can use compiled database that I attach to this email, and modded SMSD that reads from the view.

    That way regular SMS application will see only 700 messages that are in main table, and to view the rest you'll use SMSD app.

    Preferred solution would be of course SMSD creating all necessary tables, triggers and views and implement viewing with paging. So far I got no response from the author of SMSD.
    Attached Files Attached Files
    Last edited by piranha; 12-12-2007 at 03:19 AM.

  17. #15
    What's Jailbreak?
    Join Date
    Dec 2007
    Posts
    2
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Quote Originally Posted by piranha View Post
    For those who want to test unlimited size of last call list, use attached file.
    After unzipping replace /var/root/Library/CallHistory/call_history.db with the new one.
    I recommend to keep a copy of the old one just to be safe.
    Please note it will erase all your current history.
    Reboot your iPhone to start the trigger.

    Please note that it may slow down the "last calls" screen, depending on how big your list will be.

    So far mine works fine, with 3000 records.
    Remember that I take no responsibility if it blows up your phone
    Thanks Piranha! That's what I really need. But I'm afraid to use this unlimited database. Can you limit call history up to 500 or 1000?

  18. #16
    Green Apple
    Join Date
    Aug 2007
    Posts
    48
    Thanks
    1
    Thanked 11 Times in 7 Posts

    Sure.. Just change the trigger to:

    CREATE TRIGGER [deleteKeep]
    BEFORE DELETE ON [call]
    FOR EACH ROW WHEN (select count(*) from call)<1000
    BEGIN
    insert into call
    select null,address,date,duration,flags,id from call
    where call.ROWID=OLD.ROWID ;
    END

    Attached updated file.
    Attached Files Attached Files

  19. The Following 3 Users Say Thank You to piranha For This Useful Post:

    DC_Dave (06-03-2013), Hunter926 (04-11-2013), sserg007 (12-12-2007)

  20. #17
    Livin the iPhone Life Reako's Avatar
    Join Date
    Sep 2007
    Posts
    1,683
    Thanks
    31
    Thanked 182 Times in 126 Posts

    I barely use the caller, and I have no idea how to help change the Triggers for the SMS. I hope you figure it out.

    Reako

  21. #18
    What's Jailbreak?
    Join Date
    Dec 2007
    Posts
    2
    Thanks
    1
    Thanked 0 Times in 0 Posts

    Piranha, thanks a lot!!!

  22. #19
    Green Apple
    Join Date
    Nov 2007
    Posts
    64
    Thanks
    12
    Thanked 20 Times in 10 Posts

    Thanks a lot, will try this out.

    Cheers, Vikas.


    Quote Originally Posted by piranha View Post
    For those who want to test unlimited size of last call list, use attached file.
    After unzipping replace /var/root/Library/CallHistory/call_history.db with the new one.
    I recommend to keep a copy of the old one just to be safe.
    Please note it will erase all your current history.
    Reboot your iPhone to start the trigger.

    Please note that it may slow down the "last calls" screen, depending on how big your list will be.

    So far mine works fine, with 3000 records.
    Remember that I take no responsibility if it blows up your phone

  23. #20
    Owner / Founder - ModMyi
    aka poetic_folly
    Kyle Matthews's Avatar
    Join Date
    May 2007
    Location
    Tampa, Florida, United States
    Posts
    8,476
    Thanks
    569
    Thanked 4,800 Times in 1,224 Posts

    Good work, pirahna. Very useful tweak!
    .


    ↑ ↑ ↓ ↓ ← → ← → B A [select] [start] Kyle Matthews

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts