diff options
author | Damian Minkov <damencho@jitsi.org> | 2013-12-04 17:37:09 +0200 |
---|---|---|
committer | Damian Minkov <damencho@jitsi.org> | 2013-12-04 17:37:09 +0200 |
commit | 264068706f2a7afe9a47b7604a3968bf5dc5101a (patch) | |
tree | c2a52c183a15cc9e544db867ba0fa15df8e73eef /src/net/java/sip | |
parent | 1c173976e3c81bf32734a0cf380409b6a19a4232 (diff) | |
download | jitsi-264068706f2a7afe9a47b7604a3968bf5dc5101a.zip jitsi-264068706f2a7afe9a47b7604a3968bf5dc5101a.tar.gz jitsi-264068706f2a7afe9a47b7604a3968bf5dc5101a.tar.bz2 |
Uses only mobile phone details for sending sms.
Diffstat (limited to 'src/net/java/sip')
3 files changed, 42 insertions, 2 deletions
diff --git a/src/net/java/sip/communicator/impl/gui/main/call/UIPhoneUtil.java b/src/net/java/sip/communicator/impl/gui/main/call/UIPhoneUtil.java index 17dd341..636bb35 100644 --- a/src/net/java/sip/communicator/impl/gui/main/call/UIPhoneUtil.java +++ b/src/net/java/sip/communicator/impl/gui/main/call/UIPhoneUtil.java @@ -53,8 +53,28 @@ public class UIPhoneUtil * * @return additional phone numbers found in contact information; */ + public List<UIContactDetail> getAdditionalMobileNumbers() + { + return getAdditionalNumbers(true); + } + + /** + * Searches for additional phone numbers found in contact information + * + * @return additional phone numbers found in contact information; + */ public List<UIContactDetail> getAdditionalNumbers() { + return getAdditionalNumbers(false); + } + + /** + * Searches for additional phone numbers found in contact information + * + * @return additional phone numbers found in contact information; + */ + private List<UIContactDetail> getAdditionalNumbers(boolean onlyMobile) + { List<UIContactDetail> telephonyContacts = new ArrayList<UIContactDetail>(); @@ -76,10 +96,23 @@ public class UIPhoneUtil while(details.hasNext()) { GenericDetail d = details.next(); - if(d instanceof PhoneNumberDetail && + + boolean process = false; + + if(onlyMobile) + { + if(d instanceof MobilePhoneDetail) + process = true; + } + else if(d instanceof PhoneNumberDetail && !(d instanceof PagerDetail) && !(d instanceof FaxDetail)) { + process = true; + } + + if(process) + { PhoneNumberDetail pnd = (PhoneNumberDetail)d; if(pnd.getNumber() != null && pnd.getNumber().length() > 0) diff --git a/src/net/java/sip/communicator/impl/gui/main/chat/ChatPanel.java b/src/net/java/sip/communicator/impl/gui/main/chat/ChatPanel.java index cb652dc..4853797 100644 --- a/src/net/java/sip/communicator/impl/gui/main/chat/ChatPanel.java +++ b/src/net/java/sip/communicator/impl/gui/main/chat/ChatPanel.java @@ -1675,7 +1675,7 @@ public class ChatPanel UIPhoneUtil.getPhoneUtil((MetaContact) desc); List<UIContactDetail> uiContactDetailList = - contactPhoneUtil.getAdditionalNumbers(); + contactPhoneUtil.getAdditionalMobileNumbers(); if(uiContactDetailList.size() != 0) { diff --git a/src/net/java/sip/communicator/impl/protocol/jabber/InfoRetreiver.java b/src/net/java/sip/communicator/impl/protocol/jabber/InfoRetreiver.java index 78402ad..47a0e46 100644 --- a/src/net/java/sip/communicator/impl/protocol/jabber/InfoRetreiver.java +++ b/src/net/java/sip/communicator/impl/protocol/jabber/InfoRetreiver.java @@ -241,6 +241,10 @@ public class InfoRetreiver if(tmp != null) result.add(new MobilePhoneDetail(tmp)); + tmp = card.getPhoneHome("TEXT"); + if(tmp != null) + result.add(new MobilePhoneDetail(tmp)); + tmp = card.getEmailHome(); if(tmp != null) result.add(new EmailAddressDetail(tmp)); @@ -292,6 +296,9 @@ public class InfoRetreiver if(tmp != null) result.add(new WorkMobilePhoneDetail(tmp)); + tmp = card.getPhoneWork("TEXT"); + if(tmp != null) + result.add(new WorkMobilePhoneDetail(tmp)); tmp = card.getEmailWork(); if(tmp != null) |