DE112012000134B4 - Verfahren zur Bereitstellung von Zieladressvorschlägen - Google Patents

Verfahren zur Bereitstellung von Zieladressvorschlägen Download PDF

Info

Publication number
DE112012000134B4
DE112012000134B4 DE112012000134.6T DE112012000134T DE112012000134B4 DE 112012000134 B4 DE112012000134 B4 DE 112012000134B4 DE 112012000134 T DE112012000134 T DE 112012000134T DE 112012000134 B4 DE112012000134 B4 DE 112012000134B4
Authority
DE
Germany
Prior art keywords
communication
communications
addresses
counts
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112012000134.6T
Other languages
English (en)
Other versions
DE112012000134T5 (de
Inventor
Colin Gibbs
Daniel Lehmann
Gabriel Cohen
Daisuke Miyakawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE112012000134T5 publication Critical patent/DE112012000134T5/de
Application granted granted Critical
Publication of DE112012000134B4 publication Critical patent/DE112012000134B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27453Directories allowing storage of additional subscriber data, e.g. metadata
    • H04M1/2746Sorting, e.g. according to history or frequency of use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

Verfahren, umfassend: Bestimmen einer ersten Vielzahl von Zählwerten für Kommunikationsvorgänge eines ersten Kommunikationstyps, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des ersten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Bestimmen einer zweiten Vielzahl von Zählwerten für Kommunikationsvorgänge eines zweiten Kommunikationstyps, wobei jeder Zählwert in der zweiten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des zweiten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Erfassen einer Anfrage für eine Vielzahl von Zieladressvorschlägen, wobei die Anfrage von einem ersten Anwendungsprogramm empfangen und einem ersten neuen Kommunikationsvorgang zugeordnet wird, wobei der neue Kommunikationsvorgang den ersten Kommunikationstyp umfasst und eine zugeordnete Source-Person aufweist, wobei einem Benutzer ermöglicht wird, selektiv unter verschiedenen Source-Personen zu arbeiten, die jeweils eine entsprechende Source-Adresse aufweisen, und von denen Kommunikationsvorgänge verortbar sind; Sortieren zumindest der Vielzahl von Kommunikationsadressen auf der Grundlage von zumindest teilweise (i) der ersten Vielzahl von Zählwerten und (ii) der Source-Person, um eine Liste zu erstellen, die die Vielzahl von Kommunikationsadressen, die entsprechend einer Rangordnung geordnet sind, die zumindest teilweise auf der ersten Vielzahl von Zählwerten und ferner zumindest teilweise auf der Source-Person beruht, umfasst, wobei zumindest ein Zählwert aus der ersten Vielzahl von Zählwerten zumindest teilweise auf einem oder mehreren Kommunikationsvorgängen beruht, die von zumindest einem zweiten Anwendungsprogramm, das sich von dem ersten Anwendungsprogramm unterscheidet, verortet werden; ...

Description

  • Hintergrund
  • Hierin offenbart ist ein Verfahren zum Bereitstellen von Zieladressvorschlägen auf einer Kommunikationsvorrichtung, um einen Benutzer bei der Auswahl einer Adresse zur Verwendung für einen neuen Kommunikationsvorgang zu unterstützen.
  • Moderne Kommunikationsvorrichtungen verwenden im Allgemeinen einen Mechanismus, durch den ein Benutzer eine Zieladresse, wie beispielsweise eine Telefonnummer, eine E-Mail-Adresse oder dergleichen zur Verwendung für einen neuen Kommunikationsvorgang bestimmen oder auswählen kann. Insbesondere kann eine Kommunikationsvorrichtung eine Benutzeroberfläche, über die ein Benutzer ausdrücklich eine gewünschte Adresse eingeben und/oder eine gewünschte Adresse aus einer von der Vorrichtung angebotenen Adressliste auswählen kann, umfassen. Zum Beispiel kann die Vorrichtung eine Anzeige umfassen, die eine grafische Benutzeroberfläche (GUI) darstellt, die ein Textfeld definiert, in dem ein Benutzer eine Zieladresse eingeben kann. Während der Benutzer beginnt, die Adresse einzugeben, kann die Vorrichtung nach einer vorbestimmten Anzahl eingegebener Zeichen automatisch innerhalb der GUI eine Adressliste anzeigen, die dem bis dahin eingegebenen Text entspricht. Der Benutzer kann dann eine Adresse aus den angezeigten auswählen. Als weiteres Beispiel kann die Vorrichtung ein Adressbuch oder ein Kommunikationsprotokoll, das verschiedene Adressen auflistet, anzeigen, und der Benutzer kann durch diese Liste blättern und eine gewünschte Adresse auswählen, um damit einen Kommunikationsvorgang zu initiieren.
  • Ein Verfahren zum Erzeugen einer geordneten Adressliste ist aus der EP 2023582 A1 bekannt, wobei die Reihenfolge aus der Häufiggkeit vergangener Adressaufrufe ermittelt wird.
  • Die US 2009/0300546 A1 offenbart ein Verfahren zum Vorschlagen einer Verteilerliste ebenfalls auf der Grundlage vorheriger Aufrufe der entsprechenden Kommunikationsadressen.
  • Die US 2011/0083079 A1 betrifft ein Verfahren zum vorausschauenden Einsetzen von Text auf Grundlage einer Identifizierung des Textadressaten.
  • Die GB 2471329 A beschreibt ein Verfahren zur Erstellung einer dynamischen geordneten Kontaktliste in Abhängigkeit ihrer Relevanz zu einem gegebenen Zeitpunkt.
  • Die US 2010/0299397 A1 betrifft die Verwaltung von elektronischen Adressen auf der Grundlage von Kommunikationsmustern.
  • Die Erfindung hat die Aufgabe, ein verbessertes Verfahren zur Bereitstellung einer Liste mit Zieladressvorschlägen zu liefern, das berücksichtigt, dass ein Benutzer in mehreren unterschiedlichen Identitäten und in unterschiedlichen Kommunikationspfaden oder Applikationen auftreten kann.
  • Zusammenfassung
  • Erfindungsgemäß wird ein Verfahren mit den Merkmalen nach Anspruch 1, ein Verfahren mit den Merkmalen nach Anspruch 10, sowie nicht-transitorische, computerlesbare Speichermedien mit darauf gespeicherten, von einem Prozessor ausführbaren Programmbefehlen der entsprechenden Verfahren gemäß den Ansprüchen 15 und 16 bereitgestellt.
  • Unter Verwendung dieser Funktionen kann das erste Anwendungsprogramm die erste Liste für eine Ausgabe auf einer Anzeige senden. Ein Benutzer kann dann bequem eine der dargestellten Zieladressen zur Verwendung für den ersten neuen Kommunikationsvorgang auswählen.
  • Vorteilhafte Ausführungsformen sind in den abhängigen Ansprüchen dargestellt.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt ein vereinfachtes Blockdiagramm einer Kommunikationsvorrichtung, die innerhalb des vorliegenden Verfahrens bedienbar ist.
  • 2 zeigt ein detailliertes Diagramm eines repräsentativen nicht-transitorischen Datenspeichersystems
  • 3 zeigt eine Darstellung von beispielhaften Nutzungsanzahldaten für unterschiedliche Kommunikationsklassifizierungen.
  • 4 zeigt ein Flussdiagramm, das Funktionen darstellt, die anhand des vorliegenden Verfahrens durchführbar sind.
  • 5 zeigt ein weiteres Flussdiagramm, das Funktionen darstellt, die anhand des vorliegenden Verfahrens durchführbar sind.
  • 6 zeigt ein weiteres Flussdiagramm, das Funktionen darstellt, die anhand des vorliegenden Verfahrens durchführbar sind.
  • 7 zeigt ein noch weiteres Flussdiagramm, das Funktionen darstellt, die anhand des vorliegenden Verfahrens durchführbar sind.
  • 8 (Teile A und B) zeigt eine Darstellung einer grafischen Benutzeroberfläche, die anhand des vorliegenden Verfahrens darstellbar sind.
  • Detaillierte Beschreibung
  • In der nachfolgenden detaillierten Beschreibung wird auf die begleitenden Zeichnungen Bezug genommen, die einen Teil hiervon bilden. In den Zeichnungen kennzeichnen ähnliche Symbole im Allgemeinen ähnliche Komponenten, sofern der Kontext nicht etwas anderes vorschreibt. Die darstellenden Ausführungsformen, die in der detaillierten Beschreibung, den Zeichnungen und den Ansprüchen beschrieben sind, sind als nicht einschränkend zu verstehen.
  • 1. Überblick
  • Eine beispielhafte Implementierung des vorliegenden Verfahrens beinhaltet für jede Adresse aus einer Vielzahl von Adressen, das Erstellen mehrerer separater Zählwerte von Kommunikationsvorgängen, die an die Adresse verortet werden, wobei jede Zählung einem entsprechenden Kommunikationstyp oder einer Klasse von Kommunikationsanwendungen entspricht. Wenn ein neuer Kommunikationsvorgang eines bestimmten Typs oder durch eine bestimmte Anwendungsklasse erstellt wird, umfasst das Verfahren wiederum das Bereitstellen einer Liste mit Adressen, die auf der Grundlage von Zählwerten von Kommunikationsvorgängen für diesen bestimmten Kommunikationstyp oder Anwendungsklasse nach Rang geordnet sind. Als Ergebnis kann ein gegebener Adresssatz dem Benutzer entsprechend einer Rangordnung angezeigt werden, wenn der fragliche Kommunikationsvorgang einem bestimmten Typ entspricht oder durch eine Anwendung einer bestimmten Klasse erstellt wurde, jedoch kann der gleiche Adresssatz dem Benutzer entsprechend einer ganz anderen Rangordnung angezeigt werden, wenn der Kommunikationsvorgang einem anderen Typ entspricht oder durch eine Anwendung einer anderen Klasse erstellt wurde. Darüber hinaus können ein oder mehrere Zählwerte, die als Grundlage für das Erstellen einer Rangordnung eines bestimmten Kommunikationstyps oder Anwendungsklasse verwendet werden, selbst auf der gemeinsamen Verwendung der Adresse durch mehrere Kommunikationsanwendungen beruhen.
  • Vorteilhafterweise kann dieses Verfahren dazu beitragen, eine Situation zu unterstützen, in der bestimmte Adressen für mehrere unterschiedliche Kommunikationstypen und/oder durch mehrere unterschiedliche Anwendungsklassen verwendet werden und in der sich die relative Häufigkeit der Nutzung der Adressen durch einen Benutzer auf der Grundlage des Kommunikationstyps oder der Anwendungsklasse unterscheidet.
  • Ein gutes Beispiel hierfür ist eine herkömmliche Telefonnummer, wie beispielsweise eine, die dem nordamerikanischen Rufnummernplan entspricht, die eine Vorwahl, eine Amtskennziffer und eine Teilnehmernummer enthalten kann. Während solche Zahlen im Allgemeinen als Zieladressen für Telefonanrufe verwendet werden, können in vielen Fällen die gleichen Nummern auch als Zieladressen für Textnachrichten und dergleichen verwendet werden. Für einen gegebenen Satz derartiger Nummern kann ein Benutzer bestimmte Nummern eher für Telefonanrufe und andere Nummern eher für Textnachrichten verwenden. Angenommen die gegebene Telefonnummer lauten A und B, so kann der Benutzer Telefonanrufe öfter an die Nummer A als an die Nummer B tätigen, aber der Benutzer kann Textnachrichten öfter an die Nummer B als an die Nummer A senden.
  • Beim Anzeigen der Nummern A und B als Zieladressvorschläge für einen neuen Kommunikationsvorgang kann das vorliegende Verfahren diesen Fall berücksichtigen, indem bestimmt wird, welcher Kommunikationstyp initiiert wurde, und dann können die Nummern auf der Grundlage des bestimmten Typs nach Rang geordnet angezeigt werden. Wenn beispielsweise der Kommunikationsvorgang ein Telefonanruf ist, kann dann das Verfahren darin bestehen, die Nummern in der Reihenfolge A-B bereitzustellen, so dass die Nummer, die für gewöhnlich öfter für Telefonanrufe verwendet wird, als erstes aufgelistet wird (und damit vielleicht eher für den neuen Telefonanruf ausgewählt wird). Wenn hingegen der Kommunikationsvorgang eine Textmitteilung ist, dann kann das Verfahren darin bestehen, die Nummern in der Reihenfolge B-A bereitzustellen, so dass die Nummer, die häufiger für Textmitteilungen verwendet wird, als erstes aufgelistet wird (und damit vielleicht eher für eine neue Textmitteilung ausgewählt wird).
  • Zur Unterstützung dieser unterschiedlichen Rangordnungsmöglichkeit von Zieladressvorschlägen kann das Verfahren für jede Adresse das Bestimmen mehrerer Zählwerte von Adressnutzungen umfassen, wobei jeder Zählwert einer entsprechenden Klassifizierung, wie beispielsweise einem bestimmten Kommunikationstyp oder einer bestimmten Kommunikationsanwendungsklasse, entspricht.
  • In dem obigen Beispiel können beispielsweise Telefonanrufe den Kommunikationstyp ”Anrufe”, ”Echtzeitverbindungen”, oder einfach ”Telefonanrufe” umfassen, und Textmitteilungen können den Kommunikationstyp ”Mitteilungen”, ”Nichtechtzeit-Kommunikationsvorgänge” oder einfach ”Textmitteilungen” umfassen. Ebenso können Telefonanrufe unter Verwendung von Anwendungen verortet werden, die eine Klasse, wie beispielsweise ”Anrufsanwendungen”, ”Echtzeitanrufsanwendungen”, oder einfach ”Telefonanwendungen” umfasst, und Textnachrichten können unter Verwendung von Anwendungen verortet werden, die eine Klasse, wie beispielsweise ”Mitteilungsanwendungen”, ”Nichtechtzeit-Kommunikationsanwendungen”, oder einfach ”Textmitteilungsanwendungen” umfasst.
  • Das Verfahren kann durchgeführt werden, indem jeweils für jede Telefonnummer (beispielsweise A und B) ein erster Zählwert einer ersten Klassifizierung und ein zweiter Zählwert einer anderen Klassifizierung bestimmt wird. Beispielsweise umfasst das Verfahren für jeweils jede Telefonnummer das Bestimmen eines ersten Zählwerts von Telefonanrufen, der an die Nummer verortet wird, und eines zweiten Zählwerts von Textmitteilungen, der an die Nummer verortet wird (an die Nummer gesendet werden). Und als ein weiteres Beispiel umfasst das Verfahren für jeweils jede Telefonnummer das Bestimmen eines ersten Zählwerts von Kommunikationsvorgängen, der an die Nummer unter Verwendung von Anrufanwendungen verortet wird, und eines zweiten Zählwerts von Kommunikationsvorgängen, der an die Nummer unter Verwendung von Mitteilungenanwendungen verortet wird.
  • Wenn der neue Kommunikationsvorgang eines bestimmten Typs oder durch eine Anwendung einer bestimmten Klasse erstellt wird, umfasst das Verfahren dann das Bestimmen der Klassifizierung und das Bereitstellen einer Liste, die die Telefonnummern nach entsprechendem Rang geordnet umfasst, so dass je nach Klassifizierung eine unterschiedliche Rangordnung erstellt wird. Wenn beispielsweise ein Telefonanruf getätigt wird, umfasst das Verfahren, Bereitstellen der nach Rang geordneten Nummern auf der Grundlage des ersten Zählwerts (beispielsweise in der Reihenfolge der Häufigkeit der Verwendung für Telefongespräche oder von Anrufaanwendungen). Wenn hingegen eine Textmitteilung verfasst wird, umfasst das Verfahren dann das Bereitstellen der gleichen nach Rang geordneten Nummern auf der Grundlage des zweiten Zählwerts (beispielsweise in der Reihenfolge der Häufigkeit der Verwendung für Textmitteilungen oder von Mitteilungsanwendungen).
  • Ein weiteres gutes Beispiel für einen Adresstyp, der das vorliegende Verfahren optimal nutzen kann, betrifft E-Mail-Adressen, da E-Mail-Adressen in ähnlicher Weise wie Zieladressen für mehrere unterschiedliche Kommunikationstypen und/oder durch mehrere unterschiedliche Anwendungsklassen genutzt werden können. Während E-Mail-Adressen beispielsweise für gewöhnlich als Zieladressen für E-Mail-Nachrichten, die mit dem einfachen E-Mail-Transportprotokoll (Simplified Mail Transfer Protocol – SMTP) kompatibel sind, oder für Kommunikationsvorgänge durch ”E-Mail”-Anwendungen verwendet werden, können in vielen Fällen die gleichen E-Mail-Adressen auch als Zieladressen für Textmitteilungen und dergleichen oder von ”SMS”-Anwendungen verwendet werden. In ähnlicher Weise kann sich für einen Benutzer ferner die Verwendungshäufigkeit einer Gruppe von E-Mail-Adressen für E-Mail-Nachrichten von jener für Textnachrichten relativ unterscheiden.
  • In diesem Fall umfasst das vorliegende Verfahren dann in ähnlicher Weise für jede E-Mail-Adresse das Bestimmen mehrerer Zählwerte einer Verwendung, wie beispielsweise einen Zählwert für die Verwendung für E-Mail-Nachrichten und einen Zählwert für die Verwendung für Textmitteilungen, oder einen Zählwert für eine Verwendung für Nachrichten durch E-Mail-Anwendungen und einen weiteren Zählwert für eine Verwendung für Mitteilungen durch Textanwendungen. Wird ein neuer Kommunikationsvorgang aufgebaut, stellt das Verfahren, wenn der Kommunikationsvorgang eine E-Mail-Nachricht ist oder mit einer E-Mail-Anwendung erzeugt wird, die Adresse nach Rang geordnet auf der Grundlage der Nutzungsanzahl für E-Mail-Nachrichten bereit. Wenn hingegen der Kommunikationsvorgang eine Textmitteilung umfasst oder mit einer Textanwendung erzeugt wird, kann das Verfahren die Adresse nach Rang geordnet auf der Grundlage der Nutzungsanzahl für Textmitteilungen bereitstellen.
  • Es sollte verstanden werden, dass die hierin beschriebenen Typen von Kommunikationsadressen, Typen von Kommunikationsvorgängen und Klassen der Kommunikationsanwendungen lediglich als Beispiele dienen, und dass das Verfahren ebenso gut zur Benutzung mit zahlreichen weiteren Typen und Klassen erweiterbar ist.
  • Ohne Beschränkung der Allgemeinheit umfassen unter anderem beispielsweise weitere Beispiele von Kommunikationstypen Sprachkommunikation, Videokommunikation, Bildkommunikation, Textkommunikation, leitungsvermittelte Kommunikation, paketvermittelte Kommunikation, Festnetzkommunikation, drahtlose Kommunikation, Kommunikation unter Verwendung eines bestimmten Anwendungsschichtprotokolls, Kommunikation unter Verwendung eines bestimmten Transportports, Kommunikation unter Verwendung eines bestimmten Verbindungssicherungsschichtprotokolls, Kommunikation unter Verwendung eines bestimmten Bitübertragungsschichtprotokolls oder -oberfläche, Kommunikation unter Verwendung bestimmter Geräte- oder Anwendungseinstellungen, soziale Netzwerkkommunikation, Kurznachrichtendienst-(SMS)-Kommunikation, Multimedianachrichtendienst-(MMS)-Kommunikation, Unicastkommunikation, Broadcast- oder Gruppenzielkommunikation (wie beispielsweise Kommunikation zu einer Buddygruppe oder -kreis).
  • Ebenso umfassen, ebenfalls ohne Beschränkung der Allgemeinheit, andere Beispiele von Anwendungsklassen unter anderem leitungsvermittelte Kommunikationsanwendungen, paketvermittelte Kommunikationsanwendungen (beispielsweise Internettelefonie (VoIP)), Audio-Chat-Anwendungen, Videokonferenzanwendungen, soziale Netzwerkkommunikationsanwendungen, und Streaming-Media-Player-Anwendungen.
  • Ferner kann das vorliegende Verfahren zur Festlegung der Rangordnung der Kommunikationsadressen für die Darstellung als Zieladressvorschläge, über die für den fraglichen Kommunikationstyp oder die fragliche Kommunikationsklasse spezifische Nutzungsanzahl hinausgehend, vorteilhafterweise weitere Faktoren in Betracht ziehen. Alternativ können diese zusätzlichen Faktoren den Kommunikationstyp oder die Anwendungsklasse definieren oder eine Eigenschaft davon sein und somit in der Rangordnung, die auf den Typ des Kommunikationstyps oder der Anwendungsklasse beruht, berücksichtigt werden.
  • Das Verfahren berücksichtigt, welche der möglicherweise mehreren Source-Personen (source persona) für die vergangenen Kommunikationsvorgänge und für den neuen Kommunikationsvorgang verwendet werden, und gibt den Zieladressen mehr oder weniger Gewicht (beispielsweise durch Zuweisung einer höheren Rangordnung oder einer niedrigeren Rangordnung), je nachdem, wie häufig oder weniger häufig die Adressen für Kommunikationsvorgänge der gleichen Source-Person verwendet wurden, die für den neuen Kommunikationsvorgang verwendet wird.
  • Dabei ermöglicht eine bestimmte Kommunikationsvorrichtung und/oder möglicherweise eine oder mehrere Anwendungen, die auf der Vorrichtung ausgeführt werden, es einem Benutzer, selektiv unter verschiedenen Source-Personen zu arbeiten, von denen Kommunikationsvorgänge verortbar wären. Jede Source-Person kann durch eine entsprechende Profileinstellung auf der Vorrichtung definiert werden und eine entsprechende Source-Adresse aufweisen, von der ausgehend die Vorrichtung Kommunikationsvorgänge verorten würde. Beispielsweise kann ein Benutzer eine geschäftliche Source-Person aufweisen, die eine geschäftliche E-Mail-Adresse, von der Nachrichten gesendet werden, definiert, und der Benutzer kann eine persönliche Source-Person aufweisen, die eine persönliche E-Mail-Adresse, von der Nachrichten gesendet werden, definiert. Die Vorrichtung kann über eine Einstellmöglichkeit verfügen, über die der Benutzer das Gerät einstellen kann, das eine Profil oder das andere zu verwenden. Alternativ oder zusätzlich dazu kann der Benutzer durch eine individuelle Kommunikationsanwendung eine Source-Person auswählen, die für einen neuen Kommunikationsvorgang durch beispielsweise Auswählen einer ”Von”-Adresse aus einer Liste verfügbarer ”Von”-Adressen, verwendet werden kann.
  • Wenn ein neuer Kommunikationsvorgang eines bestimmten Typs von einer Anwendung einer bestimmten Klasse erzeugt wird und mit einer bestimmten Source-Person verortet wird, kann das vorliegende Verfahren eine Liste von Zieladressen in der Reihenfolge der Häufigkeit der Verwendung auf der Grundlage des bestimmten Kommunikationstyps und/oder der bestimmten Anwendungsklasse und ferner auf der Grundlage der bestimmten Source-Person bereitstellen.
  • Das Ordnen der Adresse nach Rang erfolgt grundsätzlich durch Sortieren der Adresse in der Reihenfolge ihrer Nutzungsanzahl für den bestimmten Kommunikationstyp oder die bestimmte Anwendungsklasse. Das Verfahren identifiziert jeden der mit der bestimmten Source-Person verorteten Kommunikationsvorgänge und zählt den Kommunikationsvorgang unter Verwendung eines Scale-Up-Faktors, beispilesweise zweimal. Auf diese Weise wird eine angegebene Adresse höher gereiht, wenn die Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse öfters mit dieser bestimmten Source-Person als mit einer anderen Source-Person an diese Adresse verortet wurden, und eine angegebene Adresse würde niedriger gereiht werden, wenn die Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse weniger häufig mit dieser bestimmten Source-Person als mit einer anderen Source-Person an diese Adresse verortet wurden.
  • Eine Rangordnung kann auf Grundlage einer Source-Person erzielt werden, indem Nutzungsereignisse (und somit die Nutzungsanzahl) beispielsweise in ”Buckets” eingeteilt werden, die jeweils einer entsprechenden Source-Person entsprechen, und indem jenem Nutzungsereignis, das die zurzeit fragliche Person umfasst, die höchste Priorität gegeben wird. Wenn es beispielsweise drei Personen P1, P2 und P3 gibt, und ein neuer Kommunikationsvorgang eines bestimmten Typs oder von einer bestimmten Anwendungsklasse wird unter Verwendung der Person P2 aufgebaut, umfasst das Verfahren (i) Festlegen einer ersten Rangordnung von Kommunikationsadressen für Kommunikationsvorgänge, die die Person P2 verwenden, auf der Grundlage von Zählwerten, die für den Kommunikationstyp und/oder die Anwendungsklasse kennzeichnend sind, (ii) Feststellen einer zweiten Rangordnung von Kommunikationsadressen für Kommunikationsvorgänge, die eine andere Person (d. h. eine gemischte Rangordnung für Nutzungen unter der Person P1 und P2) verwenden, auf der Grundlage von Zählwerten, die für den Kommunikationstyp und/oder die Anwendungsklasse kennzeichnend sind, und (iii) Bereitstellen einer nach Rang geordneten Auflistung von Zieladressen der ersten Rangordnung, gefolgt von der zweiten Rangordnung. Andere Möglichkeiten, Source-Personen in dem Rangordnungsvorgang zu berücksichtigen, sind ebenfalls möglich.
  • Weitere Faktoren, die als Grundlage zum Bestimmen der Rangordnung von Zieladressen berücksichtigt werden können, umfassen den Zeitpunkt des Kommunikationsvorgangs und den Ort des Kommunikationsvorgangs (falls zutreffend).
  • Beispielsweise kann das Verfahren die Tageszeit berücksichtigen, zu der sich die letzten Kommunikationsvorgänge ereigneten und zu der der neue Kommunikationsvorgang erzeugt wird, und das Verfahren kann den Zieladressen mehr oder weniger Gewicht geben, je nachdem wie häufig oder weniger häufig die Adressen für Kommunikationsvorgänge zur gleichen oder ähnlichen Tageszeit für den neuen Kommunikationsvorgang verwendet wurden (beispielsweise ein Zeitbereich, wie in etwa am Morgen, Nachmittag, Abend, Wochentag, Wochenende, etc.). Wenn beispielsweise das Ordnen die Adressen nach Rang grundsätzlich erfolgt, indem die Adressen in der Reihenfolge ihrer Nutzungsanzahl für den bestimmten Kommunikationstyp oder für die bestimmte Anwendungsklasse sortiert werden, umfasst das Verfahren das Bestimmen einer aktuellen Tageszeit, in der der neue Kommunikationsvorgang erzeugt wird, und anschließendes Erhöhen des Zählwerts für jeden vergangenen Kommunikationsvorgang, der zu einer ähnlichen Tageszeit verortet wurde. Ferner kann das Verfahren einen größeren Skalierungswert verwenden oder anderenfalls mehr Gewicht auf Kommunikationsvorgänge legen, die zeitlich näher am aktuellen Zeitpunkt liegen, und einen niedrigeren Skalierungswert verwenden oder anderenfalls weniger Gewicht auf Kommunikationsvorgänge legen, die zeitlich weiter vom aktuellen Zeitpunkt entfernt sind.
  • Ferner kann das Verfahren als Grundlage für die Bestimmung der Rangordnung die Aktualität der letzten Kommunikationsvorgänge berücksichtigen, um so Kommunikationsadressen, die in jüngerer Vergangenheit verwendet wurden als andere, in der Rangordnung höher einzureihen. Die Berücksichtigung der Aktualität vergangener Kommunikationsvorgänge (d. h. wann die jüngsten vergangenen Kommunikationsvorgänge auftraten) kann auf gleiche Art erfolgen, wie das zuvor beschriebene Berücksichtigen der Source-Person vergangener Kommunikationsvorgänge.
  • Wenn beispielsweise das Ordnen der Adressen nach Rang grundsätzlich erfolgt, indem die Adressen in der Reihenfolge ihrer Nutzungsanzahl für den bestimmten Kommunikationstyp oder die bestimmte Anwendungsklasse sortiert werden, umfasst das Verfahren das Bestimmen der Aktualität des jeweils letzten Kommunikationsvorgangs und die dementsprechende Skalierung des Zählwerts für diesen Kommunikationsvorgang. Beispielsweise kann ein Kommunikationsvorgang, der erst kürzlich stattfand, zweimal oder mithilfe eines anderen Scale-Up-Faktors gezählt werden, während ein Kommunikationsvorgang, der vor langer Zeit stattfand, zur Hälfte oder mithilfe eines anderen Scale-Down-Faktors gezählt werden. Auf diese Weise würde eine bestimmte Adresse höher eingereiht werden, wenn mehrere Kommunikationsvorgänge des bestimmten Typs oder der bestimmten Anwendungsklasse vor kurzem an diese Adresse verortet wurden, und eine bestimmte Adresse würde niedriger eingereiht werden, wenn weniger Kommunikationsvorgänge des bestimmten Typs vor kurzem an die bestimmte Adresse verortet wurden.
  • In einem weiteren Beispiel könnte die Aktualität in den Rangordnungsvorgang einbezogen werden, indem Nutzungsereignisse (und somit die Nutzungsanzahl) in ”Buckets” eingeteilt werden, wobei jeder ein bestimmtes Aktualitätsniveau aufweist, wie beispielsweise (a) einen Bucket für Kommunikationsvorgänge innerhalb der letzten drei Tage, (b) einen Bucket für vier Tage bis eine Woche alte Kommunikationsvorgänge, (c) einen Bucket für acht Tage bis einen Monat alte Kommunikationsvorgänge, und (d) einen Bucket für Kommunikationsvorgänge, die älter als einen Monat sind. Für jeden Bucket umfasst das Verfahren, wie hierin beschrieben, das Erstellen einer nach Rang geordneten Auflistung auf der Grundlage von Zählwerten, die für den fraglichen Kommunikationstyp und/oder die Anwendungsklasse kennzeichnend sind, und möglicherweise auf der Grundlage eines oder mehrerer weiterer Faktoren. Und das Verfahren umfasst das Sortieren der nach Rang geordneten Auflistungen in der Reihenfolge der Aktualität, so dass die nach Rang geordnete Auflistung mit den letzten Kommunikationsvorgängen als erstes aufgelistet wird (mit der höchsten Priorität), die nach Rang geordnete Auflistung mit den vorletzten Kommunikationsvorgängen als nächstes aufgelistet ist (mit der nächsthöheren Priorität) usw.
  • Auf diese Weise kann eine bestimmte Adresse im Rang höher eingereiht werden, wenn zu einem dem aktuellen Zeitpunkt ähnlichen Zeitpunkt Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse öfter an diese Adresse verortet wurden, und eine bestimmte Adresse im Rang niedriger eingereiht werden, wenn zu einem dem aktuellen Zeitpunkt ähnlichen Zeitpunkt Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse weniger häufig an diese Adresse verortet wurden.
  • Auf ähnliche Weise kann das Verfahren die Standorte, an denen die letzten Kommunikationsvorgänge verortet wurden, und der Standort, an dem der neue Kommunikationsvorgang erzeugt wird, berücksichtigen und den Zieladressen mehr oder weniger Gewicht beimessen, je nachdem, ob die Adressen häufiger oder weniger häufig für Kommunikationsvorgänge verwendet wurden, die an den gleichen oder einen ähnlichen Standort wie der neue Standort verortet wurden. Wenn beispielsweise das Ordnen der Adressen nach Rang grundsätzlich durch Sortieren der Adressen in der Reihenfolge ihrer Nutzungsanzahl für den bestimmten Kommunikationstyp oder die bestimmte Anwendungsklasse erfolgt, kann das Verfahren das Bestimmen eines aktuellen Standortes für den neuen Kommunikationsvorgang und anschließendes Erhöhen des Zählwerts für jeden vergangenen Kommunikationsvorgang, der an einen ähnlichen Standort verortet wurde, umfassen. Ferner kann das Verfahren auf ähnliche Weise mehr Gewicht auf Kommunikationsvorgänge legen, deren Standort näher am aktuellen Standort liegt, und weniger Gewicht auf Kommunikationsvorgänge legen, deren Standort weiter entfernt vom aktuellen Standort liegt, indem beispielsweise unterschiedliche Skalierungsfaktoren oder Buckets verwendet werden, wie zuvor im Hinblick auf die Aktualität der vergangenen Kommunikationsvorgänge beschrieben.
  • Auf diese Weise könnte eine bestimmte Adresse im Rang höher gereiht werden, wenn die Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse öfter an die Adresse, die sich an einem Standort ähnlich dem aktuellen Standort befindet, verortet werden, und eine bestimmte Adresse könnte im Rang niedriger gereiht werden, wenn Kommunikationsvorgänge des bestimmten Typs oder von der bestimmten Anwendungsklasse weniger häufig an die Adresse, die sich an einem Standort ähnlich dem aktuellen Standort befindet, verortet werden.
  • Es sollte auch beachtet werden, dass für einen vorgegebenen Satz von Kommunikationsadressen unterschiedliche Zählwerte mit Bezug auf unterschiedlich geeignete Teilsätze der Kommunikationsadressen erstellt werden können, und der Teilsatz von Adressen, der folglich als die nach Rang geordnete Liste von Zieladressvorschlägen angezeigt wird, kann sich je nach Kommunikationstyp und/oder Anwendungsklasse unterscheiden.
  • Wenn beispielsweise ein Satz zehn Kommunikationsadressen A1-A10 umfasst, kann der Fall eintreten, dass nur Adressen A1-A8 für einen ersten Kommunikationstyp verwendet werden, jedoch nur die Adressen A3-A10 für einen zweiten Kommunikationstyp verwendet werden. In diesem Fall können die Zählwerte von Kommunikationsvorgängen des ersten Typs nur für die Adressen A1-A8 die Zählwerte von Kommunikationsvorgängen des zweiten Typs nur für die Adressen A3-A10 bestimmt werden. Wird ein neuer Kommunikationsvorgang des ersten Typs aufgebaut, kann das Verfahren die Adressen A1-A8 auf der Grundlage der Nutzungsanzahl nach Rang geordnet darstellen. Wird hingegen ein neuer Kommunikationsvorgang des zweiten Typs aufgebaut, kann das Verfahren die Adressen A3-A10 auf der Grundlage der Nutzungsanzahl nach Rang geordnet darstellen. In der Praxis jedoch schließen sich die Teilsätze nicht gegenseitig aus, so dass es mindestens eine Adresse in einem Teilsatz geben würde, die sich auch in dem anderen Teilsatz befindet.
  • Es sollte beachtet werden, dass jede der Adressen A3-A8 mehr als eine Nutzungsanzahl aufweist, nämlich einen Zählwert für den ersten Kommunikationstyp und einen Zählwert für den zweiten Kommunikationstyp. Die Liste der Zieladressvorschläge kann folglich die Adressen A3-A8 auf der Grundlage der Zählwerte, die für den fraglichen Kommunikationstyp kennzeichnend sind, nach Rang geordnet aufweisen. Jedoch kann die Liste der Zieladressvorschläge auch zusätzliche Adressen umfassen. Wenn beispielsweise der neue Kommunikationsvorgang den ersten Kommunikationstyp umfasst, kann die Liste der Zieladressvorschläge auch die Adressen A1 und A2 umfassen. Und wenn der neue Kommunikationsvorgang den zweiten Kommunikationstyp umfasst, dann kann die Liste der Zieladressvorschläge auch die Adressen A9 und A10 umfassen.
  • Ferner kann in einigen Anwendungen des Verfahrens eine Adresse, an die kein Kommunikationsvorgang eines bestimmten Kommunikationstyps und/oder von einer bestimmten Anwendungsklasse verortet wurde, gänzlich von der nach Rang geordneten Auflistung, die für einen neuen Kommunikationsvorgang dieses Kommunikationstyps und/oder von dieser Anwendungsklasse angezeigt wird, ausgeschlossen werden. Alternativ kann das Nichtverwenden der Adressen bei der Ordnung nach Rang einem Zählwert von Null entsprechen, wodurch die Kommunikationsadresse wahrscheinlich ans Ende der dargestellten Liste gestellt würde.
  • 2. Beispielarchitektur
  • Im Allgemeinen kann das vorliegende Verfahren von einer Kommunikationsvorrichtung verwendet werden, die verschiedene Kommunikationstypen unterstützt und/oder verschiedene Kommunikationsanwendungen aufweist, über die ein Benutzer Kommunikationsvorgänge verorten kann. Das Verfahren kann dann eine Programmlogik auf der Vorrichtung umfassen, um für jede der mehreren Kommunikationsadressen mehrere an die Adresse verortete Kommunikationszählwerte zu erstellen, wobei jeder Zählwert für einen entsprechenden Kommunikationstyp und/oder Anwendungsklasse steht und auf Kommunikationsvorgängen durch Mehrfachanwendungen beruht. Ferner kann in dem Verfahren die Programmlogik erfassen, dass ein Kommunikationsvorgang eines bestimmten Typs und/oder von einer bestimmten Anwendungsklasse erzeugt wird, und die Programmlogik kann als Reaktion darauf die Zählwertdaten ausdrücklich für den bestimmten Typ und/oder die bestimmte Anwendungsklasse (und nicht beispielsweise für einen oder mehrere andere Typen oder eine oder mehrere andere Anwendungsklassen) verwenden, um die Kommunikationsadressen nach Rang zu ordnen und eine Liste bereitzustellen, die die Adressen in der sich daraus ergebenden Rangordnung zur Ansicht für den Benutzer umfasst. Geeigneterweise kann der Benutzer dann aus der dargestellten Liste eine Zieladresse für die Vorrichtung, die für den neuen Kommunikationsvorgang verwendet wird, auswählen.
  • Alternativ oder zusätzlich dazu kann das Verfahren von einem anderen Gerät, wie beispielweise einem Netzwerkserver (z. B. Cloud-Server) ausgeführt werden. Um in der Praxis eine derartige Implementierung zu erleichtern, kann das Endnutzergerät programmiert werden, dem Server (oder einem anderen Gerät) verschiedene, von dem Gerät verortete Kommunikationsvorgänge anzuzeigen, und auf Grundlage dieser Daten kann der Server für jede der verschiedenen Adressen mehrere Zählwerte von Kommunikationsvorgängen programmatisch erstellen, jeweils für einen entsprechenden Kommunikationstyp und/oder Anwendungsklasse. Alternativ kann der Server solche Daten aus Netzwerkkommunikationsaufzeichnungen extrahieren, wie beispielsweise Anrufdetailsaufzeichnungen (call detail records) oder dergleichen, die beispielsweise durch den Kommunikationsdienstanbieter (z. B. in Netzwerkabrechnungssystemen) geführt werden. Wenn das Endnutzergerät versucht, einen neuen Kommunikationsvorgang eines bestimmten Typs und/oder von einer Anwendung einer bestimmten Klasse zu erzeugen, kann das Gerät dann den Server abfragen, um eine Auflistung von Zieladressvorschlägen zu erhalten, und der Server kann dem Gerät eine Auflistung der Kommunikationsadressen bereitstellen, die auf der Grundlage der Anzahl der Verwendungen für den bestimmten Kommunikationstyp und/oder Anwendungsklasse nach Rang geordnet ist. Das Endnutzergerät kann dann die nach Rang geordnete Auflistung anzeigen, so dass ein Benutzer problemlos eine gewünschte Zieladresse, die für den Kommunikationsvorgang verwendet werden soll, auswählen kann.
  • Ferner umfasst das Verfahren das Berücksichtigen einer Nutzungsanzahl für Kommunikationsvorgänge, die von mehreren Geräten verortet wurden, wie beispielsweise eine Gruppe von Geräten, die alle einem gemeinsamen Benutzerkonto oder dergleichen zugeordnet sind (beispielsweise unter diesem registriert sind). Wenn beispielsweise mehrere Endnutzergeräte Kommunikationsvorgänge verorten, kann jedes die Kommunikationsvorgänge auf einem Server anzeigen, oder der Server kann die Kommunikationsvorgangsaufzeichnungen aus anderen Aufzeichnungen extrahieren. Der Server kann dann für jede der mehreren Kommunikationsadressen zusammengefasste Mehrfachzählwerte von Kommunikationsvorgängen, die an dieser Adresse von der Gruppe der Geräte verortet wurden, bestimmen, wobei jeder zusammengefasste Zählwert einem bestimmten Kommunikationstyp und/oder Anwendungsklasse entspricht. Wenn eines der Geräte versucht, einen neuen Kommunikationsvorgang eines bestimmten Typs und/oder von einer Anwendung einer bestimmten Klasse zu erzeugen, kann das Gerät den Server nach einer Auflistung von Zieladressvorschlägen abfragen, und der Server kann darauf eine Auflistung ausgeben, die auf der Grundlage der Zählwerte, die für den bestimmten Kommunikationstyp und/oder Anwendungsklasse kennzeichnend sind, nach Rang geordnet ist.
  • In Bezug auf die Zeichnungen zeigt die 1 ein vereinfachtes Blockdiagramm, das funktionelle Komponenten einer beispielhaften Kommunikationsvorrichtung 12 darstellt, die anhand des vorliegenden Verfahrens bedient werden kann. Im Allgemeinen kann als die Kommunikationsvorrichtung jede Vorrichtung dienen, die Kommunikationsvorgänge verorten kann und mit einem Benutzer kommunizieren kann. Beispiele für derartige Vorrichtungen umfassen ohne Einschränkung Festnetztelefone oder drahtlose Telefone, Videokonferenzgeräte, Computer sowie andere Geräte, die jetzt bekannt oder später entwickelt werden.
  • Die beispielhafte Kommunikationsvorrichtung 12 kann selbst das vorliegende Verfahren ausführen, um einen Benutzer mit Zieladressvorschlägen für einn neuen Kommunikationsvorgang zu versorgen. Alternativ kann die Kommunikationsvorrichtung 12 mit einer oder mehreren anderen Vorrichtungen, wie beispielsweise zuvor erwähnt, mit einem Netzwerkserver zusammenarbeiten, um einen oder mehrere Aspekte der vorliegenden Erfindung zu unterstützen, wie beispielsweise das Erstellen von Mehrfachnutzungszählwerten pro Kommunikationsadresse und das Anzeigen einer Auflistung von Zieladressvorschlägen an einen Benutzer, die auf der Grundlage der Anzahl der Verwendungen für den fraglichen Kommunikationstyp und/oder die Anwendungsklasse nach Rang geordnet sind.
  • Wie in der 1 gezeigt, umfasst die beispielhafte Kommunikationsvorrichtung 12 eine Kommunikationsschnittstelle 14, eine Benutzeroberfläche 16, einen Computerprozessor 18 und einen Datenspeicher 20, die alle kommunikativ miteinander durch einen Systembus, ein Netzwerk oder einen anderen Verbindungsmechanismus 22 verbunden sein können. Obwohl diese Komponenten als einzelne Blöcke in der Figur gezeigt sind, können sie auf unterschiedliche Weise zusammengefügt werden. Obwohl ferner diese Komponenten als Bestandteil der Kommunikationsvorrichtung 12 gezeigt sind, können einige oder alle der Komponenten außerhalb der Vorrichtung vorgesehen sein oder aus der Vorrichtung entnehmbar ausgebildet sein.
  • Die Kommunikationsschnittstelle 14 umfasst eine oder mehrere Kommunikationsschnittstellenmodule, über die die Kommunikationsvorrichtung 12 in Netzwerkkommunikationsvorgänge eingreifen kann, um beispielsweise Kommunikationsvorgänge zu verorten und zu empfangen. Beispiele derartiger Module umfassen RJ-11- und RJ-45-Module zur Kopplung mit Festnetztelefonschaltungen oder drahtgebundenen Ethernetschaltungen, Chipsätzen und Antennen für die Verbindung mit verschiedenen Formen drahtloser Kommunikation, wie z. B. WIFI, BLUETOOTH, LTE, WiMAX, CDMA, GSM oder HSDPA, und andere Kommunikationsschnittstellenarten, die jetzt bekannt sind oder später entwickelt werden.
  • Die Benutzeroberfläche 16 funktioniert derart, dass die Vorrichtung mit einem Benutzer kommunizieren kann (beispielsweise mit jedem und allen Benutzern der Vorrichtung), um Zieladressvorschläge anzuzeigen und eine Benutzerauswahl einer Zieladresse zum Verorten eines neuen Kommunikationsvorgangs zu empfangen. Als solches kann die Benutzeroberfläche einen oder mehrere Ausgangskomponenten, wie beispielsweise einem Bildschirm und einen Lautsprecher, und einen oder mehrere Eingangskomponenten, wie beispielsweise ein Keypad oder eine Tastatur, einen berührungsempfindlichen Bildschirm oder ein Touch Panel, und ein Mikrofon umfassen. Die Benutzeroberfläche kann auch eine Analog-zu-Digital-Umwandlungsschaltung umfassen, um das digitale Verarbeiten von analogen Wegen (z. B. Sprache), die einem Benutzer bereitgestellt oder von einem Benutzer empfangen werden, zu erleichtern.
  • Der Prozessor 18 umfasst einen oder mehrere Universalprozessoren (beispielsweise Mikroprozessoren) und/oder einen oder mehrere Spezialprozessoren (beispielweise anwendungsspezifische integrierte Schaltungen oder digitale Signalprozessoren). Das Datenspeichersystem 20 kann dann ein nicht-transitorisches, computerlesbares Medium sein, das eine oder mehrere flüchtige und/oder nichtflüchtige Speicherkomponenten, wie beispielsweise optische, magnetische, organische oder Flash-Speichermodule, aufweisen. In der gezeigten beispielhaften Kommunikationsvorrichtung, umfasst das Datenspeichersystem 20 eine Programmlogik 24 und Referenzdaten 26. Grundsätzlich ist die Programmlogik 24 durch den Prozessor 18 ausführbar, um verschiedene hierin beschriebene Funktionen auszuführen, und die Referenzdaten 26 enthalten Daten, die die Programmlogik 24 benutzt, wie beispielsweise Adressdaten.
  • Obwohl das Datenspeichersystem 20 als eine Komponente der Kommunikationsvorrichtung 12 gezeigt ist, können einige oder alle Aspekte des Datenspeichersystems getrennt von der Kommunikationsvorrichtung vorgesehen sein, wie beispielsweise einem externen Flash-Laufwerk, einer externen magnetischen oder optischen Festplatte, einer Disk oder einem anderen nicht-transitorischen, computerlesbaren Medium.
  • Die 2 zeigt ein detaillierteres Diagramm mit Beispieldaten, die in dem Datenspeichersystem 20 enthalten sein können, um die Umsetzung des vorliegenden Verfahrens zu erleichtern. Wie in der 2 gezeigt, umfasst die Programmlogik 24 ein Betriebssystem 28 und zahlreiche Programmanwendungen 30, und die Referenzdaten 26 umfassen Kontaktdaten 32, Source-Personendaten 34, Zählwertklassifizierungsdaten 36, Kommunikationsverlaufsdaten 38, Adresszähldaten 40 und Rangordnungsdaten 42, die alle in einem relationalen Datenbanksystem oder auf andere Weise gespeichert sein können.
  • Das Betriebssystem 28 kann jedes beliebige Betriebssystem umfassen, das den Kernbetrieb der Kommunikationsvorrichtung erleichtert, wie beispielsweise die Anwendungswechselwirkung zwischen der Kommunikationsschnittstelle 14 und der Benutzeroberfläche 16. Wie gezeigt, stellt (umfasst) das Betriebssystem 28 eine Abstraktionsschicht (eine Abstraktionsschicht definierende Programmlogik) 44 bereit, mit der die verschiedenen Anwendungen 30 über eine Anwendungsprogrammieroberfläche (application programming interface – API) interagieren können, um die verschiedenen Merkmale des Verfahrens aufzurufen, zu unterstützen und von ihnen zu profitieren.
  • Die Anwendungsprogramme 30 umfassen Programme oder Programmmodule, die auf der Kommunikationsvorrichtung ausführbar sind, um nützliche Funktionen bereitzustellen. In Bezug auf das vorliegende Verfahren umfassen die Anwendungsprogramme 30 eine oder mehrere Kommunikationsanwendungen, die beispielsweise Anwendungen der zuvor erwähnten Art sein können. Beispielsweise können charakteristische Kommunikationsanwendungen (i) eine Sprachtelefonieanwendung zum Durchführen eines herkömmlichen Telefonanrufes, (ii) eine Internettelefonieanwendung (VoIP) zum Durchführen von Sprachanrufen oder zum Verbinden mit Videokonferenzschaltungen, (iii) eine SMS/MMS-Anwendung zum Senden von SMS-Textmitteilungen und MMS-Mitteilungen, wie beispielsweise Foto-Sharing-Mitteilungen, und (iv) eine E-Mail-Anwendung zum Senden von E-Mail-Nachrichten, die beispielsweise mit SMTP kompatibel sind. Wie zuvor erwähnt, sind ebenso zahlreiche andere Beispiele möglich.
  • Diese Kommunikationsanwendungen können gleichzeitig mit dem Betriebssystem 28 auf das Gerät geladen werden (beispielsweise zum Zeitpunkt der Geräteherstellung oder -verteilung oder zum Zeitpunkt eines Betriebssystemupdates) oder sie können zu einem anderen Zeitpunkt auf die Vorrichtung geladen werden. Ferner können, obwohl die Anwendungen 30 getrennt von dem Betriebssystem 28 dargestellt sind, eine oder mehrere Anwendungen selbst integraler Bestandteil des Betriebssystems sein. Beispielsweise kann eine charakteristische Vorrichtung eine Kontaktmanagernentanwendung sein, um den Benutzer eine Interaktion mit einem Telefonbuch oder einer anderen Kontaktliste als Kernfunktion der Vorrichtung zu ermöglichen und zu unterstützen. Eine solche Anwendung kann als integraler Bestandteil des Betriebssystems selbst oder getrennt vom Betriebssystem vorgesehen sein.
  • Eine charakteristische Kommunikationsanwendung funktioniert derart, dass ein Benutzer einen neuen Kommunikationsvorgang erzeugen kann, wie beispielsweise das Tätigen eines Sprachanrufs oder eines Internetanrufs durch den Benutzer, das Verfassen und Senden von SMS/MMS-Mitteilungen durch den Benutzer, das Verfassen und Senden von E-Mail-Nachrichten durch den Benutzer, usw., und dem Benutzer eine Liste von Zieladressvorschlägen für den neuen Kommunikationsvorgang anzuzeigen (oder veranlasst, diese anzuzeigen), wobei die Liste auf Grundlage von Zählwerten, die kennzeichnend für den fraglichen Kommunikationstyp und/oder die Anwendungsklasse sind, nach Rang geordnet sind.
  • In der Praxis kann beispielsweise die Kommunikationsanwendung eine GUI definieren, die auf einem Bildschirm der Vorrichtung angezeigt wird und mit dem Benutzer interagiert, um so eine Benutzeranfrage zur Erzeugung eines neuen Kommunikationsvorgangs zu erhalten, um dem Benutzer die Zieladressvorschläge anzuzeigen, und die Benutzerauswahl oder andere Eingaben einer gewünschten Zieladresse für die Datenübertragung zu empfangen. Beispielsweise kann die Anwendung eine Drop-Down-Auflistung der nach Rang geordneten Zieladressvorschläge in oder in der Nähe eines ”An”-Feldes der GUI oder als separater Dialog vorsehen. Eine solche Liste kann hinsichtlich eines bestimmten Kontakts oder einer Gruppe von Kontakten gefiltert werden, auf der Grundlage von Daten, die durch den Benutzer eingegeben werden, beispielsweise durch Begrenzung der Liste auf Adressen für Kontakte, die Namen mit übereinstimmenden Zeichen aufweisen, die bislang vom Benutzer eingegeben wurden.
  • Ferner kann die Kommunikationsanwendung mit dem Betriebssystem 28 interagieren, um anzuzeigen, dass Kommunikationsvorgänge an bestimmte Kommunikationsadressen verortet wurden und von dem Betriebssystem eine Liste von Zieladressvorschlägen für einen neuen Kommunikationsvorgang des vorliegenden Verfahrens abzufragen und zu empfangen. Im Hinblick auf das Anzeigen von Datenübertragungen kann der Anwendungsvorgang des Verortens eines Kommunikationsvorgangs selbst von dem Betriebssystem als Anzeige des verorteten Kommunikationsvorgangs erfasst werden, oder die Anwendung kann den Kommunikationsvorgang gesondert anzeigen.
  • In der Praxis kann das Betriebssystem 28 dann eine Logik zum Durchführen bestimmter Funktionen des vorliegenden Verfahrens umfassen. Beispielsweise kann das Betriebssystem 28 eine Logik umfassen, um unterschiedliche Kommunikationsanwendungsaufzeichnungen von Kommunikationsvorgängen, die an bestimmte Adressen verortet wurden, empfangen, und eine Logik umfassen, um für jede Kommunikationsadresse Mehrfachzählwerte der Kommunikationsvorgänge, die an die Adresse verortet wurden, zu bestimmen, wobei jeder Zählwert einem entsprechenden Kommunikationstyp und/oder Anwendungsklasse entspricht. Ferner kann das Betriebssystem eine Logik umfassen, um von einer Anwendung einer bestimmten Klasse eine Anfrage für eine Liste von Zieladressvorschlägen für einen neuen Kommunikationsvorgang eines bestimmten Typs zu empfangen, um die Zieladressen auf der Grundlage der Nutzungsanzahl, die kennzeichnend für den Kommunikationstyp und/oder die Anwendungsklasse ist, nach Rang zu ordnen (und möglicherweise auf der Grundlage eines oder mehrerer zusätzlicher Faktoren, wie beispielsweise Source-Personen, Zeit und/oder Standort), und der Anfrageanwendung als Reaktion darauf eine Liste einschließlich der nach Rang geordneten Adressen für die Anwendung zur Ansicht für den Benutzer bereitzustellen.
  • Alternativ können einige oder alle der Logiken zum Durchführen der Funktionen des vorliegenden Verfahrens durch ein oder mehrere Anwendungsprogramme 30 definiert werden. Beispielsweise kann eine spezielle Anwendung als Dienstprogramm auf der Vorrichtung speziell zur Erleichterung des vorliegenden Verfahrens eingerichtet werden. Alternativ können die einen oder mehreren Anwendungen, die auf der Vorrichtung für andere Zwecke eingerichtet wurden, eine Logik umfassen, um eine oder mehrere Funktionen des Verfahrens durchzuführen.
  • Unter den Referenzdaten 26 können die Kontaktdaten 32 die Form von Adressbuchdaten aufweisen, die für die Darstellung durch eine Kontaktmanagementanwendung geeignet sind. Derartige Kontaktdaten können Kontaktaufzeichnungen umfassen, von denen jedes für einen bestimmten Kontakt (beispielsweise Person oder Geschäft) stehen kann und für den Kontakt eine oder mehrere Adressen, wie beispielsweise eine oder mehrere Telefonnummern und/oder eine oder mehrere E-Mail-Adressen, unter möglicherweise weitere Adressarten festlegen kann, wobei jede Adresse ein Label oder einen Identifikator (beispielsweise zuhause, Büro, Handy etc.) aufweist, um den Bezug zu und die Darstellung der Adresse zu erleichtern. Jede Kontaktaufzeichnung kann ferner weitere Informationen über den Kontakt bereitstellen, wie beispielsweise einen Kontaktnamen und ein Miniaturbild (thumbnail image), das beispielsweise den Kontakt darstellt, so dass ein Text und/oder eine grafische Darstellung des Kontakts angezeigt werden kann.
  • Beispielsweise können die Kontaktdaten 32 eine Aufzeichnung für den Kontaktnamen ”Adam”, die die Adressen A1, A2 und A3 angibt, umfassen, und die Kontaktdaten können ferner eine Aufzeichnung für den Kontaktnamen ”Betty”, die die Adressen B1, B2 und B3 angibt, umfassen. Diese Adressen können verschiedene Adresstypen aufweisen, wie beispielsweise E-Mail-Adressen und Telefonnummern, oder sie können alle eine Adressart umfassen. Ferner ist es möglich, dass ein oder mehrere Kontakte, die in der Kontaktdatenbank aufgelistet sind, nur eine einzelne Adresse auflisten (oder eine einzelne Adresse eines bestimmten Typs auflisten) oder überhaupt keine Adressen aufgeführt haben.
  • Die Source-Personendaten 34 können dann eine aktuell aktive Source-Person für die Vorrichtung definieren und können ferner eine oder mehrere weitere Source-Personen definieren, die beispielsweise über eine Konfigurationsschnittstelle oder auf Basis eines Zeitplans ablauffähig gemacht werden können.
  • Die Source-Personendaten 34 können für jede Source-Person eine oder mehrere entsprechende Source-Adressen zur Verwendung von Kommunikationsvorgängen von der Vorrichtung definieren. Beispielsweise können die Daten für jede Source-Person eine entsprechende Source-E-Mail-Adresse definieren, von der E-Mail-Nachrichten standardmäßig gesendet werden können, und eine entsprechende Source-Telefonnummer definieren, von der Anrufe getätigt werden könnten. (Je nach Implementierung ist es möglich, die Kommunikationsvorrichtung zwischen mehreren ”Leitungen” zu schalten, wobei jede eine andere zugeordnete Telefonnummer aufweist, oder ist es möglich, dass die Kommunikationsvorrichtung die aktuell aktive Source-Telefonnummer als Anrufer-ID-Information bei der Verbindungsaufbausignalgebung übermittelt.)
  • Wenn eine Kommunikationsanwendung in einen Modus wechselt, um eine neue Datenübermittlung zu erzeugen, kann die Anwendung das Betriebssystem abfragen, um eine entsprechende Source-Adresse für die Verwendung von Kommunikationsvorgängen zu erhalten, und kann sich selbst standardmäßig so einstellen, dass diese Kommunikationsadresse verwendet wird. Wahlweise kann die Anwendung es dem Benutzer ermöglichen, eine gewünschte Source-Adresse aus einer Liste verfügbarer Source-Adressen auszuwählen, und die Source-Personendaten 34 können implizit definieren, welche Source-Person dieser ausgewählten Source-Adresse entspricht und folglich welche Source-Person für den Kommunikationsvorgang verwendet wird.
  • Anzahlklassifizierungsdaten 36 können verschiedene Klassifizierungen angeben, die verwendet werden, um das Bestimmen der Nutzungsanzahl in dem vorliegenden Verfahren zu erleichtern. Beispielsweise können die Anzahlklassifizierungsdaten verschiedene Kommunikationstypen, verschiedene Anwendungsklassen und/oder verschiedene weitere Klassifizierungen angeben, und sie können für jede Klassifizierung mit einem entsprechenden Label, Tag oder Identifikator versehen werden, um, sich auf die Klassifizierung zu beziehen. In der Praxis kann eine Kommunikationsanwendung diese Anzahlklassifizierungsdaten verwenden, um das Betriebssystem über die Anzahlklassifizierung (oder Klassifizierungen) für einen bestimmten Kommunikationsvorgang zu informieren, indem ein geeignetes Label, Tag oder Identifikator angegeben wird. Das Betriebssystem kann dann diese Spezifikation als Grundlage verwenden, um einen oder mehrere geeignete Zählwerte für die Zieladresse des Kommunikationsvorgangs, d. h., einen Zählwert für jede entsprechende Kommunikationsvorgangsklassifizierung, zu inkrementieren.
  • Die Kommunikationsverlaufsdaten 38 können Kommunikationsaufzeichnungen umfassen, die von der Vorrichtung erstellt werden, und sie können das Bestimmen einer Nutzungsanzahl pro Adresse erleichtern, und folglich ein Beispiel von Nutzungsaufzeichnungen definieren. Die Aufzeichnung eines jeden Kommunikationsvorgangs kann Eigenschaften des Kommunikationsvorgangs identifizieren, wie beispielsweise Source-Adresse/Source-Person, Zieladresse, Klassifizierung(en) des Kommunikationsvorgangs (z. B. Kommunikationstyp und/oder Anwendungsklasse), Zeitstempel, Standort (beispielsweise durch GPS ermittelt oder durch eine andere verfügbare Standortbestimmungstechnologie), Dauer und Disposition (beispielsweise erfolgreich abgeschlossen, erfolglos versucht, etc.).
  • Einige oder alle der Kommunikationsverlaufsaufzeichnungen können durch die Anwendungen, die die Kommunikationsvorgänge verorten, an das Betriebssystem übermittelt werden, und zwar zu dem Zeitpunkt, zu dem die Datenübermittlung verortet wird (beispielsweise initiiert, erfolgreich kommuniziert oder beendet) oder zu einem anderen Zeitpunkt. Alternativ oder zusätzlich dazu können einige oder alle dieser Aufzeichnungen von dem Betriebssystem erstellt werden, das das Verorten der Kommunikationsvorgänge erfasst und die Daten bezüglich der Kommunikationsvorgänge aufzeichnet. Um ferner die Relevanz der Kommunikationsverlaufsdaten 38 sicherzustellen, ist das Betriebssystem so einstellbar, dass es automatisch die Communication-History-Datenaufzeichnungen löscht, die älter als ein bestimmter Zeitpunkt sind (beispielsweise einen Monat oder irgendeine andere konfigurierbare Laufzeit).
  • Die Adresszähldaten 40 stellen dann die Zählwerte pro Adresse dar, die zur Bestimmung einer Rangordnung der Zieladressvorschläge gemäß dem vorliegenden Verfahren verwendbar sind. Somit können die Adresszähldaten 40 jeweils für jede der mehreren Adressen Mehrfachnutzungszählwerte der Adresse als eine Zieladresse für einen von der Vorrichtung verorteten Kommunikationsvorgang umfassen, wobei jeder Zählwert speziell für eine jeweilige Klassifizierung steht, wie beispielsweise für einen bestimmten Kommunikationstyp und/oder für eine bestimmte Anwendungsklasse.
  • Anders formuliert können die Adresszähldaten 40 mehrere Sätze von Zählwerten umfassen, wobei jeder Satz für eine bestimmte Klassifizierung steht und eine klassifizierungsspezifische Zählung für jeweils jede der mehreren Adressen umfasst. Beispielsweise können die Adresszähldaten 40 einen ersten Satz von Zählwerten für Kommunikationen einer ersten Klassifizierung umfassen, wobei jeder Zählwert in dem ersten Satz auf einer Menge von Kommunikationsvorgängen der ersten Klassifizierung, die an eine entsprechende andere Adresse verortet wird, beruht, wie beispielsweise einen Zählwert der Anzahl von Kommunikationsvorgängen der ersten Klassifizierung, die jeweils an jede Adresse verortet wird. Und die Adresszähldaten 40 können dann des Weiteren einen zweiten Satz von Zählwerten für Kommunikationsvorgänge einer zweiten Klassifizierung umfassen, wobei jeder Zählwert in dem zweiten Satz auf einer Menge von Kommunikationsvorgängen der zweiten Klassifizierung beruht, die an eine entsprechende andere Adresse verortet wird, wie beispielsweise einen Zählwert der Anzahl von Kommunikationsvorgängen der zweiten Klassifizierung, die jeweils an jede Adresse verortet wird.
  • Im Gegensatz dazu umfassen die Rangordnungsdaten 42 nach Rang geordnete Auflistungen von Adressen gemäß dem vorliegenden Verfahren. Idealerweise umfassen die Rangordnungsdaten 42 für einen bestimmten Satz von Adressen eine andere Rangordnung, auf der Grundlage einer Nutzungsanzahl für einen bestimmten Kommunikationstyp und/oder Anwendungsklasse, als auf Grundlage einer Nutzungsanzahl für einen anderen Kommunikationstyp und/oder eine andere Anwendungsklasse. In der Praxis können beispielsweise die Rangordnungsdaten 42 ermittelt werden, indem die Adressen gemäß einer Rangordnung sortiert werden, die zumindest teilweise auf den entsprechenden Adresszähldaten für die Adressen beruht. Beispielsweise kann eine nach erstem Rang geordnete Auflistung erstellt werden, indem die Adressen in der Reihenfolge ihrer jeweiligen Nutzungsanzahl für Kommunikationsvorgänge einer ersten Klassifizierung von Kommunikationsvorgängen sortiert werden, wobei eine nach zweitem Rang geordnete Auflistung erstellt werden kann, indem die Adressen in der Reihenfolge ihrer jeweiligen Nutzungsanzahl für Kommunikationsvorgänge einer zweiten Klassifizierung von Kommunikationsvorgängen sortiert werden.
  • 3 zeigt ein Beispiel für Adresszählungsdaten 40 für die zuvor beschriebenen Adressen der beispielhaften Benutzer Adam und Betty. Wie in der 3 gezeigt, sind die Adresszähldaten 40 in Form einer Datentabelle angeordnet, wobei jede Reihe eine entsprechende Adresse darstellt und jede Spalte eine entsprechende Kommunikationsklassifizierung darstellt. In dem gezeigten Beispiel sind zwei charakteristische Klassifizierungen angegeben, eine für ”Anruf” und eine weitere für ”Mitteilung”, und die Tabelle gibt für jede Klassifizierung eine entsprechende Nutzungsanzahl der Adresse als eine Zieladresse an.
  • In diesem Beispiel kann die ”Anruf”-Klassifizierung die Verwendung von mehreren Anrufsanwendungen umfassen, wie beispielsweise eine oder mehrere Sprachtelefonieanwendungen, eine oder mehrere Internettelefonieanwendungen, eine oder mehrere Videokonferenzanwendungen. Somit kann ein bestimmter Zählwert, der in der beispielhaften Tabelle gezeigt ist, Kommunikationsvorgänge umfassen, die von zwei oder mehr Anwendungen verortet wurden, wobei das Betriebssystem Nutzungsdaten über diese Anwendungen in eine entsprechende Gesamtzählung für die Klassifikation zusammenfasst. Auf ähnliche Weise kann die ”Mitteilung”-Klassifizierung die Verwendung durch mehrere Mitteilungsanwendungen umfassen, wie beispielsweise eine oder mehrere SMS/MMS-Anwendungen und eine oder mehrere E-Mail-Anwendungen. Weitere Beispiele sind ebenso möglich.
  • Wie aus der Tabelle der 3 ersichtlich, wurde die Adresse A1 für 1 Anrufsereignis, jedoch für 25 Mitteilungen verwendet, wohingegen die Adresse A2 für 13 Anrufsereignisse, jedoch nur 5 Mitteilungen verwendet wurde. Unter Berücksichtigung nur dieser beiden Adressen kann folglich die durch das vorliegende Verfahren definierte Logik festgelegt werden, um Zieladressvorschläge bereitzustellen, die dem Rang nach als A2-A1 geordnet sind (d. h., dass A2 eine höhere Priorität als A1 aufweist), wenn der besagte neue Kommunikationsvorgang ein Anrufkommunikationsvorgang ist, und um jedoch die Zieladressvorschläge bereitzustellen, die dem Rang nach als A1-A2 geordnet sind (d. h. A1 weist eine höhere Priorität als A2 auf), wenn der besagte neue Kommunikationsvorgang ein Textmitteilungskommunikationsvorgang ist. Des Weiteren kann das zuvor erwähnte Reihen der Zieladressvorschläge nach Rang weitere Faktoren berücksichtigen, wie beispielsweise eine Source-Person, Zeit und/oder Standort.
  • 3. Bedienungsbeispiel
  • Die 4 zeigt ein Flussdiagramm, das Funktionen darstellt, die gemäß dem vorliegenden Verfahren durchgeführt werden können.
  • Wie in der 4 in Feld 100 gezeigt, umfassen die Funktionen das Bestimmen einer ersten Vielzahl von Zählwerten von Kommunikationsvorgängen eines ersten Kommunikationstyps, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer jeweiligen Menge von Kommunikationsvorgängen des ersten Kommunikationstyps beruht, der an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird. Wenn beispielsweise ein Satz von Kommunikationsadressen die Adressen A1-A10 umfasst, kann die erste Vielzahl von Zählwerten von Kommunikationsvorgängen des ersten Kommunikationstyps für jeweils jede Adresse in dem Satz (d. h. für jede unterschiedliche Adresse in dem Satz) einen Zählwert von Kommunikationsvorgängen des ersten Kommunikationstyps umfassen, der an diese Adresse verortet wird. Ein Zählwert kann auf einer Menge von Kommunikationsvorgängen beruhen, indem der Zählwert die Menge selbst darstellt oder indem der Zählwert aus der Menge abgeleitet wird, beispielsweise, indem dieser eine skalierte Version der Menge darstellt.
  • Wie in Feld 102 gezeigt, umfassen die Funktionen des Weiteren das Bestimmen einer zweiten Vielzahl von Zählwerten von Kommunikationsvorgängen eines zweiten Kommunikationstyps, wobei jeder Zählwert in der zweiten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des zweiten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus der Vielzahl von Kommunikationsadressen verortet werden. Wenn beispielsweise der Satz von Kommunikationsadressen die Adressen A1-A10 umfasst, kann die zweite Vielzahl von Zählwerten von Kommunikationsvorgängen des zweiten Kommunikationstyps für jeweils jede Adresse in dem Satz (d. h. für jede unterschiedliche Adresse in dem Satz) einen Zählwert von Kommunikationsvorgängen des zweiten Kommunikationstyps umfassen, die an diese Adresse verortet werden.
  • In der Praxis bestimmen die in den Feldern 100 und 102 dargestellten Funktionen letzten Endes für jede Vielzahl von Kommunikationsadressen mehrere Zählwerte von Kommunikationsvorgängen, die an die Adresse verortet wurden, wobei jeder Zählwert für einen entsprechenden Kommunikationstyp einer Vielzahl von Kommunikationstypen steht, wobei die Vielzahl von Typen einen ersten Typ und einen zweiten Typ umfasst.
  • In der Praxis kann das Betriebssystem diese bestimmenden Funktionen auf der Grundlage von Kommunikationsverlaufsdaten 38 (communication-history data) umsetzen, entweder laufend oder bei Bedarf dynamisch, um bestimmte Zählwerte auf der Grundlage des Kommunikationstyps und/oder der Anwendungsklasse eines neuen Kommunikationsvorgangs zu bestimmen, beispielsweise dynamisch, falls erforderlich, um eine nach Rang geordnete Auflistung der Zieladressvorschläge zu erstellen. Der Vorgang des Ermittelns kann Berechnen, Aktualisieren (beispielsweise Inkrementieren), Empfangen oder anderenfalls Erstellen oder Erlernen umfassen.
  • Jedes Mal, wenn beispielsweise die Vorrichtung einen Kommunikationsvorgang verortet (beispielsweise einen Anruf tätigt oder eine Nachricht sendet), kann das Betriebssystem den maßgeblichen Zählwert/die maßgeblichen Zählwerte für die Bestimmungsadresse des Kommunikationsvorgangs inkrernentieren. Wie beispielsweise in der Tabelle der 3 gezeigt, könnte das Betriebssystem jedes Mal, wenn die Vorrichtung einen Anruf an die Adresse A1 verortet, den Anrufszählwert für die Adresse A1 inkrementieren, wobei jedes Mal, wenn die Vorrichtung eine Nachricht an die Adresse A1 sendet, kann das Betriebssystem den Mitteilungszählwert für Adresse A1 inkrernentieren, usw.
  • Wie zuvor erwähnt, können zusätzliche Faktoren bei der Bestimmung der Nutzungsanzahl berücksichtigt werden. Da einige dieser zusätzlichen Faktoren kennzeichnend für den erstellten neuen Kommunikationsvorgang sind (wie beispielsweise das Anpassen der Rangordnung auf der Grundlage der Source-Person, die für den neuen Kommunikationsvorgang verwendet wird und/oder auf der Grundlage der Zeit (beispielsweise Aktualität) oder des Standorts des neuen Kommunikationsvorgangs), kann es am besten sein, diese Zähldaten zu dem Zeitpunkt zu erstellen, wenn der neue Kommunikationsvorgang erstellt wird. Der zusätzliche Faktor bzw. die zusätzlichen Faktoren können dann auf die zuvor beschriebene Art oder auf andere Weise berücksichtigt werden. Alternativ können ein oder mehrere zusätzliche Faktoren aufgenommen werden, indem die Kommunikationsvorgänge in Buckets, die bestimmte Eigenschaften aufweisen, sortiert werden (beispielsweise personenbezogene Buckets, aktualitätsbezogene Buckets oder entfernungsbezogene Buckets) und indem Zählwerte auf einer pro-Bucket-Basis durchgeführt werden, so dass, wie zuvor erwähnt, das Ordnen nach Rang auf bucketspezifischer Basis durchführbar ist.
  • Die von dem Betriebssystem bestimmten Zählwerte können auf Adressen beschränkt sein, die tatsächlich als Zieladressen für einen oder mehrere Kommunikationsvorgänge verwendet wurden. Zum Beispiel kann das Betriebssystem die Liste der maßgeblichen Adressen in der Reihenfolge ihrer Verwendung erstellen, und jedes Mal, wenn eine Adresse wiederverwendet wird, anschließend einen oder mehrere zutreffende Zählwerte für die Adresse inkrementieren. Vorteilhafterweise würde dies dazu beitragen, dass die Zieladressvorschläge sich auf diese Adressen konzentrieren, die tatsächlich zuvor verwendet wurden. Wahlweise können die Zählwerte beispielsweise alle Adressen in den Kontaktdaten 32 umfassen, wobei jedoch jene Adressen, die nicht als Zieladressen verwendet wurden, wie zuvor erwähnt, einen Zählwert von Null aufweisen können.
  • Wie in Feld 104 gezeigt, können die Funktionen ferner das Erfassen einer ersten Anfrage oder eines anderen Triggers zur Bereitstellung einer Vielzahl von Zieladressvorschlägen umfassen. Das Erfassen dieser Anfrage oder des anderen Triggers kann auf verschiedene Weise erfolgen. Beispielsweise kann das Betriebssystem die Anfrage erfassen, indem die Anfrage von einer Kommunikationsanwendung über die Abstraktionsschicht 44 empfangen wird. Beispielsweise kann das Betriebssystem von der Kommunikationsanwendung eine API-Abfrage empfangen, die eine Liste von Zieladressvorschlägen sucht. In der Praxis kann diese Anfrage einen neuen Kommunikationsvorgang des ersten Kommunikationstyps zugeordnet sein. Beispielsweise kann die Kommunikationsanwendung derart funktionieren, dass eine API-Abfrage bei Empfang einer Benutzereingabe, die die Erzeugung des neuen Kommunikationsvorgangs des ersten Kommunikationstyps anfordert, erzeugt und gesendet wird. Das Erfassen der Anfrage kann auch auf andere Art erfolgen, indem beispielsweise bloß erfasst wird, dass der neue Kommunikationsvorgang erstellt wird.
  • Wenn, als ein konkretes Beispiel, die Anwendung eine Telefonanrufsanwendung ist, kann die Anwendung ein Interfaceelement, wie beispielsweise ein Textfeld, bereitstellen, in das ein Benutzer einen Kontaktnamen oder eine Telefonnummer, der/die angerufen werden soll, eingeben kann. Erfasst die Anwendung, dass der GUI-Schwerpunkt auf diesem Element liegt, kann die Anwendung anschließend die API-Abfrage erzeugen und senden. Wahlweise kann die Anwendung, sobald der Benutzer ein oder mehrere Zeichen einzugeben beginnt (wie beispielsweise die ersten Buchstaben eines Kontaktnamens oder die ersten Zahlen einer Telefonnummer) anschließend die API-Abfrage erzeugen und senden. Im letzteren Fall kann die Anwendung in der Abfrage eine Spezifikation der bis dahin eingegeben Buchstaben/Zahlen umfassen, und das Betriebssystem kann dann diese Daten als Schlüssel für die Durchsuchung der Kontaktdaten 32 verwenden, um so den ausgegebenen Satz der Zieladresse auf jene zu beschränken, die mit den bis dahin eingegebenen Buchstaben/Zahlen übereinstimmen.
  • Die von der Anwendung bereitgestellte API-Abfrage kann ausdrücklich eine oder mehrere Klassifizierungen des neuen Kommunikationsvorgangs bestimmen, so dass das Betriebssystem Zieladressvorschläge ausgeben kann, die in einer die fragliche Klassifizierung kennzeichnenden Weise nach Rang geordnet sind. Die Abfrage kann die Anzahlklassifizierungsdaten 36 für diesen Zweck verwenden. Beispielsweise kann die Abfrage ausdrücklich den Kommunikationstyp und/oder die Anwendungsklasse mit einer oder mehreren Teilangaben (levels of granularity) belegen, wie beispielsweise Anrufe, Sprachtelefonie (circuit-voice calling), Internettelefonie (VoIP calling), Mitteilungen, SMS/MMS-Mitteilungen oder E-Mail-Mitteilungen. Alternativ können einige von diesen Informationen oder alle Informationen in der Abfrage, die von einer bestimmten Anwendung empfangen wird, implizit enthalten sein. Wenn beispielsweise die Abfrage von einer einfachen Telefonanrufanwendung empfangen wird, kann darin implizit enthalten sein (beispielsweise von Anwendungsregistrierungsdaten in dem Betriebssystem), dass der Kommunikationstyp ein Sprachanruf ist und die Anwendungsklasse ”Anruf” ist. Weitere Beispiele sind ebenso möglich.
  • In jedem Fall kann das Betriebssystem dann den fraglichen Kommunikationstyp und/oder die Anwendungsklasse bestimmen, um das Bereitstellen einer geeigneten Rangordnung zu erleichtern. Ferner kann das Betriebssystem auch eine oder mehrere weitere Eigenschaften des neuen Kommunikationsvorgangs bestimmen, wie beispielsweise eine Source-Person, eine Zeit und/oder einen Standort, um so das Anpassen der Rangordnung auf der Grundlage einer oder mehrerer weiterer Eigenschaften auf die zuvor beschriebene Weise zu erleichtern. In der Praxis kann die Abfrageanwendung beispielsweise eine Source-Person-Kennung als API-Abfrage umfassen oder das Betriebssystem kann sich auf eine allgemeinere Source-Person-Einstellung der Vorrichtung oder der Anwendung beziehen, um die Source-Person zu bestimmen. Auf ähnliche Weise kann das Betriebssystem die aktuelle Zeit und/oder den aktuellen Zeitpunkt bestimmen oder darüber informiert werden.
  • Wie im Feld 106 gezeigt, können die Funktionen als Reaktion auf die erste Anfrage das Senden einer Liste, die die Vielzahl der Kommunikationsadressen aufweist, umfassen. Ferner kann die Vielzahl der Kommunikationsadressen in der Liste als Reaktion auf den neuen Kommunikationsvorgang des ersten Kommunikationstyps nach Rang geordnet werden, die zumindest teilweise auf die erste Vielzahl von Zählwerten und möglicherweise auf einem oder mehreren der zuvor erwähnten Faktoren beruht.
  • In Übereinstimmung mit der obigen Diskussion kann diese Funktion das Bereitstellen einer Liste von Zieladressen, einschließlich der Vielzahl von Kommunikationsadressen, die in der den neuen Kommunikationsvorgangstyp kennzeichnenden Weise nach Rang geordnet ist, umfassen. Das Betriebssystem kann diese Liste der ersten Anwendung als Reaktion auf die API-Abfrage, die von der ersten Anwendung beispielsweise als ein Array von Zieladressvorschlägen empfangen wird, bereitstellen.
  • Die bereitgestellte Liste der Zieladressvorschläge kann die Vielzahl der Kommunikationsadressen in der Reihenfolge der Häufigkeit ihrer Verwendung (beispielsweise Nutzungsanzahl) speziell für den fraglichen Kommunikationstyp umfassen, wie beispielsweise von der größten Häufigkeit (beispielsweise der höchste Zählwert) bis zur geringsten Häufigkeit (beispielsweise der kleinste Zählwert). Es wird angenommen, dass mit Bezug auf die Adressen in 3 der fragliche Kommunikationstyp beispielsweise ”Anruf” ist. Auf der Grundlage der in der Tabelle angezeigten Zähldaten kann die Liste die Adressen dann als {B3, A2, B1, B2, A1, A3} ordnen, da die ”anrufsspezifischen” Zählwerte für diese Adressen jeweils {15, 13, 9, 7, 1, 0} sind. Wenn andererseits der Kommunikationstyp ”Mitteilung” ist, kann die Liste der Adressen als {B2, A1, B1, A2, A3, B3} ordnen, da die ”mitteilungsspezifischen” Zählwerte für diese Adresse jeweils {33, 25, 11, 5, 3, 0} sind.
  • Alternativ kann das Ordnen nach Rang kontaktspezifisch erfolgen, indem die Kontakte auf der Grundlage der Häufigkeit von Kommunikationsvorgängen des bestimmten Kontakttyps geordnet werden und anschließend die Adressen innerhalb eines jeden Kontakts nach Rang geordnet werden. (In diesem Fall kann das vorliegende Verfahren auf einer pro-Kontakt-Basis und möglicherweise auch unter einer Kontaktgruppe anwendbar sein.) Wenn beispielsweise der Kommunikationstyp ”Anruf” ist, kann das Betriebssystem bestimmen, dass der Kontakt A, der am häufigsten angerufene ist, und somit die Adressen des Kontaktes A im Rang als erstes auflisten, gefolgt von den Adressen des Kontaktes B. So kann die nach Rang geordnete Liste der Kommunikationsadressen {KONTAKT-A: A2, A1, A3}, gefolgt von {KONTAKT-B: B3, B1, B2} umfassen. Wenn andererseits der Kommunikationstyp ”Mitteilung” ist, kann das Betriebssystem bestimmen, dass der Kontakt B das am häufigste verwendete Ziel für Mitteilungen ist, und so kann die nach Rang geordnete Liste der Kommunikationsadressen {KONTAKT-B: B2, B1, B3}, gefolgt von {KONTAKT-A: A1, A2, A3} umfassen.
  • In dem Fall, in dem das Betriebssystem mehrere unterschiedliche Zählwerte für jede Adresse einer Vielzahl von Adressen führt und indem das Ordnen nach Rang auf der Grundlage der Zählwerte erfolgt, die für einen bestimmten Kommunikationstyp und/oder Anwendungsklasse kennzeichnend sind, kann es sein, dass der Rangordnungsvorgang nicht auf der Grundlage von Zählwerten für einen oder mehrere weitere Kommunikationstypen und/oder Anwendungsklassen erfolgt. Für einen ”Anruf”-Kommunikationsvorgang können die Adressen beispielsweise auf der Grundlage von anrufspezifischen Zählwerten, jedoch nicht auf der Grundlage von mitteilungsspezifischen Zählwerten nach Rang geordnet werden (d. h. ohne Bezug auf die mitteilungsspezifischen Zählwerte). Und für einen ”Mitteilung”-Kommunikationsvorgang können die Adressen auf der Grundlage von mitteilungsspezifischen Zählwerten jedoch nicht auf der Grundlage von anrufspezifischen Zählwerten nach Rang geordnet werden (d. h. ohne Bezug auf anrufspezifische Zählwerte).
  • Wie bereits zuvor erwähnt, können ein oder mehrere der Zählwerte, die die Basis der Rangordnung bilden, auf einen Kommunikationsvorgang beruhen, der von mehr als einer Anwendung verortet wird. Somit können, obwohl das Betriebssystem nach Rang geordnete Zieladressvorschläge an eine bestimmte Anwendung sendet, einer oder mehrere der Zählwerte, die die Basis für die Rangordnung bilden, auf Kommunikationsvorgänge beruhen, die von zumindest einer weiteren Anwendung verortet werden. Wenn beispielsweise die Abfrageanwendung eine Internettelefonieanwendung (VoIP) ist, kann der Fall eintreten, dass einige oder alle der Zählwerte in der Spalte „Anruf” der 3 einen oder mehrere Anrufskommunikationsvorgänge umfassen, die stattdessen von einer Sprachtelefonieanwendung verortet wurden. Weitere Beispiele sind ebenso möglich.
  • In der Praxis kann das Betriebssystem die nach Rang geordnete Liste der Adresse zu dem Zeitpunkt dynamisch erstellen, wenn das Betriebssystem die nach Rang geordnete Auflistung an die Anwendung übermittelt. Bei Empfang einer API-Abfrage oder anderenfalls beim Erfassen einer Anfrage für Zieladressvorschläge kann das Betriebssystem beispielsweise kommunikationstypspezifische Zählwerte auf der Grundlage der Kommunikationsverlaufsdaten bilden und anschließend die geeignete Rangordnung erstellen, möglicherweise ebenso unter Berücksichtigung eines oder mehrerer weiterer Faktoren in dem Verfahren. Oder wenn der geeignete kommunikationstypspezifische Zählwert bereits gebildet wurde, kann das Betriebssystem auf die API-Abfrage oder auf andere Abfragen antworten, und anschließend die geeignete Rangordnung auf der Grundlage dieser existierenden Zählwerte erstellen. Alternativ kann das Betriebssystem vor dem Erfassen der Anfrage für die Zieladressvorschläge unterschiedliche nach Rang geordnete Auflistungen erstellen (pro Kommunikationstyp und/oder Anwendungsklasse), beispielsweise laufend im Form eines Hintergrundprozesses, um so über die geeignete Rangordnung für eine schnelle Bereitstellung an jegliche Abfrageanwendung verfügen zu können.
  • In jedem Fall kann der Vorgang des Erstellens der Liste von Zieladressvorschlägen das Sortieren von zumindest der Vielzahl der Kommunikationsadressen zumindest zum Teil auf der Grundlage ihrer Zählwerte der Kommunikationsvorgänge des maßgeblichen Kommunikationstyps umfassen. Beispielsweise umfasst der Vorgang des Erstellens der Liste das Sortieren der Adressen in der Reihenfolge der häufigsten Kommunikationsvorgänge des maßgeblichen Kommunikationstyps bis zu den wenigsten Kommunikationsvorgängen des maßgeblichen Kommunikationstyps, wie zuvor erwähnt möglicherweise ebenso unter Berücksichtigung weiterer Faktoren, wie beispielsweise Source-Person, Zeit und/oder Standort.
  • Wenn das erste Anwendungsprogramm die Liste der Zieladressvorschläge von dem Betriebssystem (beispielsweise von der Abstraktionsschicht 44) empfängt, kann das Anwendungsprogramm optimalerweise bewirken, dass die Vorrichtung die Zieladressvorschläge, einschließlich der Vielzahl der Kommunikationsadressen in der erstellten Rangordnung, auf der Benutzeroberfläche 16 zur Ansicht für den Benutzer darstellt. Beispielsweise kann das Anwendungsprogramm die Liste zur Ausgabe auf einem Bildschirm senden, beispielsweise indem eine GUI erzeugt wird, die die Darstellung der Liste enthält, und indem die GUI an das Betriebssystem zur Darstellung auf dem Bildschirm bereitgestellt wird. Die Anwendung ermöglicht es dem Benutzer, eine der dargestellten Zieladressen, die für den fraglichen Kommunikationsvorgang verwendet werden soll, auszuwählen.
  • Es sollte beachtet werden, dass ”die Darstellung” oder ”die Ausgabe” der Liste von Zieladressvorschlägen auf einem Bildschirm oder anderenfalls auf einer Benutzeroberfläche eine scrollbare Darstellung der Liste umfasst. Es kann beispielsweise jeweils nur ein Bereich der Liste dargestellt sein, so dass ein Benutzer durch die Liste scrollen muss, um den Rest einsehen zu können.
  • Mit Hilfe des Verfahrens kann das Betriebssystem in der Praxis ferner eine weitere Liste bereitstellen, die die Vielzahl der Kommunikationsadressen in unterschiedlicher Rangfolge umfasst, um die Auswahl einer Adresse für einen Kommunikationsvorgang eines anderen Kommunikationstyps zu erleichtern.
  • Das Betriebssystem kann beispielsweise eine zweite Anfrage für eine Vielzahl von Zieladressvorschlägen erfassen, wobei die zweite Anfrage von einem anderen Anwendungsprogramm als das erste Anwendungsprogramm empfangen wird und einem zweiten neuen Kommunikationsvorgang des zweiten Kommunikationstyps zugeordnet wird. Als Reaktion auf die zweite Anfrage kann das Betriebssystem wiederum eine zweite Liste senden, die die Vielzahl der Kommunikationsadressen umfasst, wobei die Vielzahl der Kommunikationsadressen gemäß einer zweiten Rangordnung geordnet ist, die zumindest teilweise auf der zweiten Vielzahl von Zählwerten und möglicherweise auf einen oder mehreren weiteren der zuvor erwähnten Faktoren beruht. Das die zweite Anfrage bereitstellende Anwendungsprogramm kann die zweite Liste zur Ausgabe auf dem Bildschirm oder anderenfalls auf der Benutzeroberfläche senden, wobei die zweite Liste die Vielzahl der Kommunikationsadressen umfasst, die gemäß der zweiten Rangordnung geordnet ist, um die Auswahl einer Zieladresse für den zweiten neuen Kommunikationsvorgang zu erleichtern.
  • Die 5 zeigt ein Flussdiagramm, das die gemäß der vorliegenden Erfindung ausführbaren Funktionen darstellt, um eine Liste von Zieladressvorschlägen einschließlich einer Vielzahl von Kommunikationsadressen bereitzustellen, die in Abhängigkeit des fraglichen Kommunikationstyps gemäß einer oder einer anderen Rangordnung geordnet sind. Wie in dem Feld 110 der 5 gezeigt, umfassen die Funktionen das Bestimmen einer ersten Vielzahl von Zählwerten von Kommunikationsvorgängen eines ersten Kommunikationstyps, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des ersten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird. Wie in Feld 112 gezeigt, umfassen die Funktionen das Bestimmen einer zweiten Vielzahl von Zählwerten von Kommunikationsvorgängen eines zweiten Kommunikationstyps, wobei jeder Zählwert in der zweiten Vielzahl der Zählwerte auf einer entsprechenden Menge von Kommunikationsvorgängen des zweiten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus der Vielzahl der Kommunikationsadressen verortet wird. Optimalerweise schließen sich der erste Kommunikationstyp und der zweite Kommunikationstyp gegenseitig aus, wie beispielsweise Anrufe und Mitteilungen (wobei ein Typ nicht den anderen umfasst und umgekehrt).
  • Wie in Feld 114 gezeigt, umfassen die Funktionen des Weiteren das Erfassen einer Anfrage für Zieladressvorschläge für einen neuen Kommunikationsvorgang. Und wie in Feld 116 gezeigt, können die Funktionen bestimmen, ob der neue Kommunikationsvorgang einen ersten Kommunikationstyp oder einen zweiten Kommunikationstyp umfasst. Wird bestimmt, dass der erste Kommunikationsvorgang den ersten Kommunikationstyp umfasst, dann stellen die Funktionen, wie in Feld 118 gezeigt, eine erste Liste auf einer Benutzeroberfläche bereit (oder bewirken, dass die Benutzeroberfläche eine erste Liste darstellt), die die erste Vielzahl von Kommunikationsadressen umfasst, die zumindest teilweise auf der Grundlage der ersten Vielzahl von Zählwerten, die für die Vielzahl der Kommunikationsadressen bestimmt sind, und nicht auf der Grundlage der zweiten Vielzahl von Zählwerten, die für die Vielzahl der Kommunikationsadressen bestimmt sind, sortiert werden. Wenn andererseits bestimmt wird, dass der neue Kommunikationsvorgang den zweiten Kommunikationstyp umfasst, dann können die Funktionen, wie in Feld 120 gezeigt, stattdessen eine zweite Liste auf der Benutzeroberfläche darstellen, die die Vielzahl der Kommunikationsadressen umfasst, die zumindest teilweise auf der Grundlage der zweiten Vielzahl von Zählwerten, die für die Vielzahl der Kommunikationsadressen bestimmt sind, und nicht auf der Grundlage der ersten Vielzahl von Zählwerten, die für die Vielzahl der Kommunikationsadressen bestimmt ist, sortiert werden.
  • Die 6 zeigt ein weiteres Flussdiagramm, das die gemäß der vorliegenden Erfindung ausführbaren Funktionen darstellt. Wie im Feld 130 in der 5 gezeigt, können die Funktionen eine erste Vielzahl von Zählwerten von Kommunikationsvorgängen, die von einer oder mehreren Anwendungen einer ersten Anwendungsklasse verortet werden, bestimmen, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen beruht, die von einer oder mehreren Anwendungen der ersten Anwendungsklasse an eine entsprechende Kommunikationsadresse aus der Vielzahl von Kommunikationsadressen verortet wird. Ferner bestimmen die Funktionen, wie in Feld 132 gezeigt, eine zweite Vielzahl von Zählwerten von Kommunikationsvorgängen, die von einer oder mehreren Anwendungen einer zweiten Anwendungsklasse verortet werden, wobei jeder Zählwert in der zweiten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen beruht, die von einer oder mehreren Anwendungen der zweiten Anwendungsklasse an eine entsprechende Kommunikationsadresse aus der Vielzahl von Kommunikationsadressen verortet wird. Diese Funktionen können größtenteils auf die gleiche Weise wie zuvor mit Bezug auf den Kommunikationstyp beschrieben durchgeführt werden, wobei jedoch die Klassifizierung auf der Anwendungsklasse beruht, wie beispielsweise in oder implizit von den Nutzungsaufzeichnungen festgelegt. Ferner können sich die erste und die zweite Anwendungsklasse gegenseitig ausschließen (wobei eine Klasse nicht die andere umfasst und umgekehrt).
  • Wie in Feld 134 gezeigt, können die Funktionen eine erste Anfrage für eine Vielzahl von Zieladressvorschlägen erfassen, wobei die erste Anfrage von einer ersten Anwendung empfangen und einem ersten neuen Kommunikationsvorgang zugeordnet wird, und wobei die erste Anwendung ein Mitglied der ersten Anwendungsklasse ist. Wie in Feld 136 gezeigt, können die Funktionen als Reaktion auf die erste Anfrage eine erste Liste, die die Vielzahl der Kommunikationsadressen umfasst, senden. Ferner kann die Vielzahl der Kommunikationsadressen als Reaktion darauf, dass die erste Anwendung (die den ersten neuen Kommunikationsvorgang erzeugt) ein Mitglied der ersten Anwendungsklasse ist, entsprechend einer ersten Rangordnung geordnet werden, die zumindest teilweise auf der ersten Vielzahl von Zählwerten beruht, d. h. sie beruht auf den Zählwerten von Kommunikationsvorgängen, die von einer oder mehreren Anwendungen der ersten Anwendungsklasse verortet werden.
  • In der Praxis wird die erste Rangordnung erstellt, indem die Vielzahl der Kommunikationsadressen sortiert werden, die zumindest teilweise auf der ersten Vielzahl von Zählwerten von Kommunikationsvorgängen beruht, die von einer oder mehreren Anwendungen der ersten Anwendungsklasse an die Vielzahl von Kommunikationsadressen verortet werden, und ohne Berücksichtigung der zweiten Vielzahl von Zählwerten von Kommunikationsvorgängen, die von der einen oder mehreren Anwendungen der zweiten Anwendungsklasse an die Vielzahl von Kommunikationsadressen verortet werden, um so die erste Liste, die die gemäß der ersten Rangordnung geordnete Vielzahl von Kommunikationsadressen umfasst, zu erstellen.
  • Ferner können bei Erfassung der ersten Anfrage die Funktionen bestimmen, dass die erste Anwendung ein Mitglied der ersten Anwendungsklasse ist. Und die Funktionen können dann als Reaktion auf diese Bestimmung zumindest die Vielzahl der Kommunikationsadressen, die zumindest teilweise auf der ersten Vielzahl von Zählwerten von Kommunikationsvorgängen beruht, die von der einen oder von mehreren Anwendungen der ersten Anwendungsklasse an die Vielzahl der Kommunikationsadressen verortet werden, sortieren, um so die erste Liste, die die entsprechend der ersten Rangordnung geordnete Vielzahl von Kommunikationsadressen umfasst, zu erstellen. Alternativ können die Funktionen vor dem Erfassen der ersten Anfrage zumindest die Vielzahl der Kommunikationsadressen, die zumindest auf der ersten Vielzahl von Zählwerten von Kommunikationsvorgängen beruht, die von der einen oder von mehreren Anwendungen der ersten Anwendungsklasse an die Vielzahl von Kommunikationsadressen verortet werden, sortieren, um so die erste Liste, die die gemäß der ersten Rangordnung geordnete Vielzahl von Kommunikationsadressen umfasst, zu erstellen.
  • Wie in Feld 138 gezeigt, können die Funktionen ferner eine zweite Anfrage für eine Vielzahl von Zieladressvorschlägen erfassen, wobei die zweite Anfrage von einer zweiten Anwendung empfangen und einem zweiten neuen Kommunikationsvorgang zugeordnet wird, und wobei die zweite Anwendung ein Mitglied der zweiten Anwendungsklasse ist.
  • Wie in Feld 140 gezeigt, können die Funktionen als Reaktion auf die zweite Anfrage eine zweite Liste, die die Vielzahl der Kommunikationsadressen umfasst, senden. Ferner kann die Vielzahl der Kommunikationsadressen in der zweiten Liste als Reaktion darauf, dass die zweite Anwendung (die den zweiten neuen Kommunikationsvorgang erzeugt) ein Mitglied der zweiten Anwendungsklasse ist, gemäß einer zweiten Rangordnung geordnet werden, die zumindest teilweise auf der zweiten Vielzahl von Zählwerten beruht, d. h. sie beruht auf den Zählwerten von Kommunikationsvorgängen, die von der einen oder von mehreren Anwendungen der zweiten Anwendungsklasse verortet werden.
  • Die 7 zeigt ein weiteres Flussdiagramm, das die gemäß dem vorliegenden Verfahren ausführbaren Funktionen darstellt. Das Flussdiagramm der 7 zeigt, dass das Verfahren eine bestimmte Rangordnung von Zieladressvorschlägen bereitstellen kann, wobei die Rangordnung auf der Klassifizierung der erstellten neuen Kommunikationsvorgänge beruht (beispielsweise auf der Grundlage des Kommunikationstyps des neuen Kommunikationsvorgangs und/oder der Anwendungsklasse jener Anwendung, die den neuen Kommunikationsvorgang erstellt).
  • Wie im Feld 150 der 7 gezeigt, umfassen die Funktionen das Erfassen einer Anfrage für Zieladressvorschläge für einen neuen Kommunikationsvorgang. Wie in Feld 152 gezeigt, bestimmen die Funktionen dann eine Klassifizierung des neuen Kommunikationsvorgangs (wie beispielsweise einen Kommunikationstyp und/oder eine Anwendungsklasse). Wie in Feld 154 gezeigt, stellen (beispielsweise Senden) die Funktionen als Reaktion auf die Anfrage eine Vielzahl von Kommunikationsadressen, die gemäß einer Rangordnung geordnet sind, bereit, wobei die Rangordnung zumindest teilweise auf der bestimmten Klassifizierung des neuen Kommunikationsvorgangs beruht. In der Praxis können die Funktionen beispielsweise die Kommunikationsadressen zumindest teilweise auf der Grundlage der Nutzungsanzahl, die für die bestimmte Klassifizierung kennzeichnend ist, nach Rang ordnen und anschließend die nach Rang geordnete Auflistung bereitstellen. Alternativ umfassen die Funktionen Angeben einer Vielzahl von klassifizierungsspezifischen, nach Rang geordneten Auflistungen (beispielsweise eine nach Rang geordnete Auflistung pro Klassifizierung) und Auswählen jener nach Rang geordneten Auflistung, die mit den festgelegten Klassifizierungen übereinstimmt, aus der Vielzahl von klassifikationsspezifischen, nach Rang geordneten Auflistungen, und anschließend Bereitstellen der nach Rang geordneten Auflistung.
  • Schließlich zeigt die 8 (Teile A und B) zwei beispielhafte GUI-Abbildungen, um zu demonstrieren, wie das vorliegende Verfahren einen Satz von Adressen, der je nach erzeugtem Kommunikationstyp eine unterschiedliche Rangordnung aufweist, bereitstellen kann. Die 8A zeigt eine GUI einer Mitteilungsanwendung (wie beispielsweise eine SMS- oder MMS-Anwendung) und die 8B zeigt eine GUI einer Telefonanwendung (wie beispielweise eine Sprachtelefonieanwendung). In beiden Abbildungen umfasst die GUI eine QWERTY-Tastatur, die ein Benutzer betätigen kann, um die ersten Zeichen eines Zielkontakts für einen gewünschten Kommunikationsvorgang einzugeben. Ferner zeigt die GUI für Mitteilungen der 6A die Felder ”Von”, ”Betreff” und ”Textfeld” (wobei das Betreffsfeld und das Textfeld teilweise mit weiteren Informationen belegt sind), die ein Benutzer für eine Textmitteilung ausfüllen kann.
  • Beide dieser beispielhaften GUI-Abbildungen umfassen ein Feld, das der Benutzer ausfüllen kann, um eine gewünschte Zieladresse für einen neuen Kommunikationsvorgang anzuzeigen. Die GUI für Mitteilungen umfasst ein ”An”-Feld, und die GUI für Telefonanrufe umfasst ein ”Wähl”-Feld. Ferner zeigt jede Abbildung, dass ein Benutzer bislang die Zeichen ”be” als Zielkontaktnamen eingegeben hat und beide Abbildungen zeigen, dass die GUI eine Liste von Zieladressvorschlägen als gestapelte Felder unter dem Zielfeld anzeigt. Gemäß dem vorliegenden Verfahren weist, zumindest teilweise aufgrund der Adressen mit einer unterschiedlichen relativen Nutzungsanzahl für Mitteilungen als für Telefonanrufe, die Zieladressliste, die auf der GUI für Mitteilungen angezeigt wird, eine andere Rangordnung auf als die gleiche Zieladressliste, die auf der GUI für Telefonanrufe angezeigt wird.
  • Beispielsweise listet die GUI für Mitteilungsanwendungen die übereinstimmenden Kontaktnahmen ”Betty Johnson”, ”Beth Campbell”, und ”Bernie Smith” auf. Für den Namen Betty Johnson legt die Liste dann nach Rang geordnet die Telefonnummer 111-111-1111 und 222-222-2222 fest. Die Liste bestimmt dann eine Telefonnummer 333-333-3333 für Beth Campbell und eine Telefonnummer 444-444-4444 für Bernie Smith. Gemäß dem vorliegenden Verfahren beruht diese Rangordnung auf den Nutzungsanzahldaten, die angeben, dass Betty das häufigste Ziel für Textmitteilungen ist, gefolgt von Beth und anschließend von Bernie, und dass im Falle von Betty ihre Nummer 111-111-1111 öfter als Ziel für Textmitteilungen verwendet wird als ihre Nummer 222-222-2222.
  • Andererseits listet die GUI für Telefonanwendungen die Kontakte in der Reihenfolge Bernie, Betty und Beth, unter Angabe der Adressen von jedem und unter Angabe von Bettys Nummern in umgekehrter Reihenfolge. Gemäß dem vorliegenden Verfahren beruht die Rangordnung auf die Nutzungsanzahlsdaten, die angeben, dass Bernie am häufigsten angerufen wird, gefolgt von Betty und anschließend Beth, und dass im Falle von Betty ihre Nummer 222-222-2222 öfter angerufen wird als ihre Nummer 111-111-1111.
  • Ausgestattet mit einer dieser beiden GUIs kann ein Benutzer ein gewünschtes Feld aus den Feldern auswählen, die in der Liste von Zieladressvorschlägen vorgesehen sind, und die Vorrichtung kann als Reaktion darauf die ausgewählte Zieladresse in das Zielfeld für den zu erstellenden Kommunikationsvorgang eingeben. Der Benutzer kann anschließend die Vorrichtung anweisen, den Kommunikationsvorgang an diese Adresse zu initiieren.

Claims (16)

  1. Verfahren, umfassend: Bestimmen einer ersten Vielzahl von Zählwerten für Kommunikationsvorgänge eines ersten Kommunikationstyps, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des ersten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Bestimmen einer zweiten Vielzahl von Zählwerten für Kommunikationsvorgänge eines zweiten Kommunikationstyps, wobei jeder Zählwert in der zweiten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen des zweiten Kommunikationstyps beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Erfassen einer Anfrage für eine Vielzahl von Zieladressvorschlägen, wobei die Anfrage von einem ersten Anwendungsprogramm empfangen und einem ersten neuen Kommunikationsvorgang zugeordnet wird, wobei der neue Kommunikationsvorgang den ersten Kommunikationstyp umfasst und eine zugeordnete Source-Person aufweist, wobei einem Benutzer ermöglicht wird, selektiv unter verschiedenen Source-Personen zu arbeiten, die jeweils eine entsprechende Source-Adresse aufweisen, und von denen Kommunikationsvorgänge verortbar sind; Sortieren zumindest der Vielzahl von Kommunikationsadressen auf der Grundlage von zumindest teilweise (i) der ersten Vielzahl von Zählwerten und (ii) der Source-Person, um eine Liste zu erstellen, die die Vielzahl von Kommunikationsadressen, die entsprechend einer Rangordnung geordnet sind, die zumindest teilweise auf der ersten Vielzahl von Zählwerten und ferner zumindest teilweise auf der Source-Person beruht, umfasst, wobei zumindest ein Zählwert aus der ersten Vielzahl von Zählwerten zumindest teilweise auf einem oder mehreren Kommunikationsvorgängen beruht, die von zumindest einem zweiten Anwendungsprogramm, das sich von dem ersten Anwendungsprogramm unterscheidet, verortet werden; als Reaktion auf die Anfrage und den neuen Kommunikationsvorgang, der den ersten Kommunikationstyp umfasst und die zugeordnete Source-Person aufweist, Senden einer Liste, die die Vielzahl von Kommunikationsadressen umfasst, die entsprechend einer Rangordnung geordnet sind, die zumindest teilweise auf der ersten Vielzahl von Zählwerten und ferner zumindest teilweise auf der Source-Person beruht, wobei jeder der mit einer bestimmten Source-Person verorteten Kommunikationsvorgänge identifiziert und unter Verwendung eines Scale-Up-Faktors gezählt wird, wobei eine angegebene Adresse höher gereiht wird, wenn die Kommunikationsvorgänge des bestimmten Kommunikationstyps öfter mit dieser bestimmten Source-Person als mit einer anderen Source-Person an diese Adresse verortet wurden; und Ausgeben der Liste zur Anzeige.
  2. Verfahren nach Anspruch 1, wobei das Ordnen nach Rang ferner zumindest teilweise auf einer Aktualität der Kommunikationsvorgänge des ersten Kommunikationstyps beruht, und wobei das Sortieren ferner zumindest teilweise auf der Aktualität der Kommunikationsvorgänge des ersten Kommunikationstyps beruht.
  3. Verfahren nach Anspruch 2, wobei das Sortieren zumindest der Vielzahl von Kommunikationsadressen die Klassifizierung auf der Grundlage der Aktualität der Kommunikationsvorgänge des ersten Kommunikationstyps in Buckets umfasst.
  4. Verfahren nach Anspruch 1, wobei das Verfahren ferner umfasst: Durchführen des Sortierens vor dem Erfassen der Anfrage.
  5. Verfahren nach Anspruch 1, wobei die Anfrage eine erste Anfrage umfasst, der neue Kommunikationsvorgang einen ersten neuen Kommunikationsvorgang umfasst, die Liste eine erste Liste umfasst und das Ordnen nach Rang einen ersten Rangordnungsvorgang umfasst, und wobei das Verfahren ferner umfasst: Erfassen einer zweiten Anfrage für eine Vielzahl von Zieladressvorschlägen, wobei die zweite Anfrage von einem dritten Anwendungsprogramm empfangen und einem zweiten neuen Kommunikationsvorgang zugeordnet wird, wobei der zweite neue Kommunikationsvorgang den zweiten Kommunikationstyp umfasst; als Reaktion auf die zweite Anfrage, Senden einer zweiten Liste, umfassend die Vielzahl von Kommunikationsadressen, wobei als Reaktion darauf, dass der zweite neue Kommunikationsvorgang den zweiten Kommunikationstyp umfasst, die Vielzahl der Kommunikationsadressen in der zweiten Liste entsprechend einem zweiten Rangordnungsvorgang geordnet werden, der zumindest teilweise auf der zweiten Vielzahl von Zählwerten beruht und sich von dem ersten Rangordnungsvorgang unterscheidet; und Ausgabe der zweiten Liste zur Anzeige.
  6. Verfahren nach Anspruch 1, wobei die Vielzahl von Kommunikationsadressen Telefonnummern umfasst, der erste Kommunikationstyp einen Telefonanruf-Kommunikationsvorgang umfasst, und der zweite Kommunikationstyp Mitteilungen umfasst, die aus der Gruppe bestehend aus Kurznachrichtendienst-(SMS)-Mitteilungen und Multimediamitteilungsdienst-(MMS)-Mitteilungen ausgewählt wird.
  7. Verfahren nach Anspruch 1, wobei die Vielzahl von Kommunikationsadressen E-Mail Adressen umfassen, der erste Kommunikationstyp einen E-Mail-Kommunikationsvorgang umfasst, und der zweite Kommunikationstyp Mitteilungen umfasst, die aus der Gruppe bestehend aus Kurzmitteilungsdienst-(SMS)-Mitteilungen und Multimediamitteilungsdienst-(MMS)-Mitteilungen ausgewählt wird.
  8. Verfahren nach Anspruch 1, wobei das Verfahren ferner umfasst: Empfangen von Nutzungsaufzeichnungen aus einer Vielzahl von Anwendungsprogrammen, und Definieren der ersten Vielzahl von Zählwerten und der zweiten Vielzahl von Zählwerten auf der Grundlage der empfangenen Nutzungsaufzeichnungen.
  9. Verfahren nach Anspruch 8, wobei das Verfahren ferner umfasst: Bereitstellen einer Abstraktionsschicht, über die die Nutzungsaufzeichnungen empfangen werden und die Anfrage erfasst wird.
  10. Verfahren, umfassend: Bestimmen einer ersten Vielzahl von Zählwerten für Kommunikationsvorgänge einer ersten Anwendungsklasse, wobei jeder Zählwert in der ersten Vielzahl von Zählwerten auf einer entsprechende Menge von Kommunikationsvorgängen der ersten Anwendungsklasse beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Bestimmen einer zweiten Vielzahl von Zählwerten für Kommunikationsvorgänge einer zweiten Anwendungsklasse, wobei jeder Zählwert in der zweiten Vielzahl von Zählwerten auf einer entsprechenden Menge von Kommunikationsvorgängen der zweiten Anwendungsklasse beruht, die an eine entsprechende Kommunikationsadresse aus einer Vielzahl von Kommunikationsadressen verortet wird; Erfassen einer Anfrage für eine Vielzahl von Zieladressvorschlägen, wobei die Anfrage von einem ersten Anwendungsprogramm empfangen und einem ersten neuen Kommunikationsvorgang zugeordnet wird, wobei der neue Kommunikationsvorgang die erste Anwendungsklasse umfasst und eine zugeordnete Source-Person aufweist, wobei einem Benutzer ermöglicht wird, selektiv unter verschiedenen Source-Personen zu arbeiten, die jeweils eine entsprechende Source-Adresse aufweisen, und von denen Kommunikationsvorgänge verortbar sind; Sortieren zumindest der Vielzahl von Kommunikationsadressen auf der Grundlage von zumindest teilweise (i) der ersten Vielzahl von Zählwerten und (ii) der Source-Person, um eine Liste zu erstellen, die die Vielzahl von Kommunikationsadressen, die entsprechend einer Rangordnung geordnet sind, die zumindest teilweise auf der ersten Vielzahl von Zählwerten und ferner zumindest teilweise auf der Source-Person beruht, umfasst, wobei zumindest ein Zählwert aus der ersten Vielzahl von Zählwerten zumindest teilweise auf einem oder mehreren Kommunikationsvorgängen beruht, die von zumindest einem zweiten Anwendungsprogramm, das sich von dem ersten Anwendungsprogramm unterscheidet, verortet werden; als Reaktion auf die Anfrage und den neuen Kommunikationsvorgang, der die erste Anwendungsklasse umfasst und die zugeordnete Source-Person aufweist, Senden einer Liste, die die Vielzahl von Kommunikationsadressen umfasst, die entsprechend einer Rangordnung geordnet sind, die zumindest teilweise auf der ersten Vielzahl von Zählwerten und ferner zumindest teilweise auf der Source-Person beruht, wobei jeder der mit einer bestimmten Source-Person verorteten Kommunikationsvorgänge identifiziert und unter Verwendung eines Scale-Up-Faktors gezählt wird, wobei eine angegebene Adresse höher gereiht wird, wenn die Kommunikationsvorgänge der bestimmten Anwendungsklasse öfter mit dieser bestimmten Source-Person als mit einer anderen Source-Person an diese Adresse verortet wurden; und Ausgeben der Liste zur Anzeige.
  11. Verfahren nach Anspruch 10, wobei die Anfrage eine erste Anfrage umfasst, der neue Kommunikationsvorgang einen ersten neuen Kommunikationsvorgang umfasst, die Liste eine erste Liste umfasst und das Ordnen nach Rang einen ersten Rangordnungsvorgang umfasst, und wobei das Verfahren ferner umfasst: Erfassen einer zweiten Anfrage für eine Vielzahl von Zieladressvorschlägen, wobei die zweite Anfrage von einem dritten Anwendungsprogramm empfangen und einem zweiten neuen Kommunikationsvorgang zugeordnet wird, wobei der zweite neue Kommunikationsvorgang die zweite Anwendungsklasse umfasst; als Reaktion auf die zweite Anfrage, Senden einer zweiten Liste, umfassend die Vielzahl von Kommunikationsadressen, wobei als Reaktion darauf, dass der zweite neue Kommunikationsvorgang die zweite Anwendungsklasse umfasst, die Vielzahl der Kommunikationsadressen in der zweiten Liste entsprechend einem zweiten Rangordnungsvorgang geordnet werden, der zumindest teilweise auf der zweiten Vielzahl von Zählwerten beruht und sich von dem ersten Rangordnungsvorgang unterscheidet; und Ausgabe der zweiten Liste zur Anzeige.
  12. Das Verfahren nach Anspruch 10, wobei sich die erste Anwendungsklasse und die zweite Anwendungsklasse gegenseitig ausschließen.
  13. Das Verfahren nach Anspruch 10, ferner umfassend: vor dem Erfassen der Anfrage, Sortieren durch den Computerprozessor von zumindest der Vielzahl von Kommunikationsadressen auf der Grundlage von zumindest der ersten Vielzahl von Zählwerten von Kommunikationsvorgängen, die von der einen oder den mehreren Anwendungen der ersten Anwendungsklasse an die Vielzahl von Kommunikationsadressen verortet wird, um die Liste zu definieren.
  14. Das Verfahren nach Anspruch 10, wobei das Ordnen nach Rang ferner auf der Grundlage von zumindest teilweise der Kommunikationsvorgangsaktualität durchgeführt wird.
  15. Nicht-transitorisches, computerlesbares Medium mit darauf gespeicherten, von einem Prozessor ausführbaren Programmbefehlen zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 9.
  16. Nicht-transitorisches, computerlesbares Medium mit darauf gespeicherten, von einem Prozessor ausführbaren Programmbefehlen zum Durchführen eines Verfahrens nach einem der Ansprüche 10 bis 14.
DE112012000134.6T 2011-10-06 2012-09-27 Verfahren zur Bereitstellung von Zieladressvorschlägen Active DE112012000134B4 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/267,496 US8209390B1 (en) 2011-10-06 2011-10-06 Method and apparatus for providing destination-address suggestions
US13/267.496 2011-10-06
US13/473,189 2012-05-16
US13/473,189 US8359363B1 (en) 2011-10-06 2012-05-16 Method and apparatus for providing destination-address suggestions
PCT/US2012/057428 WO2013052333A2 (en) 2011-10-06 2012-09-27 Method and apparatus for providing destination-address suggestions

Publications (2)

Publication Number Publication Date
DE112012000134T5 DE112012000134T5 (de) 2013-09-12
DE112012000134B4 true DE112012000134B4 (de) 2016-02-25

Family

ID=46272989

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012000134.6T Active DE112012000134B4 (de) 2011-10-06 2012-09-27 Verfahren zur Bereitstellung von Zieladressvorschlägen

Country Status (7)

Country Link
US (2) US8209390B1 (de)
KR (1) KR101361768B1 (de)
CN (1) CN104429024B (de)
AU (1) AU2013200691C1 (de)
DE (1) DE112012000134B4 (de)
GB (1) GB2499729A (de)
WO (1) WO2013052333A2 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7949714B1 (en) * 2005-12-05 2011-05-24 Google Inc. System and method for targeting advertisements or other information using user geographical information
GB201209987D0 (en) * 2012-06-06 2012-07-18 Microsoft Corp Address system
US8861336B2 (en) * 2013-01-30 2014-10-14 Vonage Network, Llc Systems and methods for integrating route and rank information into call detail records
US8913622B2 (en) 2013-01-30 2014-12-16 Vontage Network, LLC Systems and methods for integrating route and rank information into call detail records
CN104184862B (zh) * 2013-05-27 2016-08-10 腾讯科技(深圳)有限公司 一种快速通讯方法和装置
CN104090886B (zh) * 2013-12-09 2015-09-09 深圳市腾讯计算机系统有限公司 构建用户实时画像的方法及装置
US20150254248A1 (en) 2014-03-07 2015-09-10 Printeron Inc. System for suggesting network resource for use by a network terminal based on network resource ranking
JP6055801B2 (ja) * 2014-08-28 2016-12-27 京セラドキュメントソリューションズ株式会社 通信装置および通信制御プログラム
US10154041B2 (en) * 2015-01-13 2018-12-11 Microsoft Technology Licensing, Llc Website access control
EP3301887A1 (de) * 2016-09-28 2018-04-04 Thomson Licensing Verfahren und vorrichtung zur erstellung einer favoritentelefonliste für mehrere vorrichtungen
FR3066668A1 (fr) * 2017-05-19 2018-11-23 Orange Procede de gestion de reponse
CN107613082A (zh) * 2017-08-28 2018-01-19 广东小天才科技有限公司 一种号码管理方法、装置、智能手表及存储介质
US11805207B2 (en) * 2020-08-28 2023-10-31 Intermetro Communications, Inc. Systems and methods for configuring and dynamically applying call route groups
CN112115373B (zh) * 2020-11-23 2021-02-12 腾讯科技(深圳)有限公司 基于区块链的文件送达管理方法、装置、设备以及介质
CN116541421B (zh) * 2023-07-07 2023-09-12 中关村科学城城市大脑股份有限公司 地址查询信息生成方法、装置、电子设备与计算机介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2023582A1 (de) * 2007-07-30 2009-02-11 Research In Motion Limited Verfahren und System zum Erzeugen einer geordneten Adressenliste
US20090300546A1 (en) * 2008-05-30 2009-12-03 Microsoft Corporation Creation and suggestion of contact distribution lists
US20100299397A1 (en) * 2009-05-23 2010-11-25 Yahoo! Inc. Managing electronic addresses based on communication patterns
GB2471329A (en) * 2009-06-26 2010-12-29 Vodafone Plc Creation of a dynamic contact list in which contacts are ordered depending on their relevance at a point in time.
US20110083079A1 (en) * 2009-10-02 2011-04-07 International Business Machines Corporation Apparatus, system, and method for improved type-ahead functionality in a type-ahead field based on activity of a user within a user interface

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003198708A (ja) * 2001-12-28 2003-07-11 Nec Corp 携帯情報端末及びそれに用いる電話帳表示方法並びにそのプログラム
US7636719B2 (en) * 2002-12-19 2009-12-22 Microsoft Corporation Contact schema
US7240298B2 (en) * 2002-12-19 2007-07-03 Microsoft Corporation Contact page
GB2407732B (en) * 2003-11-03 2007-04-11 Qualcomm Prioritizing phonebook numbers
JP2005159874A (ja) * 2003-11-27 2005-06-16 Mitsubishi Electric Corp 携帯電話機
US7680513B2 (en) * 2005-08-08 2010-03-16 Palm, Inc. Contact-centric user-interface features for computing devices
US7877409B2 (en) * 2005-12-29 2011-01-25 Nextlabs, Inc. Preventing conflicts of interests between two or more groups using applications
US20070161369A1 (en) * 2006-01-11 2007-07-12 Envio Networks Inc. Methods for Intelligent Number Dialing Assistance and Related Marketing Techniques
US8223940B2 (en) 2008-05-02 2012-07-17 Hewlett-Packard Development Company, L.P. Selecting communication mode of communications apparatus
US7930430B2 (en) * 2009-07-08 2011-04-19 Xobni Corporation Systems and methods to provide assistance during address input
US8341230B2 (en) * 2009-10-30 2012-12-25 Research In Motion Limited Method for predicting messaging addresses for an electronic message composed on an electronic device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2023582A1 (de) * 2007-07-30 2009-02-11 Research In Motion Limited Verfahren und System zum Erzeugen einer geordneten Adressenliste
US20090300546A1 (en) * 2008-05-30 2009-12-03 Microsoft Corporation Creation and suggestion of contact distribution lists
US20100299397A1 (en) * 2009-05-23 2010-11-25 Yahoo! Inc. Managing electronic addresses based on communication patterns
GB2471329A (en) * 2009-06-26 2010-12-29 Vodafone Plc Creation of a dynamic contact list in which contacts are ordered depending on their relevance at a point in time.
US20110083079A1 (en) * 2009-10-02 2011-04-07 International Business Machines Corporation Apparatus, system, and method for improved type-ahead functionality in a type-ahead field based on activity of a user within a user interface

Also Published As

Publication number Publication date
GB201303164D0 (en) 2013-04-10
KR101361768B1 (ko) 2014-02-12
CN104429024B (zh) 2016-12-28
AU2013200691B1 (en) 2013-04-04
WO2013052333A3 (en) 2016-03-31
US8359363B1 (en) 2013-01-22
DE112012000134T5 (de) 2013-09-12
CN104429024A (zh) 2015-03-18
US8209390B1 (en) 2012-06-26
KR20130051990A (ko) 2013-05-21
AU2013200691C1 (en) 2013-08-15
WO2013052333A2 (en) 2013-04-11
GB2499729A (en) 2013-08-28

Similar Documents

Publication Publication Date Title
DE112012000134B4 (de) Verfahren zur Bereitstellung von Zieladressvorschlägen
DE60218899T2 (de) Benutzerschnittstelle und verfahren zum betrachten von einheitlichen kommunikationsereignissen in einem mobilen gerät
DE102010054981B4 (de) Kontextsensitives, cloudbasiertes Fernsprechen
US8508570B2 (en) Method to populate contact list from recent call log
DE102011010441A1 (de) Kontextbezogene Zusammenfassung neuerer Kommunikation, Verfahren und Vorrichtung
DE202009019142U1 (de) Nachrichtenanwendung mit mehreren Ansichtsfenstern zur Darstellung von Nachrichten in unterschiedlichen Reihenfolgen
DE202011110862U1 (de) Prioritäts-Inbox-Mitteilungen und Synchronisierung für mobile Nachrichtenanwendungen
DE102010012550A1 (de) Verfahren und Vorrichtung zur Kommunikationssitzungsvorbereitung
DE102011010686A1 (de) Kontextabhängige Korrelationsmaschine
DE202011110866U1 (de) Identifizierung von Nachrichtenempfängern
DE112010003363T5 (de) Mehrfache anwenderidentität und brückendarstellung
DE102011010684A1 (de) Zeitüberwacher für berufliche Zwecke
DE102010013575A1 (de) Dynamischer IVR-Dialog auf der Basis von Analytikdaten
DE102013015156B4 (de) System und Verfahren zum Ermitteln des Präsenzstatus eines in einem Netzwerk registrierten Benutzers
DE102008029805B4 (de) Intelligentes verkürztes Mehrkanal-Erinnerungsverfahren und Mittel für eine tragbare Vorrichtung
EP2922015A1 (de) Verfahren und Vorrichtung zur Steuerung einer Konferenz
DE102010012549B4 (de) Verfahren und Vorrichtung für sequentiell geordnete Telefonie-Anwendungen nach dem Verbindungsabbau
DE602004009948T2 (de) Drahtloses telefonsystem mit voice-over-ip und pots
DE102015008874A1 (de) Daten von Komplementdokumenten für Web-Dienste im Internet.
DE10113429B4 (de) E-Mail Gerät, Verfahren zum Erzeugen einer Gruppe von Mail-Adressen, sowie Computerlesbares Medium
DE602005003576T2 (de) Verfahren und Vorrichtung zur Vorhersage von Nachrichtenempfängern
DE102016112685B4 (de) Harmonisieren von Telefonkonversationen unter Einbeziehung von eingebetteten Vorrichtungen und sozialen Medienanwendungen
DE102008008318A1 (de) Verfahren zur automatischen Generierung von Adressbucheinträgen
EP2198574B1 (de) Teilen von emails zwischen zwei benutzern mit hilfe eines servers
EP1954018A2 (de) Verfahren und Einrichtung zum Steuern des Aufbaus von Kommunikationsverbindungen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: GRUENECKER PATENT- UND RECHTSANWAELTE PARTG MB, DE