Recent Calls List reports wrong Contact Name

Moderators: dwp, devin

Post Reply
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Recent Calls List reports wrong Contact Name

Post by AlCan »

Hi Camel,

Not sure if this is a bug, or just another bad feature of the Android contacts system.

I have a particular large customer who has a Manual-entry Extension PABX. I have 10 different contacts in the company. When I call someone in that organisation, I have to call in on the one same (Trunk) number, then wait until the Auto-Attendant says "If you know the Extension, dial it now." If you dial it too soon, you'll get the wrong person as they also seem to have unpublished Quick-dials set up... That's fine, I simply add a 'Wait' command to the Main Number, and press "Send" when prompted.

So, the contact number looks like (xxx)-345-6789;123. That works fine, I have no problem calling them at Extension 123 using DWC.

The problem is that afterwards, the DWC Recent Calls list in the Phone Tab shows the wrong contact name. I'm guess this is because it (Android???) stores the first part of the number called (the Subscriber Number) only, and ignores ("forgets") the Extension it also dialled. Is that correct?

Assuming that is right, and only the Main number is saved, DWC then doesn't know who it previously called, so it has to "look it up". However, it just seems to display the first matching number it finds, even though it isn't an exact match and doesn't belong to the person I called, and even though there is a better (exact) match in the database (i.e. I have a Contact with the [Company Name] that has the Main Number only, without a trailing ;xyz extension number, already listed for this reason). But it appears to disregard that, and just seems to offer the first number it can get a match for, seemingly by Group order. If I move the wrong contact to a different group, the 'random' wrong name it picks also changes...

However, it does seem to handle Incoming calls correctly, and even ignores Contact numbers that have a trailing ;Extn, which is actually very good. Well Done! That means, if I have the Main Company number listed under the Company Name, I get the Company Name shown as the caller. This is perfect!

In fact, if the only matching number in the Database HAS a trailing ;Extn, the Calling Number lookup ignores that too, and just displays the actual calling number without defaulting to the "nearest number's" Contact name (which is what I would want it to do, to save being misled, because it's possibly anyone in that company calling you.)

I guess it would be possible to work around this by carefully making sure of the order in which the Contacts are entered into the Contact Database, but that's a big hassle which may not even work as the Group also seems to affect the order.

Could you please fix this as it's rather confusing? Is it possible to just copy the Calling Number lookup code into the Recent Calls list lookup code, or is it not that simple?

I know, it never is... I'm guessing you can't show the name of the actual contact you recently called? Or is that another 100 hours work to fix a small problem?

Hoping you can suggest something though. Even if it only showed the contact with the exact number match (no trailing extension), that would be better. I'd be 'happy' (ok, happier!) with that for now, if it only takes a few minutes to copy the right code over?

Best regards,
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

hi,
the extension will be ignored/trim on finding which contact have called you.
and to find the recent call is very very complicated, and therefore is a limited andropid API, which can handle the number to fibnd out ..
because also you have several cases:
like:
int. number calling -> +49-139-1234567
or int. number calling -> 0049-139-1234567
or local: -> 0-139-1234567
very much bases ...
and often the user are calling a contact, but adding only manually "edit before dialing" a pause, so, we must to ignore this, otherwise it will not find anymore the numbers.
in your case, where you save the number + add the pause to the number directly and save it to contact, then dwc will not find it.
so, easiest way is: add to contact the number without the pause and 1 time more with the pause extension, then it will find it.
to remove to ignore the extension in number to find the recent contact, is not a good idea, then 500.000 user will kill us :)
cu camel
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

Hi Camel,

Thanks for your reply but I think you didn't fully understand my question.
camel wrote:the extension will be ignored/trim on finding which contact have called you.
The problem I am discussing is not about who called me. It's about who *I* just called. I would rather expect the phone to know what Contact I just phoned, but maybe it doesn't? If that is true, that would be rather disappointing! :(

I understand you can't expect the phone (or anyone else!) to be able to recognise a number that has been edited before dialling. That would have to be impossible. :x
But I don't understand why it can't find the number it just dialled from its own memory a few minutes ago. 8-)

For example, for the (fictitious) company XYZ Widgets, I had in my phone:

Richard (a Senior Manager): 09-789 1234;715
John (an Engineer); 09-789 1234;726
Peter O (Purchasing) 09-789-1234;2
Gabe (IT) 09-789 1234;751
Peter H (Fabrication) 09-789 1234 (ask Receptionist to page him)
Ross (Fabrication) 09-789 1234 (ask Receptionist to page him)
XYZ Widgets Co (Main Line) 09-789 1234

What happened was, the other day I rang Richard. No problem.

Later in the day, I went to my Recent Calls list (Phone Tab) and instead of saying I'd called Richard at XYZ Widgets, it said I had called Peter H, which I hadn't.

I was a bit confused by that, until I realised it was showing the wrong contact.

I got a bit interested in this, so I moved Peter H to a different group.

Then, it gave me the name Ross as the person I had called.

So I moved Ross, and it said I'd called John. That really confused me.

But it turns out that a vCard Export and Import had messed up all my Extensions (converted 09-789 1234;726 into "Phone 09-789 1234" and "Phone 726" and I hadn't corrected all of them -i.e. John's.)

So, as it turns out, things aren't exactly as I described them yesterday. I'm adding this just to clarify the situation for those who may be interested or have the same issue.

DWC currently does only match the outgoing Subscriber Number to plain Contact Subscriber numbers. Unfortunately, it ignores the Extension details, even though they were dialled, from memory, by the phone itself. The problem was I had four contacts all with (the same) plain Subscriber Number, so it just matched the first one it found, which isn't really what I want, but I have a simple workaround.

I have now added ;0 to the number for the guys who had no extension, so at least now, it says I called XYZ Widgets. It's not really correct because I actually called Richard at XYZ Widgets, but it's much better than telling me I called someone I didn't!

Yes, I understand that matching Incoming Call numbers to Contacts is very complicated, as you say:
camel wrote:because also you have several cases:
like:
int. number calling -> +49-139-1234567
or int. number calling -> 0049-139-1234567
or local: -> 0-139-1234567
very much bases ...
but is it much harder to match a Logged Outgoing call number and include the Extension as well?

Is it another Android deficiency? Could DWC do it for itself - i.e. If it dialled the call, can't it remember which number and extension it dialled?

camel wrote:in your case, where you save the number + add the pause to the number directly and save it to contact, then dwc will not find it.
Yes, that of course has to be true with INcoming calls, because the Telephone Exchange has no idea what Extension they are calling from so couldn't add it to the number even if there was a recognised format for this. All the Exchange can send is (Country code, maybe), Area code and Subscriber number, as you say, so that is what DWC matches. I am actually VERY VERY happy with the way it already does that! Please, don't change it!

What I am wanting (requesting, if possible) is that in the Recent (Outgoing) Calls list, DWC matches the extension of a directly DIALLED (i.e. exactly as in the Contact details) number, with the extension of the Contact in my Contacts database, and displays the correct contact name for the recent outgoing call. (I'm not asking for something that I know is impossible! :shock: ) The real question is, does Android remember that information about the number it just dialled? Or, could DWC remember it, itself? I mean, I'm not expecting DWC to know a number that was called by another Contact system - even the stock Android one - especially if Android doesn't even bother to remember...
camel wrote:so, easiest way is: add to contact the number without the pause and 1 time more with the pause extension, then it will find it.
Thanks, but... :( I tried that (added additional number without ; for Richard), it just doesn't seem to work. I still just get "XYZ Widgets" now, even though I called "Richard" at XYZ Widgets.
camel wrote:to remove to ignore the extension in number to find the recent contact, is not a good idea, then 500.000 user will kill us
I'm not quite sure what you mean? Isn't that what it's doing now? It does ignore the Extension number now. I mean, I want to call Richard back again, but his contact is not the one showing in the Recent calls list. If I press Dial from the displayed contact, it doesn't dial his number, it dials the one belonging to the displayed contact - in this case, the Main Company number, not Richard...

Okay. let me test one more thing... One sec. Oh, great. Phone just crashed again! :(

All right. Rebooted. I just changed the number for the XYZ Widgets contact by adding ;0 to the end, thus: 09-789 1234;0 . Now I have no Contacts left in my database with the number 09-789 1234. And now, the Recent Calls list shows no Contact, just the number 09-789 1234. Whether it remembers the Extension, I can't tell, but it's apparently not searching for it.

Is it possible for DWC to be able to remember the exact number dialled, including the extension, and display the correct contact name in the Recent OUTGOING Calls list?

Incoming Recent calls will have to show the Subscriber Number or the Contact for the Subscriber Number - as it does now. Very happy with that, don't change it, but can you do anything about Recent Outgoing calls?

Thanks again for all your great work! Please, keep it up!

As I've said before DWC is still THE BEST. It's the Bomb! By far!!!

Best regards,
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

hi yes this is normal:
For example, for the (fictitious) company XYZ Widgets, I had in my phone:

Richard (a Senior Manager): 09-789 1234;715
John (an Engineer); 09-789 1234;726
Peter O (Purchasing) 09-789-1234;2
Gabe (IT) 09-789 1234;751
Peter H (Fabrication) 09-789 1234 (ask Receptionist to page him)
Ross (Fabrication) 09-789 1234 (ask Receptionist to page him)
XYZ Widgets Co (Main Line) 09-789 1234

What happened was, the other day I rang Richard. No problem.

Later in the day, I went to my Recent Calls list (Phone Tab) and instead of saying I'd called Richard at XYZ Widgets, it said I had called Peter H, which I hadn't.

I was a bit confused by that, until I realised it was showing the wrong contact.
for DWC all numbers are identically, because the dailed number is for android OS -> 09-789 1234
(all behind the ; is trimmed
and so on call history it finds the first name which match in db
which will be the first - i can not tell you, this is related which one is saved at first ...

the only thing, what we can do is, to make a trigger(option in setting), that the ";" will not ignored. maybe then it is better for you.
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

Hi camel,

Yes, if you could add that to DWC, I would be very happy. :D :D

At the moment, I am just doing all this for my own use, but once I am happy with the way DWC is working, I will try to get my boss to buy it for everyone in the company. He is a bit of a tech lover, so it should be easy - so long as the product is stable, and works in a logical way (as it pretty well does!)

Many thanks for your interest in my ideas, requests and suggestions.

And, when I get some free time (not just yet), I will try to write up some sort of Instruction Manual for you.

Cheers,
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

AlCan wrote:Hi camel,

Yes, if you could add that to DWC, I would be very happy. :D :D

At the moment, I am just doing all this for my own use, but once I am happy with the way DWC is working, I will try to get my boss to buy it for everyone in the company. He is a bit of a tech lover, so it should be easy - so long as the product is stable, and works in a logical way (as it pretty well does!)

Many thanks for your interest in my ideas, requests and suggestions.

And, when I get some free time (not just yet), I will try to write up some sort of Instruction Manual for you.

Cheers,
Al
hi,
ok, i verified this:

if you call anyone with: 123456;111 ....
after call look to your stock contact viewer - and see in history, you will see that android system does only record to call log the number with out the 111 - so there will be onyl an itme without the 111.
this means, taht dwc can not recognize, because it load the data from android system call log.
so, there is no way - as long as android system does not support it - to save the full dialed number.
if it willb esaved, then it would be working fine - without making extra changes.

cu camel
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

Hi again camel,
camel wrote:this means, taht dwc can not recognize, because it load the data from android system call log.
That's too bad. Sorry to put you to so much forum time over this one thing, which Android doesn't even do... I wondered about that, right at the start.
AlCan wrote:Not sure if this is a bug, or just another bad feature of the Android contacts system.
:shock: :( :roll:

Anyway, I have another suggestion....
camel wrote:so, there is no way - as long as android system does not support it - to save the full dialed number.
But I guess there still is a way... You know what they say: "Where there's a will, there's a way!"?

It would mean that DWC would have to keep its OWN Outgoing Call log of the numbers it dialled. (I realise it would be too much work, if not impossible, to collect the data from other dialler apps, but as I never use anything but DWC, it's not a problem for me at least.)

I don't know if it is practicable for DWC to make its own Outgoing call log, because I don't know where DWC could store that log, but if it could, then I can see that it would be possible to use the two logs to generate the correct /actually called Contact data for the Recent Calls list.

I just have no idea how much work that would be.

But it would be quite useful to me, as discussed in this thread. In fact, yesterday, I found two more customers who are using this kind of PABX, where the caller can direct his own call without needing to talk to the Receptionist. This kind of thing is now very popular here in my country. They are even getting rid of Receptionists and installing Touch Screen computer systems. Now visitors to the Company have to type in their own details and who they are visiting, and it then prints out a Visitor Label (complete with a photo of themselves) that they have to wear while on the premises. It's all about saving money, because the economy is not growing, and you can buy a lot of Automation for the price of one person's Annual wages. But I digress.

If this is possible, could you please add it to your Customers' Wish List, for something to do when you're not busy! :lol:

Best regards,
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

P.S. I forgot to mention this in the previous post (above).

Since it may not be easy (or quick) to implement your own DWC Outgoing Calls log to achieve the correct Contact being listed when calling using suffixed ;extension dialling, I have thought of a way to at least alert the user to this problem when it occurs. My view is that it is much better to know that something is possibly incorrect than not to know.

It would (I think) be very easy to do.

:idea: Simply highlight any uncertain Outgoing call entries in the Recent Calls list in a different colour (say, pale red, or as themed). :idea:

Outgoing Call Entries will ALWAYS be Uncertain when there multiple contacts with the same Subscriber number, whether including suffixed ;extn data or not. For example, if you have two contacts with the same Subscriber number (say Richard on 09-789 1234;715 and John at 09-789 1234;726), you have a 50/50 chance of the Recent Call entry being right.

As we have now clearly established, the Outgoing Call number in the Android calls log is always stripped of any suffixed ;extn data. Thus, it could be that you called any of the contacts that have the same Subscriber number. I try to improve this situation by adding a Company Name contact. I.e. a Contact that has the Company Name as its First Name (or, for some, First & Last), that just has the plain Company Subscriber number(s), making sure that all other contacts using that (those) Subscriber number(s) have a ;extn suffix. That way, they are all excluded when you receive a call from that (those) number(s), and you get the more helpful Company Name showing as the caller (since you can't tell who in the Company it really is), and in the Recent Calls list.

I realise this will require a different kind of database query - is one available to tell you if a number (without considering any ;extn data) is used more than once? I.e. count result >1.

If so, then Highlight the Contact in the Recent (Outgoing) Calls list in whatever different colour is chosen.

I'm hoping this will be quite easy to do, so can I request it in a near future update, please?

Cheers!
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

P.P.S. Oops, forgot to also mention...

If you ever do decide to create a DWC Outgoing calls log, you would still be able to use the Highlight system to identify those possibly uncertain (outgoing) call contacts that were made using a different dialler than DWC - since those calls will appear in the Android log but not the DWC one. And if you can't tell which contact they belong to, again Highlight as uncertain.
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

sorry, this is the wrong way ...
DWC deal with the call log of andropid system. also the number API for formating the dailed number is related on android AOSP API.
so, if anyone wants to help, then please go to google and repoort it as bug....
but it makes no sense to fight agaisnt the structure of android,a nd cooking a own soup ... also the performance will be going bad, worst ... and our first priority/politic is:
1.) speed and customizable

sorry, but i can't fix the biugs from others, and it makes not sense to make a own db.

cu camel
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

Hello again camel,
camel wrote:so, if anyone wants to help, then please go to google and repoort it as bug....
I'd be willing to try that, though the chances of getting such a fix into a budget, Carrier Customized, Android 2.2 phone...? I think I'm more likely to see Piglet fly past my window! But, if you think it's worth a try, do you know where is the best place to log it?
camel wrote:but it makes no sense to fight agaisnt the structure of android,a nd cooking a own soup ...
Fair Enough!

Would you consider adding JUST the different-coloured background enhancement for 'Uncertain' Recent Call entries - where there are multiple choices available in the contact db? In reality, that can occur without it being anything to do with the limitations of Android. It can be caused simply by the User having two or more contacts with the same phone number, and unless Android starts using something other than the phone number to log calls, this will always be a potential problem.

Otherwise, I think it is likely to be seen as a "Defect", when people notice that it is listing incorrect Contacts in the recent calls list (exactly as I did). I thought something was wrong. I took the trouble to figure it out, while others may not be so patient. Bearing in mind that you are targeting business and professional users, who, unlike most kids, are quite likely to have multiple contacts from the same Organisation included in their Contacts db. I'm sure they (also like me?), won't appreciate the wrong information being presented. I know this feature would be seen in a poor light by my boss.
camel wrote:also the performance will be going bad, worst ...
Yeah, I can see that aspect! But... if it was a User selectable option, then it would be the User's decision to choose function over performance. In this case, wouldn't the performance decrease happen ONLY when viewing the Recent Calls list? As it is now, when scrolling the list, there is always some delay between the Contact Name and the other data being shown, so I guess that would increase a little with that option enabled?
camel wrote:and our first priority/politic is:
1.) speed and customizable
If it was turned off, it wouldn't affect speed to any measurable amount?

And, if it's an option, it would make DWC more customizable?
camel wrote:sorry, but i can't fix the biugs from others, and it makes not sense to make a own db.
Yes, I would have to agree. Too bad. But it's really too much work for such a minor problem.
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

yes, i understand your problem, with "extension calls" (12345;6789,123), but as i told we are only using the android API for recognizing/match the user in relation to a call log item.
so, if the android API will be extended with an option "ignore/not ignore" extension then it will be easy.
but for now - as long as android doesn't support it - as long there is no solution which would make sense...

of course - if hundreds of user would like to have it - then google will faster change this logic.
but as i said, it is android issue or behavir... (because if you make a call with any other app or whatever, the application will onyl send the number + extension to the internal system dialer API, and this can't be changed, and this is almost on every manufacturer different.
so, it make no sense to write a started call from DWC to an extra db, because the internal dialer system API makes the call on RIL (radio internface layer, and this store it to db - not dwc - and dwc can't handle this.
also if you start a call from SMS app, or from a web page, or from a calender app, or whatever ... then the calls will be not in dwc db, becausse only the system dialer API will generate the call log entry, also dwc can not know if it is connected, blocked, not answering, etc ..or whatever,
so, it makes no sense ...

it is like: if you are having an app on windows, which is not working on OS win7, and then you must modify this app, because it is not working anymore, because you installed on synstem a driver, which does always create a BLUE screen, then you can not change 500 apps, that all of them can handle a system issue, then the real BLUE screen issue in on driver base, and then you have to change it there, and not on all 500 installed apps.
this war you would never win ;-)

and the same is here ...this must be fixed on the base (android system)

cu camel
PatrickB
Posts: 22
Joined: Mon Aug 01, 2011 6:04 pm

Re: Recent Calls List reports wrong Contact Name

Post by PatrickB »

AlCan, you are not the only one with this concern. I read the entire thread and see that Camel cannot address this Google Android issue. The way I have handled it, and after reading your thread, will continue to handle it is the same as you.

1) Create a Company Contact with all of the phone numbers that are shared by the employees of that company
2) Create Individual Contacts for each of the employees and change the company phone number by adding anything to the end. In my case, I just add a Pause (,) at the end.

I sometimes use extensions in Individual Contact entries, but the issue you described occurs without extensions since the number is trimmed of trailing Pauses, Waits, Extensions, and apparently, semicolons. So, for example:

Company One: 333-555-1212
Johan Smith: 333-555-1212,
Maureen Smith: 333-555-1212,

Company Two: 333-555-3434
Tom Jones: 333-555-3434,,,,234
Connie Bahe: 333-555-3434,,,,237

-- In Recently Called List
If either Johan or Maureen should be in your Recently Called list, they will show up as Company One.
If either Tom or Connie should be in your Recently Called list, they will show up as Company Two.

-- In Contacts List
If you lookup Company One, and call, then 333-555-1212 will be called. For Johan or Maureen, that number will also be called and the phone will pause for 1 second due to the trailing comma. A small price to pay I think.

If you lookup company Two, and call, then 333-555-3434 will be called. However, for Tom, 333-555-3434 will be called, followed by 4 seconds of pausing, then Tom's extension will be sent. That gives the phone system time to connect to the 333-555-3434 main number, and to wait until the phone is probably answered by the automated attendant, so that when the extension is sent 4 seconds later, the company's phone system is waiting for it and sends you on to Tom's extension. Connie's would work the same way.

If you need to search for existing Android issues or submit a new one: http://code.google.com/p/android/issues/list

-- Patrick B.
AlCan
Posts: 150
Joined: Thu Feb 23, 2012 10:00 pm
Location: New Zealand

Re: Recent Calls List reports wrong Contact Name

Post by AlCan »

Hi Patrick,

Yes, exactly, and very succinctly put. And thanks for the Android link. Will follow up when I have more time.

Cheers,
Al
Currently (i.e Now, not necessarily the date of this post)
using DW Contacts & Dialer version 2.5.3.0-pro
On Motorola Defy with Android 2.2.2 (Work Phone)
camel
Posts: 668
Joined: Sat Jun 04, 2011 8:38 pm

Re: Recent Calls List reports wrong Contact Name

Post by camel »

is it now working for you in latest version ?
the problem is, if you stored a number as:
12345678,123 (dial 12345678 .. pause then 123) and if you dial this contact, then it will store in your call log only the number as: 12345678.
this is android system related.
Post Reply