CA2469503A1 - Instant messaging object store - Google Patents

Instant messaging object store Download PDF

Info

Publication number
CA2469503A1
CA2469503A1 CA002469503A CA2469503A CA2469503A1 CA 2469503 A1 CA2469503 A1 CA 2469503A1 CA 002469503 A CA002469503 A CA 002469503A CA 2469503 A CA2469503 A CA 2469503A CA 2469503 A1 CA2469503 A1 CA 2469503A1
Authority
CA
Canada
Prior art keywords
data
location
retrieving
recited
hash value
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.)
Granted
Application number
CA002469503A
Other languages
French (fr)
Other versions
CA2469503C (en
Inventor
David Michael Miller
John Holmes
Walter Vonkoch
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CA2469503A1 publication Critical patent/CA2469503A1/en
Application granted granted Critical
Publication of CA2469503C publication Critical patent/CA2469503C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G06Q50/40
    • 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/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

A method includes receiving a name associated with a user on a remote computer, the name including location data and a hash value uniquely associated with a data object representing the user and retrieving the data object from one of a local cac he based on the hash value or a location identified by the location data. A system for managing objects representing users in an instant messaging conversation includes a data obje ct representing a user, the data object having an object name including a location identifier and a hash value, the object name allowing, and an object store operable to retrieve the data object from a location identified by the location identifier and store the data object in a local cache based on the hash value.

Claims (22)

1. A method for communicating object data comprising:
generating a hash value based on object data representing a user of a local computer;
storing the object data at a storage location; and returning an object name having the hash value and a location identifier identifying the storage location, the object name enabling a user of a remote computer to access the object data.
2. A method as recited in claim 1 further comprising:
receiving a request for the object data, the request including the object name; and retrieving the object data from a local cache based on the hash value.
3. A method as recited in claim 1 further comprising:
receiving a request for the object data, the request including the object name; and in response to receiving the request, retrieving the object data from the location using the location identifier.
4. A method as recited in claim 1 further comprising:
receiving a request for the object data, the request including the object name; and determining whether the requested object data is in a local cache based on the hash value; and if the requested object data is in the local cache, retrieving the object data from the local cache, otherwise, retrieving the requested object data from the location identified by the location identifier.
5. A method as recited in claim 4 wherein the retrieving the requested object data from the location identified by the location identifier comprises:
retrieving the requested object data from network storage.
6. A method as recited in claim 4 wherein the retrieving the requested object data from the location identified by the location identifier comprises:
retrieving the requested object data from a local file system.
7. A method as recited in claim 4 wherein the retrieving the requested object data from the location identified by the location identifier comprises:
retrieving the requested object data from a remote file system.
8. A method as recited in claim 7 wherein the retrieving the requested object data from a remote file system comprises:
accessing the remote file system via a peer-to-peer connection.
9. A method as recited in claim 7 wherein the retrieving the requested object data from a remote file system comprises:

accessing the remote file system via a connection through a switchboard server.
10. A computer-readable medium having stored thereon computer-executable instructions for performing a method comprising:
receiving a name associated with a user on a remote computer, the name including location data and a hash value uniquely associated with a data object representing the user; and retrieving the data object from one of a local cache based on the hash value or a location identified by the location data.
11. A computer-readable medium as recited in claim 10 wherein the retrieving the data object from one of a local cache based on the hash value or a location identified by the location data comprises:
determining whether the data object is in a local cache based on the hash value;
and if the data object is in the local cache, retrieving the data object from the local cache;
otherwise, retrieving the data object from the location identified by the location data.
12. A computer-readable medium as recited in claim 11 wherein the retrieving the data object from the location identified by the location data comprises retrieving the data object from a remote file system.
13, A computer-readable medium as recited in claim 11 wherein the retrieving the data object from the location identified by the location data comprises retrieving the data object from a local file system.
14. A computer-readable medium as recited in claim 11 wherein the retrieving the data object from the location identified by the location data comprises retrieving the data object from a network storage.
15. A computer-readable medium as recited in claim 11 wherein the retrieving the data object from the location identified by the location data comprises accessing a remote computer via a peer-to-peer connection.
16. A system for managing objects representing users in an instant messaging conversation, the system comprising:
a data object representing a user, the data object having an object name including a location identifier and a hash value, the object name allowing; and an object store operable to retrieve the data object from a location identified by the location identifier and store the data object in a local cache based on the hash value.
17. A system as recited in claim 16 wherein the object name further comprises a creator identifier identifying a creator of the data object.
18. A system as recited in claim 16 further comprising a transport protocol stack enabling the object store to retrieve the data object from a remote storage location over a peer-to-peer connection.
19. A system as recited in claim 16 wherein the data object further comprise metadata descriptive of the data object.
20. A system as recited in claim 19 wherein the metadata comprises:
a friendly name field;
a type field indicating a type of data object; and a hash value based on the metadata.
21. A system as recited in claim 16 wherein the location identifier comprises a uniform resource locator (URL).
22. A system as recited in claim-16 wherein the location identifier comprises a uniform resource identifier (URI).
CA2469503A 2003-07-01 2004-06-01 Instant messaging object store Expired - Fee Related CA2469503C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/611,599 2003-07-01
US10/611,599 US7539727B2 (en) 2003-07-01 2003-07-01 Instant messaging object store

Publications (2)

Publication Number Publication Date
CA2469503A1 true CA2469503A1 (en) 2005-01-01
CA2469503C CA2469503C (en) 2011-12-13

Family

ID=33435438

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2469503A Expired - Fee Related CA2469503C (en) 2003-07-01 2004-06-01 Instant messaging object store

Country Status (10)

Country Link
US (1) US7539727B2 (en)
EP (1) EP1494411B1 (en)
JP (1) JP4515839B2 (en)
KR (1) KR101076857B1 (en)
CN (1) CN100499596C (en)
AT (1) ATE481803T1 (en)
BR (1) BRPI0402530A (en)
CA (1) CA2469503C (en)
DE (1) DE602004029119D1 (en)
MX (1) MXPA04006450A (en)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7558828B1 (en) * 2003-05-29 2009-07-07 Aol Llc, A Delaware Limited Liability Company Enabling electronic logging using an instant message system
US7363378B2 (en) * 2003-07-01 2008-04-22 Microsoft Corporation Transport system for instant messaging
US7539727B2 (en) * 2003-07-01 2009-05-26 Microsoft Corporation Instant messaging object store
US7484175B2 (en) * 2003-09-30 2009-01-27 International Business Machines Corporation Method and apparatus for increasing personability of instant messaging with user images
US8171084B2 (en) * 2004-01-20 2012-05-01 Microsoft Corporation Custom emoticons
US7430720B2 (en) * 2004-03-05 2008-09-30 America Online, Inc. System and method for preventing screen-scrapers from extracting user screen names
WO2005084132A2 (en) * 2004-03-08 2005-09-15 First Oversi Ltd A method and device for peer to peer file sharing
US7933958B2 (en) * 2004-06-08 2011-04-26 International Business Machines Corporation Real-time blog interaction
KR100456487B1 (en) * 2004-08-02 2004-11-09 엔에이치엔(주) personal icon providing system and method thereof
US7433700B2 (en) 2004-11-12 2008-10-07 Microsoft Corporation Strategies for peer-to-peer instant messaging
US20060195532A1 (en) * 2005-02-28 2006-08-31 Microsoft Corporation Client-side presence documentation
US7529255B2 (en) 2005-04-21 2009-05-05 Microsoft Corporation Peer-to-peer multicasting using multiple transport protocols
US7966292B1 (en) 2005-06-30 2011-06-21 Emc Corporation Index processing
US8161005B1 (en) 2005-06-30 2012-04-17 Emc Corporation Efficient index processing
US8156079B1 (en) * 2005-06-30 2012-04-10 Emc Corporation System and method for index processing
US7627609B1 (en) 2005-09-30 2009-12-01 Emc Corporation Index processing using transformed values
US7752211B1 (en) 2005-09-30 2010-07-06 Emc Corporation Adaptive index processing
US7698325B1 (en) 2005-09-30 2010-04-13 Emc Corporation Index processing for legacy systems
EP1938520B1 (en) * 2005-10-21 2010-08-04 Research In Motion Limited Instant messaging device/server protocol
US8520850B2 (en) * 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
SG145583A1 (en) * 2007-02-22 2008-09-29 Yokogawa Electric Corp System for managing information in a mesh network
CN101257411B (en) * 2007-03-02 2011-04-13 华硕电脑股份有限公司 Method and system for monitoring real-time communication
DE102007010789A1 (en) 2007-03-02 2008-09-04 Deutsche Thomson Ohg Method for operating network, particularly home network, involves generating functional command, which is configured to carry out assigned function into network station
US9275401B2 (en) * 2007-09-06 2016-03-01 Adobe Systems Incorporated Tamper resistant video rendering
JP4607936B2 (en) * 2007-10-31 2011-01-05 株式会社東芝 Data transfer method and data transfer system
JP4607937B2 (en) * 2007-10-31 2011-01-05 株式会社東芝 Cache method and cache device
US7916863B2 (en) * 2007-11-30 2011-03-29 Hewlett-Packard Development Company, L.P. Security printing method and system for enhancing security printing
TWI395139B (en) * 2009-05-27 2013-05-01 Apacer Technology Inc An electronic device and it's power-on method
KR101626117B1 (en) 2009-06-22 2016-05-31 삼성전자주식회사 Client, brokerage sever and method for providing cloud storage
US8121993B2 (en) * 2009-10-28 2012-02-21 Oracle America, Inc. Data sharing and recovery within a network of untrusted storage devices using data object fingerprinting
CA2718696C (en) 2010-06-08 2018-06-12 Merge Healthcare, Inc. Remote control of medical devices using instant messaging infrastructure
US8627411B2 (en) 2010-06-17 2014-01-07 Microsoft Corporation Techniques to share binary content
US9436685B2 (en) 2010-12-23 2016-09-06 Microsoft Technology Licensing, Llc Techniques for electronic aggregation of information
US20120166953A1 (en) * 2010-12-23 2012-06-28 Microsoft Corporation Techniques for electronic aggregation of information
US9679404B2 (en) 2010-12-23 2017-06-13 Microsoft Technology Licensing, Llc Techniques for dynamic layout of presentation tiles on a grid
US9715485B2 (en) 2011-03-28 2017-07-25 Microsoft Technology Licensing, Llc Techniques for electronic aggregation of information
JP6284489B2 (en) * 2012-01-10 2018-02-28 ユニコム・システムズ,インコーポレーテッド Cloud-based distributed data system
KR101295209B1 (en) * 2012-02-01 2013-09-12 엔에이치엔(주) Group messaging system, method and computer readable recording medium for providing file sharing through bidirectional interlock with a cloud server
US8938428B1 (en) 2012-04-16 2015-01-20 Emc Corporation Systems and methods for efficiently locating object names in a large index of records containing object names
US10212046B2 (en) * 2012-09-06 2019-02-19 Intel Corporation Avatar representation of users within proximity using approved avatars
US10708203B2 (en) * 2014-06-25 2020-07-07 Convergence Acceleration Solutions, Llc Systems and methods for indicating emotions through electronic self-portraits

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278955A (en) * 1990-06-18 1994-01-11 International Business Machines Corporation Open systems mail handling capability in a multi-user environment
US5446888A (en) 1994-01-14 1995-08-29 Pyne; Charles F. Remote file transfer method and apparatus
JPH07311704A (en) * 1994-05-19 1995-11-28 Fujitsu Ltd Directory system
US7013327B1 (en) 1996-02-16 2006-03-14 G&H Nevada -Tek Method and apparatus for computing within a wide area network
US5943478A (en) * 1997-04-04 1999-08-24 Flash Communications, Inc. System for immediate popup messaging across the internet
US6003088A (en) * 1997-08-29 1999-12-14 International Business Machines Corporation Blocking IP datagrams in a multi-path channel point-to-point environment
US5987515A (en) * 1997-08-29 1999-11-16 International Business Machines Corporation Internet protocol assists using multi-path channel protocol
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
US6292880B1 (en) * 1998-04-15 2001-09-18 Inktomi Corporation Alias-free content-indexed object cache
US6252588B1 (en) 1998-06-16 2001-06-26 Zentek Technology, Inc. Method and apparatus for providing an audio visual e-mail system
US6463078B1 (en) * 1998-07-22 2002-10-08 Microsoft Corporation Method for switching protocols transparently in multi-user applications
US6490615B1 (en) * 1998-11-20 2002-12-03 International Business Machines Corporation Scalable cache
BR0009874A (en) * 1999-04-26 2002-01-22 Nokia Mobile Phones Ltd System comprising a server and at least one terminal in a radio communication, server to provide and update a first application in a terminal via radio communication, and, method to provide the functionality of an application in a browser
TW428146B (en) * 1999-05-05 2001-04-01 Inventec Corp Data file updating method by increment
US7286115B2 (en) * 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US6549937B1 (en) * 1999-07-21 2003-04-15 Microsoft Corporation System and method for multi-protocol communication in a computer network
US6434568B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6535867B1 (en) * 1999-09-29 2003-03-18 Christopher J. F. Waters System and method for accessing external memory using hash functions in a resource limited device
JP2001175550A (en) * 1999-12-07 2001-06-29 Kizna.Com Inc Client/server system, data transmitting method for the same, and medium with program recorded thereon
US6993559B2 (en) 2000-02-14 2006-01-31 Bigbow.Com, Inc. System, method, apparatus and computer program product for operating a web site by electronic mail
US7031956B1 (en) * 2000-02-16 2006-04-18 Verizon Laboratories Inc. System and method for synchronizing and/or updating an existing relational database with supplemental XML data
US6594665B1 (en) * 2000-02-18 2003-07-15 Intel Corporation Storing hashed values of data in media to allow faster searches and comparison of data
ES2239564T3 (en) * 2000-03-01 2005-10-01 Sony International (Europe) Gmbh USER PROFILE DATA MANAGEMENT.
WO2001071992A2 (en) 2000-03-22 2001-09-27 Omnipod, Inc. Integrated system and method of providing online access to files and information
WO2001093503A2 (en) 2000-05-31 2001-12-06 Snip, Llc Method and system for instant messaging
US6453294B1 (en) * 2000-05-31 2002-09-17 International Business Machines Corporation Dynamic destination-determined multimedia avatars for interactive on-line communications
ATE502477T1 (en) * 2000-07-25 2011-04-15 America Online Inc VIDEO MESSAGING
US20020036990A1 (en) 2000-09-11 2002-03-28 Ben Chodor Still picture capture, editing and distribution system utilizing a publicly accessible wide area network
US7222184B2 (en) 2000-11-29 2007-05-22 Ncr Corporation Method of downloading web content to a network kiosk in advance
KR100377936B1 (en) * 2000-12-16 2003-03-29 삼성전자주식회사 Method for inputting emotion icon in mobile telecommunication terminal
WO2002057917A2 (en) 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
US20020107925A1 (en) 2001-02-05 2002-08-08 Robert Goldschneider Method and system for e-mail management
US20020194006A1 (en) 2001-03-29 2002-12-19 Koninklijke Philips Electronics N.V. Text to visual speech system and method incorporating facial emotions
US7080139B1 (en) * 2001-04-24 2006-07-18 Fatbubble, Inc Method and apparatus for selectively sharing and passively tracking communication device experiences
US7171415B2 (en) 2001-05-04 2007-01-30 Sun Microsystems, Inc. Distributed information discovery through searching selected registered information providers
US6983305B2 (en) * 2001-05-30 2006-01-03 Microsoft Corporation Systems and methods for interfacing with a user in instant messaging
US6813690B1 (en) * 2001-06-12 2004-11-02 Network Appliance, Inc. Caching media data using content-sensitive identifiers
US7149189B2 (en) 2001-07-17 2006-12-12 Mcafee, Inc. Network data retrieval and filter systems and methods
US6987991B2 (en) * 2001-08-17 2006-01-17 Wildseed Ltd. Emoticon input method and apparatus
US7765484B2 (en) * 2001-09-28 2010-07-27 Aol Inc. Passive personalization of lists
NO315679B1 (en) * 2001-10-19 2003-10-06 Dmates As Rich communication over the internet
US7233979B2 (en) * 2002-03-14 2007-06-19 Microsoft Corporation Instant messaging session invite for arranging peer-to-peer communication between applications
US7203356B2 (en) * 2002-04-11 2007-04-10 Canesta, Inc. Subject segmentation and tracking using 3D sensing technology for video compression in multimedia applications
US6629793B1 (en) 2002-04-26 2003-10-07 Westie Intellectual Properties Limited Partnership Emoticon keyboard
US20030225848A1 (en) * 2002-05-31 2003-12-04 Brian Heikes Remote instant messaging personalization items
US7779076B2 (en) * 2002-05-31 2010-08-17 Aol Inc. Instant messaging personalization
US7689649B2 (en) * 2002-05-31 2010-03-30 Aol Inc. Rendering destination instant messaging personalization items before communicating with destination
US7552204B2 (en) * 2002-05-15 2009-06-23 Microsoft Corporation Method and system for supporting the communication of presence information among computing devices of a network
US20030217142A1 (en) * 2002-05-15 2003-11-20 Microsoft Corporation Method and system for supporting the communication of presence information regarding one or more telephony devices
EP2469716B1 (en) 2002-06-26 2013-12-04 Yahoo! Inc. System and method for communicating images between intercommunicating users
US7353253B1 (en) 2002-10-07 2008-04-01 Webex Communicatons, Inc. Peer-to-peer messaging system
WO2004046949A1 (en) * 2002-11-18 2004-06-03 America Online, Inc. Handling a multimedia object associated with an electronic message
US7289520B2 (en) * 2002-11-20 2007-10-30 Hewlett-Packard Development Company, L.P. Method, apparatus, and system for expressway routing among peers
US7185285B2 (en) * 2003-02-19 2007-02-27 Microsoft Corporation User interface and content enhancements for real-time communication
US7296223B2 (en) * 2003-06-27 2007-11-13 Xerox Corporation System and method for structured document authoring
WO2005017660A2 (en) 2003-07-01 2005-02-24 Apple Computer, Inc. Peer-to-peer content sharing
US7539727B2 (en) * 2003-07-01 2009-05-26 Microsoft Corporation Instant messaging object store
US20050027839A1 (en) 2003-07-31 2005-02-03 International Business Machiness Corporation Method, system and program product for dynamic transmission in a messaging session
US7437374B2 (en) * 2004-02-10 2008-10-14 International Business Machines Corporation Efficient XML schema validation of XML fragments using annotated automaton encoding
US20060015560A1 (en) * 2004-05-11 2006-01-19 Microsoft Corporation Multi-sensory emoticons in a communication system
US20050273472A1 (en) * 2004-06-04 2005-12-08 Prakash Reddy Verifying incremental updates to hierarchicaly structured information
US7437364B1 (en) * 2004-06-30 2008-10-14 Google Inc. System and method of accessing a document efficiently through multi-tier web caching
US7302270B1 (en) * 2004-08-02 2007-11-27 Cisco Technology, Inc. Time interval processing and annotation in presence systems

Also Published As

Publication number Publication date
ATE481803T1 (en) 2010-10-15
KR20050004060A (en) 2005-01-12
CA2469503C (en) 2011-12-13
EP1494411A1 (en) 2005-01-05
CN100499596C (en) 2009-06-10
JP4515839B2 (en) 2010-08-04
CN1578279A (en) 2005-02-09
US7539727B2 (en) 2009-05-26
BRPI0402530A (en) 2005-05-24
KR101076857B1 (en) 2011-10-25
DE602004029119D1 (en) 2010-10-28
MXPA04006450A (en) 2005-08-19
EP1494411B1 (en) 2010-09-15
US20050004993A1 (en) 2005-01-06
JP2005025759A (en) 2005-01-27

Similar Documents

Publication Publication Date Title
CA2469503A1 (en) Instant messaging object store
JP2005025759A5 (en)
RU2005124131A (en) INFORMATION PROCESSING DEVICE, CONTENT MANAGEMENT METHOD, CONTENT INFORMATION MANAGEMENT METHOD AND COMPUTER PROGRAM
US8650164B2 (en) Efficient storage and retrieval for large number of data objects
US11509613B2 (en) System and method for enabling an external-system view of email attachments
CN103581230B (en) Document transmission system and method, receiving terminal, transmitting terminal
US9148332B2 (en) Content delivery network
CA2448423A1 (en) Method and system for tracking receipt of electronic message
US20110099226A1 (en) Method of requesting for location information of resources on network, user node and server for the same
JP2004533668A5 (en)
US20040205133A1 (en) System and method for intelligent transmission of digital content embedded in electronic mail messages
RU2012142685A (en) METHOD AND NODE FOR GETTING CONTENT AND CONTENT NETWORK
US20100023489A1 (en) Method of distributing contents and system
JP2010531026A5 (en)
JP2007293855A5 (en)
JP2017521929A (en) Remote information query method and server
CN110399348A (en) File deletes method, apparatus, system and computer readable storage medium again
CA2515323A1 (en) Apparatus and method for synchronizing databases by comparing hash values
JP2003108419A5 (en) Electronic album publishing system, electronic album management apparatus, electronic album management method and program
US20110302138A1 (en) Network aware storage device
CN102006500A (en) Video dragging method and device applied to cache server
KR101169041B1 (en) Cache server and mutimedia contens providing method
CN103902577B (en) Method and system for searching and locating resources
US20060085379A1 (en) Automatic subscriptions to documents based on user navigation behavior
TW200928799A (en) Collaborative tagging systems and methods for resources

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20150601