Add call log programmatic


i'm trying to add new call log programmatic, I managed to add a new call log entry but the entry is shown as UNKNOWN instead of the contact name which exists in the phone.
Here is a code sample i'm using:
//Prepare the entry
ContentValues values = new ContentValues();
values.put(Calls.NUMBER, dialedNumber.trim());
values.put(Calls.TYPE, Calls.OUTGOING_TYPE);
values.put(Calls.DATE, System.currentTimeMillis());
values.put(Calls.CACHED_NAME, "dsd");
values.put(Calls.CACHED_NUMBER_LABEL, "dsd");
values.put(Calls.CACHED_NUMBER_TYPE, Phones.TYPE_MOBILE);
values.put(Calls.NEW, 0);
values.put(Calls.DURATION, 1000);
//Insert into the call log
context.getContentResolver().insert(Calls.CONTENT_URI, values);

does anyone have an idea what i'm doing wrong?