Home
Recording events for social media
Contents
1. uoud l eBeyoed dde Jeg smejs S 3IAJ S Ula1s S US 8 825 783 B1 Sheet 6 of 7 Sep 2 2014 U S Patent 9 t ENLIA 948 oqr s 9 1 911 8107 SS3204d sde A oqr 910009A I1 089 SULDEN enu 6c9 SeueJqr 8107 Jasmolg 5592014 9 614 jausay 901 508 ENA XIAJEQ c9 SeueJqr 8109 uoudojo Jejeig 5592014 y 6 9 JoBeuey U0lJB9IJIJON 9 abeyoed 075 T9 1eBeueyy 1u9 3 9je oqr 719 919 5 EnulA Jeq nS SeueJqr 3109 T9 Jabeueyy NODUI A TT T9 JeDeue A JeDeue 99Jn0S9M 109 909 idus Jeg smeis SS920Jd Sa2IAJ9S Ula1s gS U S Patent Sep 2 2014 Sheet 7 of 7 US 8 825 783 B1 Fig 7 US 8 825 783 B1 1 RECORDING EVENTS FOR SOCIAL MEDIA BACKGROUND Social networks permit users to post information about themselves and to communicate with other people e g their friends family and co workers Some social networks permit users to specify social connections with other users Additionally some social networks allow users to post status updates about themselves Status updates for a user may be organized in a chronological stream and presented to other users with access and interest O
2. 65 14 Access 2000 CDMA2000 Wideband Integrated Dispatch Enhanced Network WiDEN High Speed Circuit Switched Data HSCSD General Packet Radio Service GPRS Per sonal Handy Phone System PHS Circuit Switched Data CSD Personal Digital Cellular PDC CDMAone Digital Advanced Mobile Phone System D AMPS Integrated Digital Enhanced Network IDEN Global System for Mobile communications GSM DataTAC Mobitex Cellu lar Digital Packet Data CDPD Hicap Advanced Mobile Phone System AMPS Nordic Mobile Phone NMP Auto radiopuhelin ARP Autotel or Public Automated Land Mobile PALM Mobiltelefonisystem D MTD Offentlig Landmobil Telefoni OLT Advanced Mobile Telephone System AMTS Improved Mobile Telephone Service IMTS Mobile Telephone System MTS Push To Talk PTT or other technologies Communication via W CDMA HSUPA GSM GPRS and EDGE networks may occur for example using a QUALCOMM MSM7200A chipset with a QUALCOMM RTR6285 transceiver and PM7540 power management circuit The wireless or wired computer network connection 306 may be a modem connection a local area network LAN connection including the Ethernet or a broadband wide area network WAN connection such as a digital subscriber line DSL cable high speed internet connection dial up connec tion T 1 line T 3 line fiber optic connection or satellite connection The network connection 306 may connect to a LAN network a corporat
3. FIG 1 to a distribution hub e g a content distribution engine 125 which can be provided at a server e g server system 112 of FIG 1 or elsewhere on the network In some implementations the content data set may include content data e g text identity of the content author tag uniform resource indicator URI timestamp data e g a timestamp indicating the time that the content was generated distribu tion data e g data identifying contacts and or one or more social circles and identification ID data e g an ID assigned to the content data set upon generation of the con tent In some implementations other data can be appended to content data sets Example other data can include scoring data In some examples scoring data can include a social affinity score among other possible scoring data As described in more detail below affinity identifies the closeness of par ties on a social graph US 8 825 783 B1 7 The scoring data may be recipient specific For example the scoring data can include social affinity data that is pro vided based on respective social affinity scores between an author of the content and each recipient of the content For example a first user can author content and define a distribu tion of the content thereby creating an underlying content data set The distribution can include a second user and a third user and so forth first social affinity score associated with a social rela
4. RAID a floppy disk drive a flash memory a USB flash drive an external hard disk drive thumb drive pen drive key drive a High Density Digital Versatile Disc HD DVD optical disc drive an internal hard disk drive a Blu Ray optical disc drive or a Holographic Digital Data Storage 20 25 30 35 40 45 50 55 60 65 16 ADDS optical disc drive an external mini dual in line memory module DIMM synchronous dynamic random access memory SDRAM or an external micro DIMM SDRAM Such computer readable storage media allow the device 300 to access computer executable process steps application programs and the like stored on removable and non removable memory media to off load data from the device 300 or to upload data onto the device 300 A computer program product is tangibly embodied in stor age medium 412 a machine readable storage medium The computer program product includes instructions that when read by a machine operate to cause a data processing appa ratus to store image data in the mobile device In some embodiments the computer program product includes instructions that cause a data processing apparatus to record an event album associated with a check in The operating system 414 may be a LINUX based operat ing system such as a mobile device platform APPLE MAC OS X MICROSOFT WINDOWS NT WINDOWS 2000 WINDOWS XP WINDOWS MOBILE a variety of UNIX flavored operating systems or a proprietary
5. a check in In some implementations a user may input a check in signal through a user interface e g a keypad pointing device or a touch screen display For example the signal may be received through the pointing device interface 405 of mobile device depicted in FIGS 3 6 In some implementations the signal may be received 202 through a wireless interface e g anten nae interface 406 or network connection interface 407 For example the signal reflecting a check in may be received via a BLUETOOTH connection that connects two devices of a user such as a tablet computing device and a camera In some implementations a user may be prompted to submit a check in signal when a navigation module e g navigation module 417 indicates that a user has entered a geographic location associated with a check in opportunity For example a social network may designate a stadium as check in location with geographic boundaries When a user crosses the geographic boundaries the user may be prompted e g through display interface 402 or sound interface 409 with the option to check in to the stadium location or an event associated with the location in order to alert members of the user s social network to the presence of the user The user may exercise the option to check in by through a user interface US 8 825 783 B1 9 A message including a check in status update based on the check in is transmitted 204 In some implementations the chec
6. a social network upon receipt by a social network server The recording session may be manually terminated by a user Using the one or more data processing apparatuses the end of an event associated with the check in may be detected The recording session may be automatically terminated upon detecting the end of the event Using the one or more data processing apparatuses a user may be alerted upon detecting the end of the event Using the one or more data processing apparatuses a user may be alerted the next time a media file is recorded after detecting the end of the event Transmissions of media files may be automatically suspended after detecting the end of the event Detecting the end of the event may include monitoring an expiration timer that is reset each time a media file is recorded before it expires Detecting the end of the event may include analyzing media file recording times during the recording session with a clustering algorithm Detecting the end of the event may include comparing the geographic location of a mobile device that received the sig nalto its location when the signal was received Detecting the US 8 825 783 Bl 3 end ofthe event may include comparing the geographic loca tion of a mobile device that received the signal to its location when the latest media file was recorded during the recording session Detecting the end of the event may include compar ing the geographic location of a mobile device that receive
7. compared to the location of the mobile device when the signal was received The end of the event may be deter mined if the distance is greater than threshold e g 100 meters In some implementations the geographic location of a mobile device may be compared to the location of the mobile device when the most recent previous media file was recorded during the recording session Again the distance may be compared to fixed threshold or in some implemen tations the threshold may be adapted based on the usage pattern of a user during the current recording session or dur ing previous recording sessions In some implementations the end of the event may be detected 210 by comparing the geographic location of a mobile device to boundaries of a location associated with the 0 ja 5 25 30 40 45 50 65 10 check in The boundaries ofthe location may be specified by a social network For example boundaries may be specified in a message received over a communication network from social network server e g server system 112 running social network 123 The end of the event may be detected 210 by determining if the mobile device is outside of the boundaries In some implementations the end of the event may be detected 210 by analyzing the geographic locations of a mobile device when media files were recorded during the recording session with a clustering algorithm e g recurrent self organizing map K means cluster
8. instructions stored in the memory 764 The processor may be implemented as a chipset of chips that include separate and multiple analog and digital processors The processor may provide for example for coordination of the other components of the device 750 such as control of user interfaces applications run by device 750 and wireless communication by device 750 Processor 752 may communicate with a user through con trol interface 758 and display interface 756 coupled to a display 754 The display 754 may be for example a TFT LCD Thin Film Transistor Liquid Crystal Display or an OLED Organic Light Emitting Diode display or other appropriate display technology The display interface 756 may comprise appropriate circuitry for driving the display 754 to present graphical and other information to a user The control interface 758 may receive commands from a user and convert them for submission to the processor 752 In addition an external interface 762 may be provide in communication with processor 752 so as to enable near area communication of device 750 with other devices External interface 762 may provide for example for wired communication in some implementations or for wireless communication in other implementations and multiple interfaces may also be used The memory 764 stores information within the computing device 750 The memory 764 can be implemented as one or more of a computer readable medium or media a volatile memory
9. time based event end detector and a geographic location based event end detector 21 The method of claim 20 wherein detecting the end of the event further comprises weighting signals from the time based event end detector and the geographic location based event end detector using weights that are adapted based on a user s usage patterns 22 The method of claim 1 wherein the media files include a still image file 23 The method of claim 1 wherein the media files include an audio file 24 The method of claim 1 wherein the media files include a video file 25 A mobile device comprising a user interface configured to receive a signal indicating a check in a sensor configured to record media files during a recording session a data processing apparatus and amemory coupled to the data processing apparatus having instructions stored thereon which when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising starting the recording session associated with the check in US 8 825 783 B1 25 automatically associating the media files recorded by the sensor during the recording session with the check in and a wireless network interface configured to transmit a first message including a check in status update gen erated at least in part based on the check in and to later transmit the media files in one or more additional messages associated with the check in s
10. unit or units or a non volatile memory unit or units Expansion memory 774 may also be provided and connected to device 750 through expansion interface 772 which may include for example a SIMM Single In Line Memory Mod ule card interface Such expansion memory 774 may provide extra storage space for device 750 or may also store applica tions or other information for device 750 Specifically expan sion memory 774 may include instructions to carry out or supplement the processes described above and may include secure information also Thus for example expansion memory 774 may be provide as a security module for device 750 and may be programmed with instructions that permit secure use of device 750 In addition secure applications may be provided via the SIMM cards along with additional infor mation such as placing identifying information on the SIMM card in a non hackable manner The memory may include for example flash memory and or NVRAM memory as discussed below In one implemen tation a computer program product is tangibly embodied in an information carrier The computer program product con tains instructions that when executed perform one or more methods such as those described above The information carrier is a computer or machine readable medium such as the memory 764 expansion memory 774 memory on pro cessor 752 or a propagated signal that may be received for example over transceiver 768 or external interf
11. with the package manager 541 activity manager processes 610 associated with the activity manager 546 resource manager processes 611 associated with a resource manager 611 that provides access to graphics localized strings and XML layout descriptions notification manger processes 612 associated with the notification manager 544 window manager processes 614 associated with the window manager 545 core JAVA libraries processes 615 associated with the core JAVA libraries 531 surface manager processes 616 associated with the surface manager 521 Dalvik virtual machine processes 617 associated with the Dalvik virtual machine 532 LIBC processes 619 associated with the LIBC library 525 and event album manager processes 620 associ ated with the event album manager application library 552 The dialer processes 602 include dialer application pro cesses 621 associated with the dialer application 549 tele phony manager processes 622 associated with the telephony manager 542 core JAVA libraries processes 624 associated with the core JAVA libraries 531 Dalvik virtual machine processes 625 associated with the Dalvik Virtual machine 532 and LIBC processes 626 associated with the LIBC library 525 The browser processes 604 include browser application processes 627 associated with the browser appli cation 551 core JAVA libraries processes 629 associated with the core JAVA libraries 531 Dalvik virtual machine processes 630 associated with the Dalvik
12. 00 In one implementation the storage device 706 may be or contain a computer readable medium such as a floppy disk device a hard disk device an optical disk device or a tape device a flash memory or other similar solid state memory device or an array of devices including devices in a storage area network or other configu rations A computer program product can be tangibly embod ied in an information carrier The computer program product may also contain instructions that when executed perform one or more methods such as those described above The information carrier is a computer or machine readable medium such as the memory 704 the storage device 706 memory on processor 702 or a propagated signal The high speed controller 708 manages bandwidth inten sive operations for the computing device 700 while the low speed controller 712 manages lower bandwidth intensive operations Such allocation of functions is exemplary only In one implementation the high speed controller 708 is coupled to memory 704 display 716 e g through a graphics proces sor or accelerator and to high speed expansion ports 710 which may accept various expansion cards not shown In the implementation low speed controller 712 is coupled to stor age device 706 and low speed expansion port 714 The low speed expansion port which may include various communi cation ports e g USB Bluetooth Ethernet wireless Ethernet may be coupled to one or more i
13. 14 application programs 415 including for example a web browser application a widget or gadget engine and or other applications as necessary and data files 416 are stored a navigation module 417 that provides a real world or relative position or geographic location of the device 300 a power source 419 that provides an appropriate alternating current AC or direct current DC to power components and a telephony subsystem 420 that allows the device 300 to trans mit and receive sound over a telephone network The con stituent devices and the CPU 401 communicate with each other over a bus 421 The CPU 401 can be one of a number of computer proces sors In one arrangement the computer CPU 401 is more than one processing unit The RAM 410 interfaces with the com puter bus 421 so as to provide quick RAM storage to the CPU 401 during the execution of software programs such as the operating system application programs and device drivers More specifically the CPU 401 loads computer executable process steps from the storage medium 412 or other media into a field of the RAM 410 in order to execute software programs Data is stored in the RAM 410 where the data is accessed by the computer CPU 401 during execution In one example configuration the device 300 includes at least 128 MB of RAM and 256 MB of flash memory The storage medium 412 itself may include a number of physical drive units such as a redundant array of independent disks
14. 140 facilitates the creation and posting of event albums for check ins When a check in signal is received the event man ager may initiate and maintain a recording session During the recording session media files that are recorded are automati cally associated with the check in and included in an event album for the check in The event album manager 140 may also detect the end ofan event associated with check in When the end of an event is detected the event album manager 140 may automatically terminate the recording session or alert a 20 25 30 35 40 45 50 55 60 65 8 user and prompt the user to terminate or continue the record ing session During or after the recording session media files recorded and added to the event album may be transmitted to a remote server running a social network e g server system 112 running social network 123 As a result of these trans missions a check in status update for the user may be updated to include or link to the media files in the resulting event album In some implementations media files from a user s event album may be automatically associated with an event posting for a group of users ofa social network e g a group of users with which the user has social connections Through a social network a user may have a view of a combined event posting that includes all of the media files recorded for an event by all of the people in his or her family circle w
15. 32 further comprising an antennae interface configured to estimate location coordinates based on signal strength measurements of signals received from multiple base stations and wherein the detecting the end ofthe event uses the estimated location coordinates to detect the end of the event 35 A non transient computer readable medium storing software comprising instructions executable by a processing device that upon such execution cause the processing device to perform operations comprising receiving a signal indicating a check in transmitting a first message including a check in status update generated at least in part based on the check in starting a recording session associated with the check in recording media files during the recording session automatically associating the media files with the check in and transmitting the media files in one or more additional mes sages associated with the check in status update
16. US008825783B1 a2 United States Patent 10 Patent No US 8 825 783 B1 Nace 45 Date of Patent Sep 2 2014 54 RECORDING EVENTS FOR SOCIAL MEDIA 2012 0123830 Al 5 2012 Svendsen etal 705 14 5 75 Inventor Adam M Nace Bright CA 73 Assignee Google Inc Mountain View CA US Notice Subject to any disclaimer the term of this patent is extended or adjusted under 35 U S C 154 b by 248 days 21 Appl No 13 551 414 22 Filed Jul 17 2012 51 Int Cl G06F 15 16 2006 01 52 U S CI iced DPI 709 206 58 Field of Classification Search CPG aa taa ass HO4L 12 588 HO4L 51 32 USPC innen 709 204 207 217 219 705 319 See application file for complete search history 56 References Cited U S PATENT DOCUMENTS 8 108 778 B2 1 2012 Athsani etal 715 738 2008 0204317 Al 8 2008 Schreve et al 342 357 13 2009 0150433 A1 6 2009 Uusitalo et al 707 104 1 TS 200 Recording terminated Session 2012 0308077 1 12 2012 Tseng 382 103 2013 0066963 Al 3 2013 Odio et al 709 204 2013 0117365 A1 5 2013 Padmanabhan et al 709 204 2013 0117692 A1 5 2013 Padmanabhan et al 715 753 2013 0128038 A1 5 2013 Cok etal 348 143 2013 0311452 A1 11 2013 Jacoby 707 722 cited by examiner Primary Examiner Brendan Higa 74 Attorney Agent or F
17. ace 708 con necting to memory 704 and high speed expansion ports 710 and a low speed interface 712 connecting to low speed bus 714 and storage device 706 Each of the components 702 704 706 708 710 and 712 are interconnected using various busses and may be mounted on a common motherboard or in other manners as appropriate The processor 702 can process instructions for execution within the computing device 700 including instructions stored in the memory 704 or on the 20 25 30 35 40 45 50 55 60 65 20 storage device 706 to display graphical information for a GUI on an external input output device such as display 716 coupled to high speed interface 708 In other implementa tions multiple processors and or multiple buses may be used as appropriate along with multiple memories and types of memory Also multiple computing devices 700 may be con nected with each device providing portions of the necessary operations e g as a server bank a group of blade servers or a multi processor system The memory 704 stores information within the computing device 700 In one implementation the memory 704 is a volatile memory unit or units In another implementation the memory 704 is a non volatile memory unit or units The memory 704 may also be another form of computer readable medium such as a magnetic or optical disk The storage device 706 is capable of providing mass stor age for the computing device 7
18. ace 762 Device 750 may communicate wirelessly through commu nication interface 766 which may include digital signal pro cessing circuitry where necessary Communication interface 766 may provide for communications under various modes or protocols such as GSM voice calls SMS EMS or MMS messaging COMA TDMA PDC WCDMA CDMA2000 or GPRS among others Such communication may occur for example through radio frequency transceiver 768 In addi tion short range communication may occur such as using a Bluetooth WiFi or other such transceiver not shown In addition GPS Global Positioning System receiver module 770 may provide additional navigation and location related wireless data to device 750 which may be used as appropriate by applications running on device 750 20 25 30 35 40 45 50 55 60 65 22 Device 750 may also communicate audibly using audio codec 760 which may receive spoken information from a user and convert it to usable digital information Audio codec 760 may likewise generate audible sound for a user such as through a speaker e g in a handset of device 750 Such sound may include sound from voice telephone calls may include recorded sound e g voice messages music files etc and may also include sound generated by applications operating on device 750 The computing device 750 may be implemented in a num ber of different forms as shown in the figure For example it may be
19. anage the power source 519 The BLUETOOTH driver which in one implementation is based on the BlueZ BLUETOOTH stack for LINUX based operating systems provides profile support for headsets and hands free devices dial up networking personal area net working PAN or audio streaming such as by Advance Audio Distribution Profile A2DP or Audio Video Remote Control Profile AVRCP The BLUETOOTH driver provides JAVA bindings for scanning pairing and unpairing and ser vice queries The libraries 501 include a media framework 520 that supports standard video audio and still frame formats such as Moving Picture Experts Group MPEG 4 H 264 MPEG 1 Audio Layer 3 MP3 Advanced Audio Coding AAC Adaptive Multi Rate AMR Joint Photographic Experts Group JPEG and others using an efficient JAVA Application Programming Interface API layer a surface manager 521 a simple graphics library SGL 522 for two dimensional application drawing an Open Graphics Library for Embedded Systems OpenGL ES 524 for gaming and three dimensional rendering a C standard library LIBC 525 a LIBWEBCORE library 526 a FreeType library 527 an SSL 529 and an SQLite library 530 The operating system runtime 502 includes core JAVA libraries 531 and a Dalvik virtual machine 532 The Dalvik virtual machine 532 is a custom virtual machine that runs a customized file format DEX The operating system 414 can also include Mobile Infor mation Device Pro
20. and may be an omni directional microphone a unidi rectional microphone a bi directional microphone a shotgun microphone or other type of apparatus that converts sound to an electrical signal The microphone 309 may be used to capture sound generated by a user for example when the user is speaking to another user during a telephone call via the device 300 Conversely the speaker 310 allows the device to convert an electrical signal into sound such as a voice from another user generated by a telephone application program or a ring tone generated from a ring tone application program Furthermore although the device 300 is illustrated in FIG 3 as a handheld device in further implementations the device 300 may be a laptop a workstation a midrange computer a US 8 825 783 B1 15 mainframe an embedded system telephone desktop PC a tablet computer a PDA or other type of computing device FIG 4 is a block diagram illustrating an internal architec ture 400 ofthe device 300 The architecture includes a central processing unit CPU 401 where the computer instructions that comprise an operating system or an application are pro cessed a display interface 402 that provides a communication interface and processing functions for rendering video graphics images and texts on the display 301 provides a set of built in controls such as buttons text and lists and sup ports diverse screen sizes a keyboard interface 404 that pro vid
21. associated with the check in status update 31 A system comprising a user interface configured to receive a signal indicating a check in asensor configured to record media files during a recording session a data processing apparatus and 20 25 30 35 40 45 26 a memory coupled to the data processing apparatus having instructions stored thereon which when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising starting the recording session associated with the check in automatically associating the media files recorded by the sensor during the recording session with the check in and a network interface configured to transmit a first mes sage including a check in status update generated at least in part based on the check in and to later transmit the media files in one or more additional messages associated with the check in status update 32 The system of claim 31 wherein the instructions stored on the memory which when executed by the data processing apparatus further cause the data processing apparatus to per form operations comprising detecting the end of an event associated with the check in 33 The system of claim 32 further comprising a global positioning system receiver and wherein the detecting the end of the event uses location coordinates output from the global positioning receiver to detect the end of the event 34 The system of claim
22. crash of the operating system Using task switch ing the operating system 414 allows for the switching of applications whileon a telephone call without losing the state of each associated application The operating system 414 may use an application framework to encourage reuse of compo nents and provide a scalable user experience by combining pointing device and keyboard inputs and by allowing for pivoting Thus the operating system can provide a rich graph ics system and media experience while using an advanced standards based web browser The operating system 414 can generally be organized into six components a kernel 500 libraries 501 an operating system runtime 502 application libraries 504 system ser vices 505 and applications 506 The kernel 500 includes a display driver 507 that allows software such as the operating system 414 and the application programs 415 to interact with the display 301 via the display interface 402 a camera driver 509 that allows the software to interact with the camera 307 a BLUETOOTH driver 510 a M Systems driver 511 a binder IPC driver 512 a USB driver 514 a keypad driver 515 that allows the software to interact with the keyboard 302 via the keyboard interface 404 a WiFi driver 516 audio drivers 517 that allow the software to interact with the microphone 309 and the speaker 310 via the sound interface 409 and a power management component 519 that allows the software to inter act with and m
23. d the signal to boundaries of a location associated with the check in Detecting the end of the event may include analyz ing the geographic locations of a mobile device that received the signal when media files were recorded during the record ing session with a clustering algorithm Detecting the end of the event may include maintaining both a time based event end detector and a geographic location based event end detec tor Detecting the end of the event may include weighting signals from the time based event end detector and the geo graphic location based event end detector using weights that are adapted based on a user s usage patterns The media files may include a still image file The media files may include an audio file The media files may include a video file Systems may include a global positioning system receiver configured to determine location coordinates Systems may include a module configured to detect the end of an event associated with the check in based in part on the location coordinates Systems may include a display configured to present a user with an alert indicating that the end of the event has been detected and suggesting the termination of the recording ses sion The sensor may include a camera The sensor may include a microphone Systems may include means for detecting the end of an event associated with the check in The means for detecting the end ofthe event may use location coordinates output from a global pos
24. d by any form or medium of digital data communication e g a communication network Examples of communication networks include a local area network LAN a wide area network WAN and the Internet US 8 825 783 B1 23 The computing system can include clients and servers A client and server are generally remote from each other and typically interact through a communication network The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client server relationship to each other A number of embodiments have been described Neverthe less it will be understood that various modifications may be made without departing from the spirit and scope of the invention For example portions of the event album manager system may be implemented on multiple devices e g a portion on mobile device 300 and a portion on remote server system 112 An event manager that runs in part on a remote server may adapt event end detection module parameters to a particular location associated with check ins based on usage data from many users who have checked in the particular location In addition the logic flows depicted in the figures do not require the particular order shown or sequential order to achieve desirable results In addition other steps may be provided or steps may be eliminated from the described flows and other components may be added to or removed from th
25. d of claim 9 further comprising automatically suspending transmissions of media files after detecting the end of the event 14 The method of claim 9 wherein detecting the end of the event comprises monitoring an expiration timer that is reset each time a media file is recorded before it expires 15 The method of claim 9 wherein detecting the end of the event comprises analyzing media file recording times during the recording session with a clustering algorithm 16 The method of claim 9 wherein detecting the end of the event comprises comparing the geographic location of a mobile device that received the signal to its location when the signal was received 17 The method of claim 9 wherein detecting the end of the event comprises comparing the geographic location of a mobile device that received the signal to its location when the latest media file was recorded during the recording session 18 The method of claim 9 wherein detecting the end of the event comprises comparing the geographic location of a mobile device that received the signal to boundaries of a location associated with the check in 19 The method of claim 9 wherein detecting the end of the event comprises analyzing the geographic locations of a mobile device that received the signal when media files were recorded during the recording session with a clustering algo rithm 20 The method of claim 9 wherein detecting the end of the event comprises maintaining both a
26. devices 102 104 106 are illustrated as desktop type computing devices com puting device 108 is illustrated as a laptop type computing device 108 and computing device 110 is illustrated as a mobile computing device It is noted however that comput ing devices 102 104 106 108 110 may include e g a desktop computer a laptop computer a handheld computer a television with one or more processors embedded therein and or coupled thereto a tablet computing device a personal digital assistant PDA a cellular telephone a network appli ance a camera a smart phone an enhanced general packet radio service EGPRS mobile phone a media player a navi gation device an electronic messaging device a game con sole or a combination of two or more of these data processing devices or other appropriate data processing devices In some implementations a computing device may be included as part ofa motor vehicle e g an automobile an emergency vehicle e g fire truck ambulance a bus Users interacting with computing devices 102 104 106 108 110 can participate in a social network 123 hosted e g by the server system 112 by uploading and downloading electronic content to the social network The electronic con tent may include e g text comments e g status updates announcements replies digital images videos audio files and or other appropriate information In some implementa tions information can be posted on a use
27. dit event album 216 U S Patent Sep 2 2014 Sheet 3 of 7 US 8 825 783 B1 E 305 301 306 326 327 896767051336 Q T Y U O P OF n f fes A G IIH J K L III 8J f L9 lt gt 2 N M aaa D led cr ALT CAP xen SYM ALT wasa asao Fig 3 US 8 825 783 B1 LL ozv 6lt Lit Llp oL gt SLY SWVHDOUd We WALSASANS SSuncsienan anaon 1424 WALSAS SNILVH3dO ANOHd3TL NOLLVSIAVN ei WnIG3W 1 6 AB ONAN un a ei 3OVH31NI 3OV4YSLNI 3OV3831NI 3ovdsl31NI Aad 3 annos vallo SIRIEN YNNILNY AV1dSIQ 607 807 40v 907 SOV vOv cov LOr U S Patent J MOd IS 6 JeAuq JALG asn Jepuig VIS US 8 825 783 B1 91105 oe Q un euinuny N a un Jeswolg U S Patent SJ pIAOJd u9 uo2 S bly SIeAuq oipny Jeu Sulejs S IN Je ug HIM JSA u ool nig J usay xnu d 9914 129 JENJA SoueJqr 9402 proJpuy gomos u JoBeuey uinq y Ju9A3 salJeJqr uoneorddy sJu9 uoo oss suoneoijddy 6vG 929 v Z S JeAug ped ay JOA amp JaUJE ejdsiq 60S sal1ou do Jobeueyy YJOM WEJJ eoeungs 0vS JeDeue yrs Annoy J euey NODUIN
28. e described systems Accordingly other embodi ments are within the scope of the following claims What is claimed is 1 A computer implemented method for recording events in social media content the method comprising receiving by one or more data processing apparatuses a signal indicating a check in transmitting by at least one of the one or more data pro cessing apparatuses a first message including a check in status update generated at least in part based on the check in starting by at least one of the one or more data processing apparatuses a recording session associated with the check in recording by at least one of the one or more data process ing apparatuses media files during the recording ses sion automatically associating the media files with the check in and transmitting by at least one of the one or more data pro cessing apparatuses the media files in one or more addi tional messages associated with the check in status update 2 The method of claim 1 wherein the one or more addi tional messages are transmitted to a social network server 3 The method of claim 1 wherein the first message causes the check in status update to be published on a social network and the one or more additional messages cause the check in status update to be modified to include the media files 4 The method of claim 1 wherein first message causes the check in status update to be published ona social network and
29. e or government WAN network the Internet a telephone network or other network The network connection 306 uses a wired or wireless connector Example wireless connectors include for example an INFRARED DATA ASSOCIATION IrDA wireless connector a Wi Fi wireless connector an optical wireless connector an INSTI TUTE OF ELECTRICAL AND ELECTRONICS ENGI NEERS IEEE Standard 802 11 wireless connector a BLUETOOTH wireless connector such as a BLUETOOTH version 1 2 or 3 0 connector a near field communications NFC connector an orthogonal frequency division multi plexing OFDM ultra wide band UWB wireless connector a time modulated ultra wide band TM UWB wireless con nector or other wireless connector Example wired connec tors include for example an IEEE 1394 FIREWIRE connec tor a Universal Serial Bus USB connector including a mini B USB interface connector a serial port connector a parallel port connector or other wired connector In another implementation the functions of the network connection 306 and the antenna 305 are integrated into a single component The camera 307 allows the device 300 to capture digital images and may be a scanner a digital still camera a digital video camera or other digital input device In one example implementation the camera 307 is a 3 mega pixel MP cam erathat utilizes a complementary metal oxide semiconductor CMOS The microphone 309 allows the device 300 to capture sound
30. ed in a memory e g memory 764 of mobile computing device 750 In some implementations a media file is associated 212 with the check in by transmitting the media file in one or more messages that include a reference to the check in status update posted on a social network and causing a remote server e g server system 112 to store the media file in a data structure for an event album associated with the check in For example one or more messages includ ing a media file and reference to the check in status update may be transmitted via a network using a network interface e g a wireless network interface including an antenna A media file associated with the check in may be transmit ted 214 over a network e g over network 111 to remote server system 112 running social network 123 In some implementations a newly recorded media file is transmitted as soon as it is available and may be instantly published on a social network so that it is immediately available to some other users of a social network In some implementations a newly recorded media file may be transmitted as soon as it is available but rather than being published immediately stored by a remote server e g server system 112 pending comple tion and approval of the event album by the user In some implementations not shown in FIG 2 a newly recorded media file is not transmitted immediately but is stored locally pending completion and user approval of the event a
31. es a communication interface to the keyboard 302 a point ing device interface 405 that provides a communication interface to the pointing device 304 an antenna interface 406 that provides a communication interface to the antenna 305 a network connection interface 407 that provides a communi cation interface to a network over the computer network connection 306 a camera interface 408 that provides a com munication interface and processing functions for capturing digital images from the camera 307 a sound interface 409 that provides a communication interface for converting sound into electrical signals using the microphone 309 and for con verting electrical signals into sound using the speaker 310 a random access memory RAM 410 where computer instruc tions and data are stored in a volatile memory device for processing by the CPU 401 a read only memory ROM 411 where invariant low level systems code or data for basic system functions such as basic input and output I O startup orreception of keystrokes from the keyboard 302 are stored in anon volatile memory device a storage medium 412 or other suitable type of memory e g such as RAM ROM program mable read only memory PROM erasable programmable read only memory EPROM electrically erasable program mable read only memory EEPROM magnetic disks opti cal disks floppy disks hard disks removable cartridges flash drives where the files that comprise an operating system 4
32. file MIDP components such as the MIDP JAVA Specification Requests JSRs components MIDP runtime and MIDP applications as shown in FIG 5 The MIDP components can support MIDP applications running on the device 300 0 a 5 30 35 40 45 50 65 18 With regard to graphics rendering a system wide com poser manages surfaces and a frame buffer and handles win dow transitions using the OpenGL ES 524 and two dimen sional hardware accelerators for its compositions The Dalvik virtual machine 532 may be used with an embedded environment since it uses runtime memory very efficiently implements a CPU optimized bytecode inter preter and supports multiple virtual machine processes per device The custom file format DEX is designed for runt ime efficiency using a shared constant pool to reduce memory read only structures to improve cross process shar ing concise and fixed width instructions to reduce parse time thereby allowing installed applications to be translated into the custom file formal at build time The associated byte codes are designed for quick interpretation since register based instead of stack based instructions reduce memory and dispatch overhead since using fixed width instructions sim plifies parsing and since the 16 bit code units minimize reads The application libraries 504 include a view system 534 a resource manager 535 content providers 537 and an event album manager 552 T
33. g a first message including a check in status update generated at least in part based on the check in The operations may further include starting a recording session associated with the check in The operations may further include recording media files during the recording session Theoperations may further include automatically associating the media files with the check in The operations may further include transmitting the media files in one or more additional messages associated with the check in status update These and other embodiments can each optionally include one or more of the following features The one or more additional messages may be transmitted to a social network server The first message may cause the check in status update to be published on a social network and the one or more additional messages may cause the check in status update to be modified to include the media files The first message may cause the check in status update to be published on a social network and the one or more additional messages may cause the check in status update to be modified to include a link to a second status update that includes the media files The one or more additional messages may be transmitted after the recording session is terminated The one or more additional messages bearing a particular media file may be automati cally transmitted upon recording of the particular media file The particular media file may be automatically published on
34. he system services 505 includes a status bar 539 an application launcher 540 a package man ager 541 that maintains information for all installed applica tions a telephony manager 542 that provides an application level JAVA interface to the telephony subsystem 420 a noti fication manager 544 that allows all applications access to the status bar and on screen notifications a window manager 545 that allows multiple applications with multiple windows to share the display 301 and an activity manager 546 that runs each application in a separate process manages an applica tion life cycle and maintains a cross application history The applications 506 include a home application 547 a dialer application 549 a contacts application 550 and a browser application 551 The telephony manager 542 provides event notifications such as phone state network state Subscriber Identity Mod ule SIM status or voicemail status allows access to state information such as network information SIM information or voicemail presence initiates calls and queries and con trols the call state The browser application 551 renders web pages in a full desktop like manager including navigation functions Furthermore the browser application 551 allows single column small screen rendering and provides for the embedding of HTML views into other applications FIG 6 is a block diagram illustrating exemplary processes implemented by the operating system kerne
35. hitec ture of the device of FIG 3 FIG 5 is a block diagram illustrating exemplary compo nents of the operating system used by the device of FIG 3 FIG 6 is a block diagram illustrating exemplary processes implemented by the operating system kernel of FIG 5 20 25 30 35 40 45 50 55 60 65 4 FIG 7 shows an example of a computer device and a mobile computer device that can be used to implement the techniques described here Like reference numbers and designations in the various drawings indicate like elements DETAILED DESCRIPTION Definitions The term social network as used herein encompasses its plain and ordinary meaning including but not limited to a platform accessible to users through a communications net work that facilitates the forming of social connections between users and the sharing of information between con nected users of the platform The term social media content as used herein encom passes its plain and ordinary meaning including but not limited to electronic content that is submitted to a social network Types of electronic content include posts links images digital photographs check ins and so forth The term check in as used herein encompasses its plain and ordinary meaning including but not limited to a sub mission of information specifying a venue and or a geo graphic location at which a user is present The term content stream as used herei
36. implemented as a cellular telephone 780 It may also be implemented as part of a smartphone 782 personal digital assistant or other similar mobile device Various implementations of the systems and techniques described here can be realized in digital electronic circuitry integrated circuitry specially designed ASICs application specific integrated circuits computer hardware firmware software and or combinations thereof These various imple mentations can include implementation in one or more com puter programs that are executable and or interpretable on a programmable system including at least one programmable processor which may be special or general purpose coupled to receive data and instructions from and to transmit data and instructions to a storage system atleast one input device and at least one output device These computer programs also known as programs soft ware software applications or code include machine instruc tions for a programmable processor and can be implemented in a high level procedural and or object oriented program ming language and or in assembly machine language As used herein the terms machine readable medium com puter readable medium refers to any computer program product apparatus and or device e g magnetic discs optical disks memory Programmable Logic Devices PLDs used to provide machine instructions and or data to a program mable processor including a machine readable
37. in a status update for the check in In more detail the hardware environment ofthe device 300 includes a display 301 for displaying text images and video to a user a keyboard 302 for entering text data and user commands into the device 300 a pointing device 304 for pointing selecting and adjusting objects displayed on the display 301 an antenna 305 a network connection 306 a camera 307 a microphone 309 and a speaker 310 Although the device 300 shows an external antenna 305 the device 300 can include an internal antenna which is not visible to the user The display 301 can display video graphics images and text that make up the user interface for the software applica tions used by the device 300 and the operating system pro grams used to operate the device 300 Among the possible elements that may be displayed on the display 301 are a new mail indicator 311 that alerts a user to the presence of a new message an active call indicator 312 that indicates that a telephone callis being received placed oris occurring a data standard indicator 314 that indicates the data standard cur rently being used by the device 300 to transmit and receive data a signal strength indicator 315 that indicates a measure ment of the strength of a signal received by via the antenna 305 such as by using signal strength bars a battery life indicator 316 that indicates a measurement of the remaining battery life or a clock 317 that outputs the cur
38. ing or growing K means clustering The end of the event may be detected 210 by determining if the current location is sufficiently far from a cluster of previous recording locations In some implementations the end of the event may be detected 210 by monitoring both the timing of recordings and the geographic location of a mobile device For example the end ofthe event may be detected 210 by determining if either the time between successive recordings exceeds a threshold or the distance between successive recordings exceeds another threshold A time based event end detector and a geographic location based event end detector may be main tained In some implementations outputs signals of the time based detector and the location based detector may be com bined by weighting the output signals and adding them together The end of the event may be detected 210 by deter mining if the combined detector output exceeds a threshold In some implementations the weights used to combine time based and location based signals may be adapted based on a user s usage patterns For example if the underlying event happens to occur over wide area e g golfing a user may move around substantially during the event resulting in a large number of false positive detections of the end of the event based on geographic location change As the user pro vides feedback in response to end of event notifications or reminders by indicating that the event is still continui
39. ion of the content by the author the particular user is not provided in the ACL for the content In some examples if the social affinity score is at or above the threshold score it is deter mined that the content will be accessible by and or distrib uted to the particular user Consequently the particular user has been explicitly targeted for distribution of the content by the author and the particular user is provided in the ACL for the content Generally the distribution hub determines end points to which the content data set is to be distributed based e g on the ACL For example the set of contacts that may care about the content and or that are allowed access to the content is determined based on the ACL and the ID of the content is written to a per user view index at the distribution hub When fetching content to distribute to a user the user view index is accessed and the IDs of the various contents that the user is allowed to view are determined The content data sets are retrieved from a data store e g data store 118 of FIG 1 and are transmitted to a client device associated with the request ing user In some implementations the ACL can be provided based on an overall score a quality score and or the social affinity score Content may be distributed to a user s main page for inclusion in a content stream A user device e g computing device 110 may include an event album manager 140 module The event album manager
40. irm Patent Law Works LLP 57 ABSTRACT This specification describes technologies relating to record ing an event album for sharing through a social network In general one aspect of the subject matter described in this specification can be embodied in methods that include receiv ing a signal indicating a check in and transmitting a first message including a check in status update generated at least in part based on the check in The methods may further include starting a recording session associated with the check in and recording media files during the recording ses sion The methods may further include automatically associ ating the media files with the check in The methods may further include transmitting the media files in one or more additional messages associated with the check in status update 35 Claims 7 Drawing Sheets U S Patent Sep 2 2014 Sheet 1 of 7 US 8 825 783 B1 123 DISTRUBTION ENGINE 2 2 a JO lt JO UO O 2 FIG 1 U S Patent Sep 2 2014 Sheet 2 of 7 US 8 825 783 B1 200 202 Receive a signal indicating a check in 204 Transmit a check in status update 206 Start a recording session for the check in Record media files 208 210 Detect end of event associated with the check in 211 Recording session terminated 212 Associate media files with check in 214 Transmit media files Transmit publication message 218 Fig 2 yes E
41. itioning receiver to detect the end of the event Systems may include a module configured to estimate location coordinates based on signal strength measurements of signals received from multiple base stations and the means for detecting the end of the event may use the estimated location coordinates to detect the end of the event Particular embodiments of the invention can be imple mented to realize none one or more of the following advan tages Some implementations may facilitate the recording media associated with an event for sharing over a network as a collection or album Some implementations may automati cally associate media files with a check in status update Some implementations may detect the end ofa social event to reduce the chance of media being inadvertently added to a status update The details of one or more embodiments of the invention are set forth in the accompanying drawings and the descrip tion below Other features aspects and advantages of the invention will become apparent from the description the drawings and the claims BRIEF DESCRIPTION OF THE DRAWINGS FIG 1 is a block diagram of an example online environ ment FIG 2 is a flow chart of an example process for recording an event album associated with a check in FIG 3 is a schematic representation of an exemplary mobile device that implements embodiments of event album manager described herein FIG 4 is a block diagram illustrating the internal arc
42. k in status update is transmitted to a remote server e g server system 112 For example transmitting 204 the check in status update may be accomplished by transmitting the message via a network using a network interface e g a wireless network interface including an antenna A remote server receiving the check in status update that hosts a social network e g social network 123 may incorporate the check in status update as an entry in a status update feed or stream for a user that is accessible by some other users of the social network A recording session for the check in is started 206 During the recording session media files that are recorded will be automatically associated with the check in to facilitate the creation of an event album for an event associated with the check in In some implementations the initiation and main tenance of a recording session and a resulting event album may be performed by a control module e g event album manager 140 on user device e g user device 110 that controls sensor interfaces used to record media files and asso ciates those media files with the check in For example the event album manager 620 may be instantiated on the mobile device depicted in FIGS 3 6 and used to start 206 and main tain a recording session for a check in A media file is recorded 208 For example a media file may encode one or more still images sounds video or some other recorded signal s In some implementa
43. l 600 Generally applications and system services run in separate processes where the activity manager 546 runs each application in a separate process and manage the application life cycle The applications run in their own processes although many activi ties or services can also run in the same process Processes are started and stopped as needed to run an application s compo nents and processes may be terminated to reclaim resources Each application is assigned its own process whose name is the application s package name and individual parts of an application can be assigned another process name Some processes can be persistent For example processes associated with core system components such as the surface manager 616 the window manager 614 or the activity man ager 610 can be continuously executed while the device 300 is powered Additionally some application specific process can also be persistent For example processes associated with the dialer application 621 may also be persistent The processes implemented by the operating system kernel 600 may generally be categorized as system services pro cesses 601 dialer processes 602 browser processes 604 and US 8 825 783 B1 19 maps processes 605 The system services processes 601 include status bar processes 606 associated with the status bar 539 application launcher processes 607 associated with the application launcher 540 package manager processes 609 associated
44. lbum In this case the media files may betransmitted together in one or more messages associated with the check in status update after the recording session is terminated Transmitting 214 a media file may be accomplished by transmitting one or more messages including the media file via a network using a network interface e g a wireless network interface including an antenna For example a media file may be transmitted using antennae interface 406 or network connection interface 407 of the mobile device 300 After an associated media file is transmitted 218 the record ing session may continue by recording 208 additional media files When the status of the recording session is checked 211 if the recording session has been terminated then a user may be prompted to edit 218 an event album For example a user may review the event album and delete unwanted media files In some implementations a user may uses media editing soft wareto modify media files A user may indicate that editing of the event album is complete and that the event album is ready for publication For example a user may be prompted through a display e g display interface 402 and a user may enter 40 45 55 60 65 12 edits or indicate approval of the event album for publication through a user interface e g keyboard interface 404 or point ing device interface 405 A publication message may be transmitted 218 to cause media files associated with
45. le device of FIGS 3 6 that informs the user that the end ofan event has been detected and suggests termination of the associated recording session In other cases the recording session may be automatically terminated when the end of an event associated with the check in is detected In some imple US 8 825 783 Bl 11 mentations the transmission of media files associated with the check in may be suspended automatically upon detect of the end of the associated event If the end of an event is detected between recordings a system may wait until the next recording occurs to present the user with an alert and prompt the user to terminate the record ing session In some implementations an alert may be pre sented as soon as the end of the event is detected even if it is between recordings When the status of the recording session is checked 211 if the recording session has not been terminated then new media files recorded are associated 212 with the check in and the media files may be transmitted 214 A media file recorded during the recording session may be automatically associated 212 with the check in by saving the media file in a data structure for an event album associated with the check in The event album may include a reference to the check in e g an identifier for the check in status update that has been posted on a social network For example the event album including media files associated with the check in may be stor
46. lude a local area network LAN wide area network WAN the Internet a cellular network or a combination thereof connecting a number of mobile comput ing devices fixed computing devices and server systems The network s included in network 111 may provide for communications under various modes or protocols examples of which include Transmission Control Protocol Internet Protocol TCP IP Global System for Mobile communica tion GSM voice calls Short Electronic message Service SMS Enhanced Messaging Service EMS or Multimedia Messaging Service MMS messaging Code Division Mul tiple Access CDMA Time Division Multiple Access TDMA Personal Digital Cellular PDC Wideband Code Division Multiple Access WCDMA CDMA2000 or Gen eral Packet Radio System GPRS among others Commu nication may occur through a radio frequency transceiver In addition short range communication may occur e g using a BLUETOOTH WiFi or other such transceiver system Computing devices 102 104 106 108 110 enable respec tive users 122 124 126 128 130 to access and to view documents e g Web pages included in Web sites For example user 122 of computing device 102 may view a Web page using a Web browser The Web page may be provided to computing device 102 by server system 112 server system 114 or another server system not shown 20 25 30 35 40 45 50 55 60 65 6 Inexample environment 100 computing
47. may also want to further document his or her activities at the location to enhance the sharing experience or possibly encourage other uses to attend an event at the location One way to further document those activities is by posting additional rich infor mation about those activities in the form of media files e g photos sounds recordings or videos This enhanced sharing may be facilitated by a device system or process that auto matically associates media files recorded at the check in loca tion or during the course of an event associated with the check in to create a collection of media files called an event US 8 825 783 Bl 5 album that may be posted in the user s status update feed The event album may be posted as an edit to the original check in status update or in a separate status update that is linked to the check in status update For example a user attending a party at a restaurant may check in to the restaurant location when the user arrives and may proceed to takes photos while at the party As pictures are taken during the party they may be automatically uploaded to the social network and made available in real time to other users with access to the user s feed In some cases a user may prefer to store media files recorded during the party and post the resulting event album all at once after having an opportu nity to review and possibly edit the media files The recorded media files may be automatically associated
48. medium that receives machine instructions as a machine readable signal The term machine readable signal refers to any signal used to provide machine instructions and or data to a program mable processor To provide for interaction with a user the systems and techniques described here can be implemented on a computer having a display device e g a CRT cathode ray tube or LCD liquid crystal display monitor for displaying infor mation to the user and a keyboard and a pointing device e g a mouseora trackball by which the user can provide input to the computer Other kinds of devices can be used to provide for interaction with a user as well for example feedback provided to the user can be any form of sensory feedback e g visual feedback auditory feedback or tactile feed back and input from the user can be received in any form including acoustic speech or tactile input The systems and techniques described here can be imple mented in a computing system that includes a back end com ponent e g as a data server or that includes a middleware component e g an application server or that includes a front end component e g a client computer having a graphi cal user interface or a Web browser through which a user can interact with an implementation of the systems and tech niques described here or any combination of such back end middleware or front end components The components ofthe system can be interconnecte
49. n encompasses its plain and ordinary meaning including but not limited to items of social media content displayed in a portion of a graphical user interface designated for display ofthe items of social media content The term status update as used herein encompasses its plain and ordinary meaning including but not limited to a unit of social media content that reflects the current status of a user The term social connection as used herein encompasses its plain and ordinary meaning including but not limited to a relationship between nodes in a graph representing users of a social networking service The term clustering algorithm as used herein encom passes its plain and ordinary meaning including but not limited to a process for finding structure in a collection of unlabeled data points by classifying the data points into groups whose members are similar in some way while being dissimilar in some way to members of other groups Types of clustering algorithms include recurrent self organizing map K means clustering growing K means clustering and so forth The term processing device as used herein encompasses its plain and ordinary meaning including but not limited to an appropriate processor and or logic that is capable of receiving and storing data and of communicating over a network Overview When a user checks in to announce his or her presence at a location to other users of a social network the user
50. nals that implement point to point radio communi cation wireless local area network LAN communication or location determination The antenna 305 may facilitate point to point radio communication using the Specialized Mobile Radio SMR cellular or Personal Communication Service PCS frequency bands and may implement the transmission of data using any number or data standards For example the antenna 305 may allow data to be transmitted between the device 300 and a base station using technologies such as Wireless Broadband WiBro Worldwide Interoperability for Microwave ACCess WiMAX 3GPP Long Term Evolution LTE Ultra Mobile Broadband UMB High Performance Radio Metropolitan Network HIPERMAN iBurst or High Capacity Spatial Division Multiple Access HC SDMA High Speed OFDM Packet Access HSOPA High Speed Packet Access HSPA HSPA Evolution HSPA High Speed Upload Packet Access HSUPA High Speed Down link Packet Access HSDPA Generic Access Network GAN Time Division Synchronous Code Division Multiple Access TD SCDMA Evolution Data Optimized or Evo lution Data Only EVDO Time Division Code Division Multiple Access TD CDMA Freedom Of Mobile Multime dia Access FOMA Universal Mobile Telecommunications System UMTS Wideband Code Division Multiple Access W CDMA Enhanced Data rates for GSM Evolution EDGE Enhanced GPRS EGPRS Code Division Multiple 20 25 30 35 40 45 50 55 60
51. ne type of status update is a check in status update which tells other users that a certain user is present at certain location e g a stadium a restaurant or a club Some social networks also allow users to post pictures and other media files as part of their online profile SUMMARY This specification describes technologies relating to recording an event album for sharing through a social net work In general one aspect of the subject matter described in this specification can be embodied in a method that includes receiving using one or more data processing apparatuses a signal indicating a check in The method may further include transmitting using one or more data processing apparatuses a first message including a check in status update generated at least in part based on the check in The method may further include starting using one or more data processing appara tuses a recording session associated with the check in The method may further include recording using one or more data processing apparatuses media files during the recording ses sion The method may further include automatically associ ating the media files with the check in The method may further include transmitting using one or more data process ing apparatuses the media files in one or more additional messages associated with the check in status update In general one aspect of the subject matter described in this specification can be embodied in a s
52. ng the weights may be adjusted to weight a time based signal more significantly than a location based signal that caused the false positives In some implementations status checks e g of recording times or geographic location are performed periodically dur ing the recording session to detect 210 the end of the event In some implementations these checks are performed when a new media file is recorded For example detecting 210 the end of the event may be implemented by the event album manager 140 in the comput ing device 110 In some implementations a global position ing system receiver is used to determine location coordinates that are used to detect the end of the event based on geo graphic location For example GPS Global Positioning Sys tem receiver module 770 of mobile computing device 750 may be used to determine location coordinates In some implementations a module e g navigation module 417 or antennae interface 406 estimates location coordinates based on signal strength measurements of signals received from multiple base stations These location coordinate estimates may be used to detect the end of the event A check 211 is performed to determine whether the record ing session has terminated In some cases a recording session may be terminated manually by a user Manual termination of the recording session may be prompted by presenting a user with an alert e g via display 301 or display interface 402 of the mobi
53. nput output devices such as a keyboard a pointing device a scanner ora networking device such as a switch or router e g through a network adapter The computing device 700 may be implemented in a num ber of different forms as shown in the figure For example it may be implemented as a standard server 720 or multiple times in a group of such servers It may also be implemented as part of a rack server system 724 In addition it may be implemented in a personal computer such as a laptop com puter 722 Alternatively components from computing device 700 may be combined with other components in a mobile device not shown such as device 750 Each of such devices may contain one or more of computing device 700 750 and an entire system may be made up of multiple computing devices 700 750 communicating with each other Computing device 750 includes a processor 752 memory 764 an input output device such as a display 754 a commu nication interface 766 and a transceiver 768 among other components The device 750 may also be provided with a storage device such as a microdrive or other device to pro vide additional storage Each of the components 750 752 764 754 766 and 768 are interconnected using various buses and several of the components may be mounted on a common motherboard or in other manners as appropriate US 8 825 783 B1 21 The processor 752 can execute instructions within the com puting device 750 including
54. operating system for computers or embedded systems The application devel opment platform or framework for the operating system 414 may be BINARY RUNTIME ENVIRONMENT FOR WIRELESS BREW JAVA Platform Micro Edition JAVA ME or JAVA 2 Platform Micro Edition J2ME using the SUN MICROSYSTEMS JAVASCRIPT programming lan guage PYTHON FLASH LITE or MICROSOFT NET Compact or another appropriate environment The device stores computer executable code for the oper ating system 414 and the application programs 415 such as an email instant messaging a video service application a mapping application word processing spreadsheet presenta tion gaming mapping web browsing JAVASCRIPT engine or other applications For example one implementation may allow a user to access the GMAIL email application an instant messaging application a video service application a mapping application or an imaging editing and presentation application The application programs 415 may also includea widget or gadget engine such as a TAFRI widget engine a MICROSOFT gadget engine such as the WINDOWS SIDE BAR gadget engine or the KAPSULES gadget engine a YAHOO widget engine such as the KONFABULTOR widget engine the APPLE DASHBOARD widget engine a gadget engine the KLIPFOLIO widget engine an OPERA widget engine the WIDSETS widget engine a proprietary widget or gadget engine or other widget or gadget engine the provides host system soft
55. ork friends circle or some combination of circles In this way the views of the combined event posting may be asymmetric among users In some implementations multiple users may create a joint event album thereby having a shared and symmetric access to media files recorded in the joint event album The event album manager 140 may be implemented as software hardware or a combination of software and hard ware that is executed on a processing apparatus such as one or more computing devices e g a computer system as illus trated in FIG 7 Example Processes FIG 2 is a flow chart of an example process 200 for record ing an event album associated with a check in The process 200 can be implemented for example by the event album manager 140 in the computing device 110 of FIG 1 In some implementations the computing device 110 is a data processing apparatus that includes one or more processors that are configured to perform actions of the pro cess 200 For example the data processing apparatus may be a computing device e g as illustrated in FIG 7 In some implementations process 200 may be implemented by the event album manager 552 that is executed by the mobile device described in FIGS 3 6 In some implementations a computer readable medium can include instructions that when executed by a computing device e g a computer sys tem cause the device to perform actions of the process 200 A signal is received 202 indicating
56. pha numeric keypad the keyboard 302 also includes other special function keys such as an establish call key 330 that causes a received call to be answered or a new call to be originated a terminate call key 331 that causes the termination ofan active call a drop down menu key 332 that causes a menu to appear within the display 301 a backward navigation key 334 that causes a previously accessed network address to be accessed again a favorites key 335 that causes an active web page to be placed in a bookmarks folder of favorite sites or causes a bookmarks folder to appear a home page key 336 that causes an application invoked on the device 300 to navigate to a predetermined network address or other keys that provide for multiple way navigation application selection and power and volume control The user uses the pointing device 304 to select and adjust graphics and text objects displayed on the display 301 as part of the interaction with and control of the device 300 and the applications invoked on the device 300 The pointing device 304 is any appropriate type of pointing device and may be a joystick a trackball a touch pad a camera a voice input device a touch screen device implemented in combination with the display 301 or any other input device The antenna 305 which can be an external antenna or an internal antenna is a directional or omni directional antenna used for the transmission and reception of radiofrequency RF sig
57. r s behalf by systems and or services external to social network 123 or to server system 112 For example the user may post a review of a movie to a movie review Web site and with proper permis sions that Web site may cross post that review to social network 123 on the user s behalf The user may include with a post a tag which includes a hyperlink to a discussion forum about a particular topic e g the movie The tag typically relates to the topic of the post although that need not be the case always The discussion forum contains posts by the user and others who have included similar tags on their posts Generally users interacting with the computing devices 102 104 106 108 110 can also use social network 123 to define social circles to organize and to categorize the user s relationships to other users of the social network The social circles become part of the user s social connections Elec tronic content can be distributed to contacts within social network 123 including one or more social circles so that such content is viewable by the indicated contacts and or contacts or others In an example operation a user of social network 123 can generate content and indicate e g one or more individual social network contacts and or social circles to which the generated content is to be distributed During a content write time a content data set is transmitted from the user s client computing device e g computing device 102 of
58. rent time The display 301 may also show application icons repre senting various applications available to the user such as a web browser application icon 319 a phone application icon 320 a search application icon 321 a contacts application icon 322 a mapping application icon 324 an email application icon 325 or other application icons In one example imple mentation the display 301 is a quarter video graphics array QVGA thin film transistor TFT liquid crystal display LCD capable of 16 bit or better color US 8 825 783 B1 13 A user uses the keyboard or keypad 302 to enter com mands and data to operate and control the operating system and applications that provide for interaction with event album manager systems The keyboard 302 includes standard key board buttons or keys associated with alphanumeric charac ters such as keys 326 and 327 that are associated with the alphanumeric characters Q and W when selected alone or are associated with the characters and 1 when pressed in combination with key 329 A single key may also be associated with special characters or functions including unlabeled functions based upon the state of the operating system or applications invoked by the operating system For example when an application calls for the input of a numeric character a selection of the key 327 alone may cause a 1 to be input In addition to keys traditionally associated with an al
59. tatus update 26 The mobile device of claim 25 further comprising a global positioning system receiver configured to deter mine location coordinates and wherein the instructions stored on the memory when executed by the data processing apparatus further cause the data processing apparatus to perform operations comprising detecting the end of an event associated with the check in based in part on the location coordinates 27 The mobile device of claim 26 further comprising a display configured to present a user with an alert indicating that the end of the event has been detected and suggesting the termination of the recording session 28 The mobile device of claim 25 wherein the sensor includes a camera 29 The mobile device of claim 25 wherein the sensor includes a microphone 30 A system comprising a data processing apparatus and a memory coupled to the data processing apparatus having instructions stored thereon which when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising receiving a signal indicating a check in transmitting a first message including a check in status update generated at least in part based on the check in starting a recording session associated with the check in recording media files during the recording session automatically associating the media files with the check in and transmitting the media files in one or more additional messages
60. the check in to be made accessible to other users of a social network In some implementations the media files have previously been transmitted to a social network server e g server system 112 running social net work 123 and the publication message grants the user s permission for those files to be accessed through the check in status update or another status update that is linked to the check in status update Event duration information may be included with the publication message and may be added to the check in status update along with media files or pointers to the media files In some implementations associated media files that were not previously transmitted are transmitted along with a publication message after the recording session is complete or after the user complete edits of the media files in the event album and approves the event album for publica tion In some implementations a publication message is transmitted 218 via a network using a network interface e g a wireless network interface including an antenna Example Products Referring now to FIG 3 the exterior appearance of an exemplary mobile device 300 that implements the event album manager 140 shown in FIG 1 is illustrated Briefly and among other things the device 300 includes a processor configured to automatically associate media files recorded during an event with a corresponding check in by creating an event album that may be posted on a social network
61. the one or more additional messages cause the check in status update to be modified to include a link to a second status update that includes the media files 5 The method of claim 1 wherein the one or more addi tional messages are transmitted after the recording session is terminated 6 The method of claim 1 wherein the one or more addi tional messages bearing a particular media file are automati cally transmitted upon recording of the particular media file 7 The method of claim 6 wherein the particular media file is automatically published on a social network upon receipt by a social network server 8 The method of claim 1 wherein the recording session is manually terminated by a user 20 25 30 35 40 45 50 55 60 24 9 The method of claim 1 further comprising detecting by at least one of the one or more data processing apparatuses the end of an event associated with the check in 10 The method of claim 9 further comprising automatically terminating the recording session upon detecting the end of the event 11 The method of claim 9 further comprising alerting by at least one of the one or more data processing apparatuses a user upon detecting the end of the event 12 The method of claim 9 further comprising alerting by at least one of the one or more data processing apparatuses a user the next time a media file is recorded after detecting the end of the event 13 The metho
62. tions a media file is recorded using a sensor e g camera 307 or microphone 309 of the mobile device of FIG 3 During the recording session analysis may be performed to detect 210 the end ofan event associated with the check in Insome implementations the time elapsed since the check in and or since the last media file was recorded is monitored to detect 210 the end of the event For example an expiration timer may be monitored to detect the end of the event The expiration timer may be set to an initial value e g an hour when the recording session starts or when a first media file is recorded The expiration timer may be reset e g to the initial value each time a media file is recorded before it expires In some implementations the reset value of the timer may be adapted based on the timing of previous recordings In some implementations the end of an event associated with the check in may be detected 210 by analyzing media file record ing times during the recording session with a clustering algo rithm For example the end of the event may be detected by determining if the time of the most recent recording is suffi ciently later than a cluster of previous recordings during the recording session In some implementations the end of the event may be detected 210 by monitoring the geographic location of a mobile device For example the geographic location of a mobile device that received the signal indicating the check in may be
63. tions may further include automatically associating the media files with the check in 20 25 30 35 40 45 50 55 60 65 2 The operations may further include transmitting the media files in one or more additional messages associated with the check in status update Ingeneral oneaspect ofthe subject matter described in this specification can be embodied in a system that includes a user interface configured to receive a signal indicating a check in The system may further include a module configured to start a recording session associated with the check in The system may further include a sensor configured to record media files during the recording session The system may further include a module configured to automatically associate the media files with the check in The system may further include a network interface configured to transmit a first message including a check in status update generated at least in part based on the check in and to later transmit the media files in one or more additional messages associated with the check in status update Ingeneral one aspect ofthe subject matter described in this specification can be embodied in a computer readable media storing software including instructions executable by a pro cessing device that upon such execution cause the processing device to perform operations that include receiving a signal indicating a check in The operations may further include transmittin
64. tionship between the first user and the second user can be provided and a second social affinity score associated with a social relationship between the first user and the third user can be provided The first social affinity score can be different from the second social affinity score reflecting dif ferent social relationships between the first user and the sec ond user and the first user and the third user The first social affinity score and the second social affinity score can be appended to the content data set and or stored in another location while maintaining an association with the content data set Insomeimplementations the distribution data is processed to provide an access control list ACL that specifies which contacts within the social network are granted access to the content In some implementations content associated social affinity scores can be processed to provide the ACL For example distribution data can indicate that content is to be accessible by and or distributed to a particular user A social affinity score can be determined for the content and can be specific to a relationship between the content recipient and the author of the content In some examples if the social affinity score is below a threshold score it is determined that the content will not be accessible by and or distributed to the particular user Consequently in this example although the particular user had been explicitly targeted for distribut
65. virtual machine 532 LIBWE BCORE processes 631 associated with the LIBWEBCORE library 526 and LIBC processes 632 associated with the LIBC library 525 The maps processes 605 include maps application pro cesses 634 core JAVA libraries processes 635 Dalvik virtual machine processes 636 and LIBC processes 637 Notably some processes such as the Dalvik virtual machine pro cesses may exist within one or more of the system services processes 601 the dialer processes 602 the browser pro cesses 604 and the maps processes 605 Example Alternative System Implementations FIG 7 shows an example of a generic computer device 700 and a generic mobile computer device 750 which may be used with the techniques described here Computing device 700 is intended to represent various forms of digital comput ers such as laptops desktops workstations personal digital assistants servers blade servers mainframes and other appropriate computers Computing device 750 is intended to represent various forms of mobile devices such as personal digital assistants cellular telephones smartphones and other similar computing devices The components shown here their connections and relationships and their functions are meant to be exemplary only and are not meant to limit imple mentations of the inventions described and or claimed in this document Computing device 700 includes a processor 702 memory 704 a storage device 706 a high speed interf
66. ware for a physically inspired applet on a desktop Although it is possible to provide for event album creation for check ins using the above described implementation it is also possible to implement the functions according to the present disclosure as a dynamic link library DLL or as a plug in to other application programs such as an Internet web browser such as the FOXFIRE web browser the APPLE SAFARI web browser or the MICROSOFT INTERNET EXPLORER web browser The navigation module 417 may determine an absolute or relative position of the device such as by using the Global Positioning System GPS signals the GLObal NAvigation Satellite System GLONASS the Galileo positioning sys tem the Beidou Satellite Navigation and Positioning System an inertial navigation system a dead reckoning system or by accessing address internet protocol IP address or location information in a database The navigation module 417 may US 8 825 783 Bl 17 also be used to measure angular displacement orientation or velocity of the device 300 such as by using one or more accelerometers FIG 5 is a block diagram illustrating exemplary compo nents of the operating system 414 used by the device 300 in the case where the operating system 414 is a mobile device platform The operating system 414 invokes multiple pro cesses while ensuring that the associated phone application is responsive and that wayward applications do not cause a fault or
67. with the check in by starting and maintaining a recording session when the check in occurs When the user finishes with an event associated with the check in the user may terminate the recording session The user s device may be ableto detect the end of an event associated with the check in by determining when the user or more precisely a user s mobile device has left the area of the check in location or if the time between recordings increases in a way that indicates the event may have ended Event end detection schemes may be used to automatically terminate a recording session or to alert a user and prompt the user to terminate or continue the recording session Example System Implementations FIG 1 is a block diagram showing an example ofa network environment 100 on which the techniques described herein may be implemented Network environment 100 includes computing devices 102 104 106 108 110 that are config ured to communicate with a first server system 112 and or a second server system 114 over a network 111 Computing devices 102 104 106 108 110 have respective users 122 124 126 128 130 associated therewith The first and second server systems 112 114 each include a computing device 116 and a machine readable repository or database 118 Example environment 100 may include many thousands of Web sites computing devices and servers which are not shown Network 111 may include a large computer network examples of which inc
68. ystem that includes a user interface configured to receive a signal indicating a check in The system may further include a module configured to start a recording session associated with the check in The system may further include a sensor configured to record media files during the recording session The system may further include a module configured to automatically associate the media files with the check in The system may further include a wireless network interface configured to transmit a first mes sage including a check in status update generated at least in part based on the check in and to later transmit the media files in one or more additional messages associated with the check in status update Ingeneral one aspect ofthe subject matter described in this specification can be embodied in a system that includes a data processing apparatus and a memory coupled to the data pro cessing apparatus The memory having instructions stored thereon which when executed by the data processing appa ratus cause the data processing apparatus to perform opera tions including receiving a signal indicating a check in The operations may further include transmitting a first message including a check in status update generated at least in part based on the check in The operations may further include starting a recording session associated with the check in The operations may further include recording media files during the recording session The opera
Download Pdf Manuals
Related Search
Related Contents
Monitores LCD de ecrã plano de elevado keyTouch editor 3.0 user manual Hitachi ZX870LCH-3 MODE D`EMPLOI HP Business Inkjet 2800 User's Manual Manual de Instalación de NEO KV-24FW2のみ Catalogue du Mois de l`Autre 2015 Copyright © All rights reserved.
Failed to retrieve file