`
`US8,750,906 B2
`(10) Patent No.:
`a2) United States Patent
`Jun. 10, 2014
`(45) Date of Patent:
`Winkleretal.
`
`
`(54) DYNAMIC ELEMENTS ON A MAP WITHIN A
`MOBILE DEVICE, SUCH AS ELEMENTS
`THAT FACILITATE COMMUNICATION
`BETWEEN USERS
`
`(75)
`
`Inventors: David Winkler, Seattle, WA (US);
`Randy Meyerson, Seattle, WA (US);
`i
`Edward Carrigan, Edmonds, WA (US)
`.
`.
`(73) Assignee: T-Mobile USA,Inc., Bellevue, WA (US)
`
`(*) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`US.C. 154(b) by 1066 days.
`
`.
`(21) Appl. No.: 12/390,367
`:
`(22)
`Filed:
`Feb. 20, 2009
`a.
`;
`Prior Publication Data
`
`(65)
`
`9/2001 Marcusetal.
`6,295,528 Bl
`erie eons
`6,377,793 BI
`eeeBD 1pooo eee
`6,647,257 B2
`11/2003 Owensby
`6,681,107 B2
`1/2004.
`Jenkinset al.
`6,720,956 Bl
`4/2004 Honmaetal.
`ae BS Doves en \
`5890,
`oot
`et al.
`6.845.324 B2
`1/2005 Smith
`6,868,410 B2
`3/2005 Fortin etal.
`6,973,386 B2* 12/2005 Gibbs... 340/995.14
`7,116,985 B2
`10/2006 Wilsonetal.
`7,167,910 B2*
`1/2007 Farnham etal.
`7,363,024 B2
`4/2008 Jenkins
`7,743,337 BI*
`6/2010 Maedaetal. ou... 715/781
`.. 701/201
`7,822,539 B2* 10/2010 Akiyoshiet al.
`
`7,853,273 B2* 12/2010 Beyer, Jr vce 455/457
`............ 455/456.3
`8,000,726 B2*
`8/2011 Altmanetal.
`2002/0067308 Al
`6/2002 Robertson
`2003/0004743 Al
`1/2003. Callegari
`2003/0107490 Al
`6/2003. Sznaider et al.
`2003/0202104 Al
`10/2003 Werner
`
`.............. 709/223
`
`US 2010/0216491 Al
`
`Aug. 26, 2010
`
`(Continued)
`
`(S51)
`
`Int. Cl.
`HO4W 24/00
`(52) U.S. Cl.
`USPC coeceeeccccceteee 455/457; 455/456.1; 455/456.2;
`455/456.3; 455/456.5; 455/456.6; 455/404.2;
`455/414.1; 455/418; 455/419; 455/420; 340/988;
`
`(2009.01)
`
`OTHER PUBLICATIONS
`
`US 2006/0276138 Al, 12/2006, Pummill et al. (withdrawn).
`Continued
`(Continued)
`
`340/995.1; 340/995.12; teaOLats
`
`Primary Examiner — Olumide T Ajibade Akonai
`
`(58) Field of Classification Search
`USPC ccccccssssseeseeeee 455/404.1, 404.2, 414.1, 414.2,
`455/418-420, 456.1457, 466, 518, 519,
`455/550.1, 556.1, 556.2, 566; 701/200,
`701/201, 211, 212; 340/988—990, 995.1,
`340/995.11, 995.12, 995.14, 995.15
`See application file for complete search history.
`Ref
`Cited
`eferences
`Cite
`U.S. PATENT DOCUMENTS
`
`(56)
`
`5,432,542 A
`5,740,538 A
`
`7/1995 Thibadeauetal.
`4/1998 Joyce et al.
`
`(57)
`
`ABSTRACT
`
`A system and method for providing information on a map
`displayed by a mobile device is described. In some examples,
`the system facilitates user control of map elements, such as
`dynamically changing map elements based on events that
`occurat a user’s mobile deviceorat locations associated with
`the map elements. In some examples, the system enables
`communication between users via map elements.
`
`30 Claims, 9 Drawing Sheets
`
`
`
`
`
`
`
`
`
`ThomasG
`fould youlike to send a
`friend request to ThomasG
`
`
`
`Snap Inc. Ex. 1004 Page 0001
`
`Snap Inc. Ex. 1004 Page 0001
`
`
`
`US 8,750,906 B2
`Page 2
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`2004/0076279 Al
`2004/0108375 Al
`2004/0192299 Al
`2004/0264461 Al
`2005/0131639 Al
`2005/0227711 Al
`2005/0261012 Al
`2006/0089160 Al
`2006/0270421 Al
`2007/0069923 Al*
`2007/0073717 Al
`2007/0270163 Al
`2008/0113614 Al
`2008/0167004 Al
`2009/0005981 Al*
`2009/0024315 Al*
`2009/0112467 Al*
`2009/0160859 Al*
`2009/0191840 Al
`2009/0291630 Al
`2010/0023895 Al
`2010/0093373 Al
`2010/0182145 Al
`2010/0205242 Al*
`2010/0234046 Al
`
`4/2004 Taschereau
`6/2004 Maillard
`9/2004 Wilsonet al.
`12/2004 Janneteauet al.
`6/2005 Broussardet al.
`10/2005 Orwantet al.
`11/2005 Weiser
`4/2006 Othmer
`11/2006 Phillips et al.
`3/2007 Mendelson... 340/988
`3/2007 Rameretal.
`11/2007 Anupam etal.
`5/2008 Rosenblatt
`7/2008 Jenkins
`1/2009 Forstall et al. oe 701/211
`1/2009 Scheibe .......
`ws 701/208
`4/2009 Jiang etal.
`...
`wee TOV/211
`6/2009 Horowitz et al. 0.0.0... 345/440
`7/2009 Piett et al.
`11/2009 Dunn etal.
`1/2010 Benkoetal.
`4/2010 Olssonet al.
`7/2010 Ungari
`8/2010 Marchioro etal.
`9/2010 Wood
`
`
`
`........... 709/203
`
`OTHER PUBLICATIONS
`
`“WARN”Act Rules Released,” Commercial Mobile Alert System:
`CommLaw Blog, Aug. 14, 2008, http://www.commlawblog.com/
`tags/commercial-mobile-alert-system/
`[Last Accessed Apr. 27,
`2010], 2 pages.
`“Enkin Blog: Navigation reinvented,” Max Braun & Rafael Spring,
`Dec. 7, 2009, http://enkinblog.blogspot.com/ [Last Accessed Apr.27,
`2010], 4 pages.
`“Enkin on Vimeo,”http://vimeo.com/843 168 [Last Accessed Apr.27,
`2010], 5 pages.
`“GeoRSS,” Wikipedia, http://en.wikipedia.org/wiki/GeoRSS, May
`19, 2009 [Last Accessed Apr. 26, 2010], 4 pages.
`“GeoRSS: Geographically Encoded Objects for RSS feeds,” http://
`georss.org [Last Accessed Apr. 26, 2010], 2 pages.
`
`“Googe Maps Help Center,” Google Maps, http://maps.google.com/
`support/bin/answer.py?hl=en&answer=68480 [Accessed Apr. 26,
`2010], 8 pages.
`“Lan-based uma network controller with proxy connection,”
`FreshPatents.com, Dec. 17, 2006, http://www.freshpatents.com/Lan-
`based-uma-network-controller-with-proxy-connection-
`dt20061207ptan20060276138.php [Accessed Apr. 27, 2010], 4
`pages.
`“Whatis Slam?”, SLAM,http://www.msslam.com/About.aspx [Last
`Accessed Apr. 26, 2010], 4 pages.
`Bourke, Paul, “Determining If a Point Lies on the Interior of a
`Polygon,” Nov. 1987, http://local.wasp.uwa.edu.au/~pbourke/geom-
`etry/insidepoly/ [Last Accessed Apr. 27, 2010], 6 pages.
`Charles, Dan, “GPS is Smartening Up Your Cell Phone,” NPR, May
`20,
`2008,
`http://www.npr.org/templates/story/story.
`php?storyId=6097216 [Last Accessed Apr. 27, 2010], 4 pages.
`International Search Report and Written Opinion,
`International
`Application No. PCT/US2009/037450, Filed on Mar. 17, 2009,
`Applicant: T-Mobile, USA,Inc., Date of Mailing: May 14, 2009, 10
`pages.
`Jaffe, Alexanderetal., “Generating Summaries and Visualization for
`Large Collections of Geo-Referenced Photographs,” MIR ’06, Oct.
`26-27, 2006, Santa Barbara, California, USA, 10 pages.
`Mologogo, http://www.mologogo.com [Last Accessed Apr. 26,
`2010], 3 pages.
`Reardon, Marguerite, “Verizon Wireless adds friend-finding ser-
`vice,’ CNET Reviews, Mar. 28, 2008, http://reviews.cnet.com/8300-
`12261_7-51.html?keyword=GPS [Last Accessed May 20, 2008], 1
`page.
`“Global Imagination—Creators of the Dynamic and. Interactive
`Planet Video Globe,” Copyright 2008,http://www.globeimagination.
`com/index.html [Last Accessed Jun. 3, 2010], 2 pages.
`“Interactive Talking Globe, Gray Base,” National Geographic Soci-
`ety, Copyright 2009, 5 pages.
`“Video: Microsoft’s Sphere display in action,” Seattle pi Blogs,
`http://blog.seattlepi.com/microsoft/archives/144629.asp
`[Last
`Accessed Jun. 3, 2010], 10 pages.
`“Whrrl—Are You In? Check In to Join Societies,” http://whrrl.com/
`home[Last Accessed Jun. 3, 2010], 1 page.
`Honan, Mathew,“I Am Here: One Man’s Experience With the Loca-
`tion-Aware Lifestyle,” Wired Magazine, Jan. 19, 2009, 5 pages.
`
`* cited by examiner
`
`Snap Inc. Ex. 1004 Page 0002
`
`Snap Inc. Ex. 1004 Page 0002
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 1 of 9
`
`US 8,750,906 B2
`
`100
`
`userinput
`component
`
`user output
`component
`
`115
`
`120
`
`data storage
`
`processor
`
`125
`
`130
`
`
`
`radio/wireless
`interface
`
`determination
`
`other
`communication
`components
`
`FIG. 1
`
`Snap Inc. Ex. 1004 Page 0003
`
`Snap Inc. Ex. 1004 Page 0003
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 2 of 9
`
`US 8,750,906 B2
`
`lOOO0}
`
`3°
`
`VeDIA
`
`0c
`
`Snap Inc. Ex. 1004 Page 0004
`
`Snap Inc. Ex. 1004 Page 0004
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 3 of 9
`
`US 8,750,906 B2
`
`
` 252
`(e.g.,
`
`
`
`datanetwork
`
`TCP/IP) FIG.2B
`
` area
`
` (e.g.,Cell/GSM) wirelesswide
`network
`
`
`
`Snap Inc. Ex. 1004 Page 0005
`
`Snap Inc. Ex. 1004 Page 0005
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 4 of 9
`
`US 8,750,906 B2
`
`300
`
`generate map element based
`on userinput
`
`place element on map
`
`320
`
`330
`
`receive selection of element
`from different user
`
`inpu
`
`340
`
`receive input from different
`user
`
`350
`
`update elementto present
`
`FIG. 3
`
`Snap Inc. Ex. 1004 Page 0006
`
`Snap Inc. Ex. 1004 Page 0006
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 5 of 9
`
`US 8,750,906 B2
`
`Ofer
`
`
`
`OQ)$0PUI]JO}DEIEYSD
`
`jooo—|JUaWILOD
`
`aol—zJUSLULWOD
`
`
`
`
`
`SBdlyWINS]LUaIOF—€JUBLILUOD
`
`‘peAOWAl$1UOIHEOUNI-WYYeIS)
`
`|sewoylord]
`
`
`
`
`
`BSEYMAIApapuadxaaul
`
`
`
`
`
`UOSq]!SO|S90]LUNpI!JSa1eed
`
`$JOMS|
`
`yusWWOSppy
`
`cer
`
`dhDIA
`
`VPOIA
`
`LLY
`
`CLP
`
`SLY
`
`Snap Inc. Ex. 1004 Page 0007
`
`Snap Inc. Ex. 1004 Page 0007
`
`
`
`
`
`O9Paol—ZJUBLUWIOD
`
`[x]sSsewoyloid|
`
`‘POAOWISIUONEOUNA-WEIS
`
`SEIyWNSd!WeI0]—¢JUBUIIOD
`
`
`
`"OQ!JOJUN]Je}OeseYyo
`
`joo—|JuaWWOD
`
`aolu—ZJUaWIWOD
`
`
`
`
`
`BSeyMOIApopuedxeau)
`
`
`
`
`
`
`
`uOSsq]!S8>]S80]LuNp|!Is9s9e9
`
`SJaMSI
`
`DtDIA
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 6 of 9
`
`US 8,750,906 B2
`
`SIJUDWLUODMON—pJUaUILOD
`
`SPJWINS!WaJ0]—¢JUBWILOD
`‘PSAOWUA!S]UONEOUNA-WWE
`
`
`
`UOSq]I$Oy|S90]IS8uee9WNP]
`
`
`Ja}DeeY9eSEYMAIApapuadxea9u}
`dhDIA[esoi9|yusUNWOSppy
`"O9/JOWu]
`O09—|,JUBUILOD
`Ps4Si]UlUMOYS
`QSewoULford
`
`
`S$JOMSI
`
`
`
`
`
`
`
`@JOYJUSLULUODJ9}UQINOA
`
`0S?
`
`cGy
`
`Snap Inc. Ex. 1004 Page 0008
`
`Snap Inc. Ex. 1004 Page 0008
`
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 7 of 9
`
`US 8,750,906 B2
`
`500
`
`generate tag based on input
`received from user
`
`display tag within map
`
`520
`
`530
`
`the event
`
`receive indication of an event
`
`540
`
`update tag or map based on
`
`FIG. 5
`
`Snap Inc. Ex. 1004 Page 0009
`
`Snap Inc. Ex. 1004 Page 0009
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 8 of 9
`
`US 8,750,906 B2
`
`
`
`y
`
`a
`16th Ave
`16th Ave S
`
`a S
`
`s2
`
`DQ
`‘©
`
`SR
`
`y
`
`3 Sh
`
`ey
`Ry
`
`S SR
`
`Snap Inc. Ex. 1004 Page 0010
`
`Snap Inc. Ex. 1004 Page 0010
`
`
`
`U.S. Patent
`
`Jun. 10, 2014
`
`Sheet 9 of 9
`
`US 8,750,906 B2
`
`FIG.7B
`
`
`Snap Inc. Ex. 1004 Page 0011
`
`Snap Inc. Ex. 1004 Page 0011
`
`
`
`US 8,750,906 B2
`
`1
`DYNAMIC ELEMENTS ON A MAP WITHIN A
`MOBILE DEVICE, SUCH AS ELEMENTS
`THAT FACILITATE COMMUNICATION
`BETWEEN USERS
`
`BACKGROUND
`
`Electronic and online mapping systems and applications,
`such as Mapquest, Google Maps, and others, enable users to
`embed information within a displayed map. For example, a
`user locates, or tags, an area on a map, and enters commen-
`tary, photographs, and other content to the tag.
`Although mobile devices facilitate communication in a
`numberofdifferent ways (for example, users can send email
`messages, make telephone calls, send text and multimedia
`messages, chat with other users, and so on), they also provide
`additional services, such as electronic maps. Some mobile
`devices also provide location-based services that utilize maps
`to display tags identifying locations of interest (e.g, restau-
`rants, cafes, etc.) within a mobile device user’s vicinity, or
`place a tag on a mapto identify the location of the mobile
`device user’s intended destination. In addition, some mobile
`devices can provide location based services identifying the
`locations ofa user’s friends or family. However, there may be
`times whenthe user wishesto leverage a device’s capabilities
`in order to provide other functions. Current mobile devices
`may not provide such functionalities.
`The need exists for a method and system that overcomes
`these problemsand progressesthe state of the art, as well as
`one that provides additional benefits. Overall, the examples
`herein of someprior or related systems and their associated
`limitations are intended to beillustrative and not exclusive.
`
`Other limitations of existing or prior systems will become
`apparentto thoseof skill in the art upon reading the following
`Detailed Description.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG.1 is a block diagram illustrating a mobile device that
`provides dynamic elements and user-controlled elements ona
`map displayed by a mobile device.
`FIG. 2A is a block diagram illustrating a suitable system
`for providing dynamic elements and user-controlled elements
`on a map displayed by a mobile device.
`FIG. 2B is a block diagram illustrating suitable compo-
`nents within the network of FIG. 2A.
`FIG.3 is a flow diagram illustrating a routine for providing
`communication between users of mobile devices.
`
`FIG. 4A to 4D are displays illustrating example mobile
`device screens usedto facilitate entry of text between users
`via a map element.
`FIG.5 is a flow diagram illustrating a routine for updating
`a map element within a mobile device.
`FIGS. 6A to 6C are displays illustrating example mobile
`device screens used to display dynamically changing map
`elements.
`FIGS. 7A to 7B are displays illustrating example mobile
`device screens used to dynamically display information about
`elements on a map.
`The headings provided herein are for convenience only and
`do not necessarily affect the scope or meaning of the claimed
`system.
`
`DETAILED DESCRIPTION
`
`A system and method for generating and displaying
`graphical elements on a map, such as a map displayed by a
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`mobile device, is described. The system includes two or more
`mobile devices and a serverthat stores information associated
`
`with the mobile devices. For example, the server may store
`location information for the mobile devices,
`information
`about locations on a map, and so on.
`In some examples, the system facilitates communication
`between users of two or more mobile devices via map ele-
`ments. For example, a map element, such as a tag displaying
`the location of one of the users, acts as an interface to launch
`a communication session between or among two or more
`users, thereby enabling the users to, for example, input mes-
`sages and other displayable content. A user may initiate a
`communication session with a group of users via the map
`element, or may initiate a two-way communication session
`with one other user via the map element.
`In some examples, the system updates, modifies, alters
`and/or changesdisplayed elements based on events that occur
`at or proximate to a user’s mobile device, other users’ mobile
`devices, or at a location associated with the element. For
`example, the system may modify the appearance of an ele-
`ment (such as change the color) when a certain number of
`mobile device users commenton a location, thereby indicat-
`ing the location is popular. As another example, the system
`may modify the appearance of the element when a certain
`numberofusers (or their mobile devices) are located proxi-
`mate to an associated location. In somecases, these elements
`mayrepresent the mobile device user’s friends, family mem-
`bers, contacts or members of a group associated with the
`mobile device user. The system may dynamically update the
`display (and/or appearanceofthe display) based on a number
`of factors, such as geographical movementoffriends, family
`members, contacts or group membersinto and outof a dis-
`played region on a map.
`Insome examples, the system presents or overlays a map or
`a displayed view ofthe map with varioustypes ofinformation
`based on the elements within the map. For example, the
`system may display one color on a section of a map having
`few placed elements, and different color on a section of the
`map having a large numberof placed elements. As another
`example, the system may automatically alter the view of a
`map (such as zoom into the map) based on the number of
`elements placed on the mapat a location, among otherthings.
`Thus, in some examples a mobile device user may not only
`want to identify the location of his or her friends, family
`membersor business associates, but may additionally want to
`initiate a communication session with a user directly from a
`map displaying the location of the other user. Further, a
`mobile device user may want to identify concentrations of
`other users at one or more locations.
`
`Various examples ofthe system will now be described. The
`following description provides specific details for a thorough
`understanding and enabling description of these examples.
`Oneskilled in the relevant art will understand, however, that
`the system may bepracticed without many ofthese details.
`Likewise, one skilled in the relevant art will also understand
`that the system incorporates many other obvious features not
`described in detail herein. Additionally, some well-known
`structures or functions may not be shown or described in
`detail below, so as to avoid unnecessarily obscuring therel-
`evant description.
`The terminology used below is to be interpreted in its
`broadest reasonable manner, even though it is being used in
`conjunction with a detailed description of certain specific
`examples of the system. Indeed, certain terms may even be
`emphasized below; however, any terminology intendedto be
`interpreted in any restricted manner will be overtly and spe-
`cifically defined as such in this Detailed Description section.
`Snap Inc. Ex. 1004 Page 0012
`
`Snap Inc. Ex. 1004 Page 0012
`
`
`
`US 8,750,906 B2
`
`3
`
`Suitable System
`Asdiscussed herein, the system dynamically generates and
`displays map elements based on a numberoffactors. Refer-
`ring to FIG. 1, a block diagram illustrating a mobile device
`100 that provides dynamic elements and user-controlled ele-
`ments on a map displayed by a mobile device is shown. The
`term “mobile device” may encompass any of a myriad of
`telecommunication devices such as cellular phones, VoIP
`phones, personaldigital assistants, portable computers, mini
`computers, programmable consumer electronics, dumb ter-
`minals, media players, gaming devices and so on. Such
`mobile devices may include a central processing unit,
`memory, input devices (e.g., keypads and input buttons) and
`output devices (e.g., display devices). Mobile devices may
`also include hardware and operating instructions stored in
`memory for wirelessly transmitting and receiving data
`according to one or more wireless protocols. Such protocols
`include short range protocols (e.g., Bluetooth, Wi-Fi, Ultra-
`wideband, and ZigBee) and radio-access network protocols
`(e.g., GSM (Global System for Mobile Communications),
`CDMA (Code Division Multiple Access), UMTS (Universal
`Mobile Telecommunications System), EDGE (Enhanced
`Data for GSM Evolution), LTE (Long Term Evolution),
`Wimax (Worldwide Interoperability for Microwave Access),
`Voice Over Internet Protocol (VoIP), UMA/GAN (Unli-
`censed Mobile Access/Generic Access Network)).
`The mobile device 100 may contain a power subsystem
`125, data storage 115 to store programs anddata, andat least
`one data processor 120 to run an operating system and appli-
`cations to implement
`the mapping processes described
`herein. A user interfaces with the device via a user input
`component 105 (e.g., keypad,
`touchscreen, microphone,
`voice recognition system) and/or a user output component
`110 (e.g., speaker, screen). The mobile device also includes a
`network interface 132 (such as a radio and/or wireless inter-
`face, an Enternet interface, a USB interface, and so on), and
`may include one or more communication components 140 to
`establish communication channels with a network and/or
`
`other devices. The communication component 140 may
`establish any number of suitable communication channels
`including Bluetooth, Wi-Fi, Ultra-wideband, ZigBee, GSM,
`GPRS, EDGE, UMTS, CDMA,andso on.
`The mobile device 100 also contains a mapping component
`130 that generates dynamically changing maps and elements
`on mapsto be presentedto a user via the user output compo-
`nent 110, and a location determination component135, such
`as a global positioning system (GPS) component, RFID tag.
`In some examples, such as those involving devices that lack
`an integrated location determination component,
`location
`may be determined by one or more network-based technolo-
`gies, such as A-GPS(Assisted GPS), TDOA (Time Differ-
`ence ofArrival), triangulation, ATI, Secure User Plane Loca-
`tion (SUPL)or, for mobile devices operating on an IP-based
`wireless telecommunications network, methods and systems
`disclosed in WO/2007/121331, entitled “MOBILE COM-
`PUTING DEVICE GEOGRAPHIC LOCATION DETER-
`MINATION”and/or WO/2007/048028, entitled “SYSTEM
`AND METHOD FOR DETERMINING DEVICE LOCA-
`TION INAN IP-BASED WIRELESS TELECOMMUNICA-
`
`40
`
`45
`
`TIONS NETWORK,” which is incorporated by reference in
`its entirety.
`In some examples, the mapping component 130 generates
`a numberofdifferent types of map elements. The following
`list provides a few examples, although manyothers notdis-
`cussed are possible:
`generic icons associated with all locations (such as pins,
`pointers, and so on),
`
`65
`
`4
`icons specific to a location or content,
`active icons, such as those that move whenpresented on a
`map,
`text balloons and similar text presentation and text entry
`elements, and so on.
`Referring to FIG. 2A, a block diagram 200 illustrating a
`suitable system for providing dynamic elements and user-
`controlled elements on a map displayed by a mobile device is
`shown. Aspects of the system maybestoredordistributed on
`tangible computer-readable media, including magnetically or
`optically readable computer discs, hard-wired or prepro-
`grammedchips (e.g., EEPROM semiconductor chips), nano-
`technology memory, biological memory,or other data storage
`media. Alternatively or additionally, computer implemented
`instructions, data structures, screen displays, and other data
`underaspects of the system maybedistributed overthe Inter-
`net or over other networks (including cellular or IP-based
`telecommunications networks), on a propagated signal on a
`propagation medium (e.g., an electromagnetic wave(s), a
`sound wave, etc.) over a period of time, or they may be
`provided on any analog or digital network (packet switched,
`circuit switched, or other scheme).
`The system 200 includes a mobile device 100 at a first
`location, two or more other mobile devices 210, 212, 214
`(such as mobile devices from different manufacturers and
`associated with different service providers), and,
`in this
`example, network 220 that provides communication links
`between the mobile devices, stores information associated
`with the mobile devices, and sends andreceives information
`from the mobile devices. Although only one network 220 is
`shown,it will be understood that mobile devices 210, 212 and
`214 mayaccess network 220 via one or more other telecom-
`munications networks, including, for example, one or more
`cellular networks, IP-based telecommunications networks,
`the Internet, and peer-to-peer communications, as discussed
`herein.
`
`Referring to FIG. 2B, a block diagram illustrating suitable
`components within the network 220 is shown. The network
`220 includes a data network 250 (e.g., TCP/IP or other pro-
`tocol), which one or more telecommunications networks 240
`mayaccess via a gateway 260. The network 220 mayinclude
`or communicate with one or more servers 252, a database
`254, and so on. The servers 252 may display and/or present
`information to users of the mobile devices described herein,
`such as information stored in the database 254. They may
`include components similar to those shown in FIG.1, includ-
`ing mapping components that generate map and mapele-
`ments to be presented to users via mobile devices, communi-
`cation
`components
`that
`enable
`communication
`of
`information between the servers 252 and mobile devices, and
`other components. Examples of presented information
`include: map information associated with a location of the
`mobile device, map information associated with the locations
`of other mobile devices, information related to elements pre-
`sented on displayed maps, information,tables and data struc-
`tures that store and associated content with various locations
`or events, and so on. Further details are discussed herein.
`The servers 252 mayalso include or comprise one or more
`location determination components or devicesthat detect the
`location of mobile devices within the network 220. In some
`cases, these components may include or access points of
`interest (POJ) databases for a street, neighborhood, or area
`represented by a map. A POI database includes entries that
`relate latitude and longitude information with content, and the
`location determination components may access information
`from these databases when generating map elements,identi-
`fying locations of mobile devices, and so on.
`Snap Inc. Ex. 1004 Page 0013
`
`Snap Inc. Ex. 1004 Page 0013
`
`
`
`US 8,750,906 B2
`
`5
`In somecases, these location determination components
`may be geoservers, whichtrack a target area to identify loca-
`tions of mobile devices within the target area. The geoserver
`may be a component of a network-based location system,
`such as A-GPS(Assisted GPS), TDOA (Time Difference of
`Arrival),
`triangulation, ATI, Secure User Plane Location
`(SUPL)or, for mobile devices operating on an IP-based wire-
`less telecommunications network, methods and systemsdis-
`closed in the aforementioned applications, or may otherwise
`have access to one or more databases containing identifica-
`tion and location information forcell sites, access points and
`other network elements. For example, a database may be
`stored with CGI information for respective cells included in
`the defined shape representing the target area. Similarly, the
`database may store access point information for respective
`access points included in a defined shape representing a
`region having a greater concentration of posts or mobile
`devices. Thus, a geoserver implements a point-in-polygon
`search to determine identifiers (e.g., CGI, MAC addresses
`and other relevant broadcastidentifiers) for mobile devices,
`base stations and access points that exist within the region.
`Further details regarding the functionality of geoservers and
`various systems and implementations that employ geoservers
`may be found in U.S. patent application Ser. No. 12/253,886,
`filed on Oct. 17, 2008, entitled GEOGRAPHIC TARGET-
`ING OF ALERTS, whichis incorporated by referencein its
`entirety.
`The network 220 may include or be part of any network
`capable offacilitating communications between devices, and
`is not limited to those shown in FIG. 2B. Examples include
`GSM(Global System for Mobile Communications), UMA/
`GAN (Unlicensed Mobile Access/Generic Access Network),
`CDMA (Code Division Multiple Access), UMTS (Universal
`Mobile Telecommunications System), EDGE (Enhanced
`Data for GSM Evolution), LTE (Long Term Evolution),
`Wimax (Worldwide Interoperability for Microwave Access),
`Voice Over Internet Protocol (VoIP), TCP/IP, and other tech-
`nologies.
`the telecommunications networks 240
`In some cases,
`incorporate picocells, small base stations having short wire-
`less ranges and generally located in residential or business
`locations to provide local coverageto that location. Picocells
`may be directly connected to a network, and often appear as
`cell sites having a Cell Global Identity (CGT) value within the
`network. In somecases, the telecommunications network(s)
`240 (e.g., UMA networks) incorporate femtocell networks.
`Similar to VoIP, in femtocell networks voice communications
`are packetized and transmitted over the Internet. UMA net-
`workstypically feature WiFi access points for receiving and
`sending voice communications over an unlicensed spectrum;
`femtocell networks typically feature wireless access points
`broadcasting within licensed spectrumsof a telecommunica-
`tions service provider, with conversion of voice communica-
`tions into IP packets for transmission overthe Internet.
`Thusthe system may include a numberofdifferent devices
`on a wireless network. For example, the system may contain
`two or more mobile devices that include a map application
`configured to display maps via screens within the mobile
`devices, display map elements at locations on the displayed
`map, and modify the displayed elements based on received
`instructions. Also, the system may include a content server
`that includes a mapping component configured to provide
`instructions to mobile devices that present maps and map
`elements, a location determination component configured to
`identify a location of mobile devices within a network, a
`communication component configured to receive and send
`information to the mobile devices, and an event detection
`
`20
`
`35
`
`40
`
`45
`
`6
`component configured to detect an occurrence of an event
`associated with the mobile devices and instruct the mapping
`component to provide instructions to the mobile devices
`based on the event.
`
`Communication Between Users Via Elements on a Map
`Asdiscussed in some examples herein, the system facili-
`tates communication between users of two or more mobile
`
`device via map elements. Referring to FIG. 3, a flow diagram
`illustrating a routine 300 for providing communication
`between users of mobile devices is shown. The mapping
`component 130, in combination with other components, may
`perform routine 300 or cause routine 300 to be performed.
`In step 310, the system generates an elementto be placed
`ona map based on input received from a user or from another
`source. As discussed herein, the generated element may be
`any numberof graphical objects, and may be chosen based on
`the received input. For example, a first user may select a
`location of a coffee shop on a map, and the system may
`generate or supply a palette or pick list of icons, including a
`coffee mug icon, to be chosen as the graphical element. Ifthe
`first user selects a location, the mobile device 100 maytrans-
`mit a message or similar data to a server 252 within the
`network 220 identifying the location and content selected by
`the user. The system mayalso receive input from the user,
`such as commentary or remarks aboutthe location, and gen-
`erate a text element along with the graphical element, such as
`a text balloonor text box or other displayed text element. The
`system may display the text within a displayed balloon or
`box, maydisplay a link to the text, and so on. Alternatively or
`additionally, the first mobile device user may manually and
`periodically update his or her location to the server 252, or
`maysimply opt-in to allow the network 220 to automatically
`and periodically update (i.e., input) his or her present loca-
`tion, and the system will generate and/or update an element,
`as discussed herein. The first mobile device user may leave
`commentary associated with the element, which may be
`viewable by other users based on permissions granted by the
`first mobile device user whenhe orshe, for example, registers
`to the system, coincidentally with leaving the commentary, or
`otherwise. The first mobile device user may also update the
`commentary and/or permissions associated with the com-
`mentary via his or her mobile device, by accessing a Website
`interface that permits Web-based updates, etc. The permis-
`sions may take a variety of forms, such as a permission for
`specific friends and family members to view thefirst user’s
`elements, all contacts in the user’s address book or network
`based address book,orall users of the system regardless of
`prior association. Further, the permissions maybe limited to
`specific demographic profiles such as, for example, all users
`of the system within a specific age range.
`In step 320, the system associates the element with a loca-
`tion on a map. For example, the system may tag a map with
`the element. The system maythen display the elementto the
`first mobile device user and/or to other mobile device users
`
`(e.g., all users, the mobile device user’s contacts, or a selected
`numberofusers). The system, at server(s) 252, may receive
`the information about the map element from the mobile
`device 100 and update a data structure, such as a table, stored
`in database 254 and associated with a map displayedor pre-
`sented to mobile devices 100, 210, 212, and/or 214 within the
`network 220. Table 1 depicts example entries included by the
`system:
`
`Snap Inc. Ex. 1004 Page 0014
`
`Snap Inc. Ex. 1004 Page 0014
`
`
`
`US 8,750,906 B2
`
`TABLE1
`
`Lat
`
`Long
`
`Element
`
`UserID
`
`Text
`
`47.62915
`
`-122.62939 pindrop
`
`310260123456789 “Coolplace!”
`
`Time Other
`
`16:45
`
`Thus, the system, via a database 254 associated with a
`server 252 within the network 220, stores various data for
`maps and map elements presented by users associated with
`the network. Of course, the map and/or map data may be
`stored in other locations, such as on associated mobile
`devices, within other network components, and so on. In
`addition, the data maybestored in other forms, such as a hash
`maporother data structures.
`As shownin thetable, the data may include location infor-
`mation (latitude and longitude coordinates), an identifier for
`the map element, an ID forthefirst user’s mobile device that
`
`In step 350, if the second user has “replied” to the first
`user’s posted commentary, the system updates the element
`with the additional
`input. For example,
`the system may
`10 update the element to include both users’ comments, and
`display both comments wheneverthe element is selected by
`other users. Upon receiving input, the mobile device 210 may
`transmit data to the server 252 to update the table with the
`additional comments. Further, the system may dispatch the
`15 second user’s reply commentto the first user in an alternate
`communication format, such as an e-mail or SMS message
`alerting him or her that the second user has replied to his
`posting. Table 2 depicts an updatedtable:
`TABLE 2
`
`Lat
`
`Long
`
`Element
`
`UserID
`
`Text
`
`Time Other
`
`16:45
`—310260123456789 “Coolplace!”
` -122.62939 pindrop
`47.62915
`
`
`47