To detect phone activity you must either use SystemState or work directly with TAPI. The CallLog APIs don't support any notifications so you cannot tell when new items are added. SystemState is the easiest way to work with this.
Peter