You are on page 1of 20
US 20150361 cu») United States c2) Patent Application Publica ‘Wang et al. 6) MESSAGING-ENABLED UNMANNED. AERIAL VEHICLE, Applicant: Twitter, Ine. San Francisco, AUS) Inventors: Ya-Ting Wang, San Franciseo, CA (US); ‘Wayne Robins, San Francisco, CA (US) Appl. Now 147738087 Bilked: 12,2015 Related US. Application Data Provisional application No. 62/012,202, filed on Jun 13,2014. Messaging Platform 100 ion 29 ITAL (10) Pub. No.: US 2015/0362917 Al (43) Pub, Date Dee. 17, 2015 (2) S.C ce 05D 1/0011 (2013.01) on ABSTRACT AAn unmanned aerial vehicle (UAV) caries 1 camera, sends “ata from the camera, and receives commands, The UAV is fonnected to & messauing platiorm, Pictures or video elips received from the UAV aze selected and placed in messages broadeast by an account associated with the UAV. Video Thole from the cameras live-sireamed in a ear-type mies sage. Account holders ofthe messaging platform may’ control ‘the UAV with commands embedded in messages and directed towards an account associated with the UAV. Controllable clements ofthe UAV include UAV location, eamera orienta. ‘ion, camera subject, UAV-mounted lighting, UAV-mounted splay, « UAV-mounted projector, UAV-mounted speakers land detachable payload. UAV control may be determined ‘rough democratic means. Some UAV functionality may'be {riggered through aggregated engagements on the messaging platorm, The UAV may include a display sereen andior a microphoneto provide fr telepresence or interview fanction- aly ' Pict pl Client i 29 Pict Frontend] | Madule 122 UAV Interaction Engine 150 i API 2 Rowing Message ule Repository 125 40 Frontend Module ‘Connection om Graph Repository Web 182 14 Delivery Module cand Repository 1a Patent Application Publication Dee. 17, 2015 Sheet 1 of 7 US 2015/0362917 AI ~ Messaging i Platiorm Pilot 400 liont q 120 1 Pilot Frontend Module 122 1 i UAV ! Interaction eon ! ; Reposiony 1 uav ee 6 1 as 190 ! us ae || | uz || | Reuing Message 1 lodule Repository 1 128 1 JF cient Frontend | —T—} oe Module | 1 LAS cami | | ae | Graph ! Repository weo |]! 142 ae |} | i i Stream 1 Rpository i “ad 1 1 1 i FIG. 1 Patent Application Publication Dec. 17,2015 Sheet 20f7 US 2015/0362917 A Unmanned Aerial Vehicle (UAV) us UAV Receiver Camera | [ Transmitter | [ Payload 205 | | Sograter 215 220 225 FIG. 2 Patent Application Publication Dee. 17, 2015. Sheet 3 of 7 US 2015/0362917 AI Unmanned Aerial Vehicle (UAV) Interaction Engine 150 Message Interactive Authoring Message frat crane Irs ag 310 320 UAV Controller 330 Command Identifier commen aa Repository 334 Command Selector mae 335 UAV Flight UAV Payload Controller Controller 338 339 FIG. 3 Patent Application Publication Dee. 17, 2015. Sheet 4 of 7 US 2015/0362917 AI Start v Receive Media Captured by UAV 410 ' Incorporate Media into Message 420 v Broadcast Message to Clients 430 Y Receive Interactions Related to the UAV from Clients 440 ' Determine UAV Command based on Received Interactions 450 ul Transmit UAV Command to UAV. 460 End FIG. 4 Patent Application Publication Dee. 17, 2015. Sheet 5 of 7 US 2015/0362917 AI Messaging Platform Glient uav 190 195 1S Capture Media incorporate Captured Media into Message Interact with Message Generate Command Respond to Command 550 FIG. 5 Patent Application Publication Dec. 17,2015 Sheet 6 of 7 US 2015/0362917 AI Computer ‘system 09 Monitor Processor 612 602 2 — Keyboard 608 Memory 604 Bus 618 Mouse Storage VG) — a0 608 Network Netware Interface Device sa 18 Microphone aa 620 Touch-Sensitive Z Input Device & p G22 adds t i FIG. 6 Patent Application Publication Dee. 17, 2015. Sheet 7 of 7 US 2015/0362917 AI FIG. 7 US 2015/0362917 Al -MESSAGING-ENABLED UNMANNED. AERIAL VEHICLE (CROSS-REFERENCE TO RELATED "APPLICATION [0001] This application claims the benefit of U.S. Appliea- tion No, 62/012,202 filed Jun. 13, 2014, whieh is incorpo- rated by reference i its entirety BACKGROUND {0002} Ontine social media servos, such as social pete Yworkingsites, ews ogaregatr, blogs, ane ike provide a Fh environment for user o comment on evens of interest ‘and communicate With other users. Social media seoount holders may’ capture and transmit certain facets of an event (Ga, a sporting event, a concert performance, an avarls show, a festival, 2 competition) 10 flowers of the event ‘Thuse fllowers may be her account holders of social media networks who recive socal media poss about an event fo ‘expericae the event rom the spective othe social mia sccount holders atthe event. Generally, the followers rosive posts fom account bolders that they are connected to oF Dthenvineassneoted wit. Torocciveadeguntecoverage ofan ‘event, followers assemble their owe iss of followed acount holders who are attending the event. Ifa follower is not ‘connected to many followed account holders who are attend- in the event, then the follower may’ not receive adaguste ‘coverage ot event. Aditonally this configuration may be Jess than satisfying becausethefollowedaccountholdersmay not capture the event infill detail doe to isses such as inaccessibility to cerin parts of encvent os lack of ke tee about occurrences a that even 10003} Followers of an eveat may also have access to an ‘officially dstrioted feed ofthe event trough a tslvision, ‘odio, of lem sears of a event hat provide more cocks ‘orstricture However these foo can be lacking from a social media perspective os resource and cost constrains prevent ‘wider owerageso thateven anoficialy dst fod lacks the multifaceted perspective that social media provides Additionally, an ofiilly distributed fed is generally not responsive fo request io cover dierent aspects ofan event Aithovgh followed account holders of social medi that are ‘ateading an event may capture an wansmita diffrent per spective onan event, their atention is focused mainly onthe ‘event rather than documenting the event fora wider range of followers, partculsy, nonattendce followers who. are ‘scout holder. 0004] Aationsly mos social maa event re covered by followed acconnt holders tht are present ata parcuae ‘observed moment of the event. Hewever, thse followed ‘observers are contained physically to wherethey are located land cannot capture a broader perspextive on an event oF ‘Quickly respond to requests to capture geographically ise persed aspects ofan event, particully as they Oour in ele time. Hence, media coverage of events may be inadequate to Satate bot allowed al following account holders o social media services. BRIEF DESCRIPTION OF DRAWINGS 10005] The disclosed embodiments have other advantages ‘and features which will be more readily appsreat from the Dee. 17, 2015 etated description, the appended clin pigs orden) [0006] FIG. (Figure") 1 isa block diagram of an example ‘wal-time messaging platform, aecording to an embodiment [0007] FIG. 2 isa block diqyram of an example unmanned ‘eral Vehicle (UAV), according o aa embodiment. [0008] FIG. 3s block diagram ofan example UAV inter- action engine, according to an embodiment [0009] FIG. isa flowchart ofan example method forusing messages 10 interact with a UAV, according to an embodi- eat [W010] FIG. § is an iterxetion diagram sHlustrating ‘example flow of information between the messaging plat- ‘orm, client, and the UAV. according 1 an embodiment 0011] FIG. 6 illustrates components of an example nachine able to read instctons from a machine-readable ‘medium and execute them in @ processor (or controler), according to one embodiment. [0012] FIG. Tisadiagram ofan example UAV, aceording to an embod andthe accompa juclion ofthe figures DETAILED DESCRIPTION [0013] The Figures (FIGS.) and the following description relate to preferred embodiments by way of illustration ony. It should be noted that from the following diseussion, alterna tive embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that say be employed without departing fom the principles of ‘whit is elaimed [0014] Reference will now be made in detail to several embodiments, examples of which are illustrated in the ‘accompanying figures, It is aoted that wherever practicable Similar o ike reference numbers may be used in the figures ‘and may indicate similar or lke funeionality. The figures {pict embodiments ofthe disclosed system (or method) for purposes ofillsiration only. oe skilled the at will realy recognize from the following description that altemative ‘embodiments ofthe structures and method illustrated herein may be employed without departing fom the principles described herein, 1. Configuration Overview [0018] One example embodiment ofa real-time messaging system, method, and non-transitory computer readable stor ‘age medium tha includes aecouat holders interscting wih aa ‘unmanned aedal vehiele ("UAV") using 8 messaging plat- orm. The UAV is antononmons or is piloted from a loction remote ftom where the UAV is presoat. It is noted that while the descriptions herein ar inthe context of a UAV, the prin- ciples described may apply to other unmanned vehicles (CUV™ such as emote controlled boats and ears. [0016] In one example embodiment, the secount holders receive media eapnired via the UAV tid may submit com: ‘mands for wansmission to the UAV. Media captured by the UAV is received and incorporated into a message. The mes- sage incliding the captured media is broadcast to accounts of the messaging platform. Interactions related to the UAV are received from client devices of account holders. Based on these interactions related to the UAV, a command is deter smined for the UAV and transmitted to the UAV, which is configured to respond (othe command US 2015/0362917 Al [0017] The features and advantages deseribe inthe speci- fication and in this summary are not all inclusive and, in particular, many additional features and advantages will be ‘apparent to one of ordinary skill in the atin view of the “drawings, specification, and elaims. Moreover, it should be noted thatthe language used in the specification has beea principally selectod for readability snd insteetionsl pure poses, and may not have heen selected tn delineate orcircim- Scribe the disclosed subject matter UW. Real 10018] FIG. 1 isa block diagram of a realtime messaging platform 100, aecording to one embodiment. The real-time restaging platform 100 (also referred to as a “messaging platfoem) includes a frontend module 110, a pilot frontend module 122, 2 routing module 128, a graph module 130, 2 livery module 138, a message repository 140, aconnection, raph repository 142, a stream repository 144, an account Fepository 146, and an unmanned aerial vehicle (UAV) inter= ‘action engine 150 [0019] | Themessoping platform 100 allows account holders 'o create, publish, and view messages in a message stream Visible to themselves and other subseribing accounts of the restaging platform 100, Account holders compase messages using a elient software aplication running on a client com- puting device 105 (als refered to as cient 105 oF a client ‘device, such as mobile phone, tablet, a personal computer (laptop. desktop, or server). ora specialized appliance having ‘communication capability” The client software application may include a web-based client, a Short Messaging Service (SMS) interfee, an instant messaging interface, an email based interface, or an API (application programming inter ace) function based interface. The client comparing devices 105 communicate with the messaging platform visa network Thenetwork may’ communicate information trough Wired oF wireless communication channels over a local-area network, ‘wide-area network such as the inteme, of & combination there. The notwork may include multiple networks or sub- networks, TI. A. Message Composition with 2 Real-Time Messaging Platform 10020] Messages are containers for a variety of types of ‘computer data repreventing content provided by the com= poser ofthe message. Types of data that may be stored in @ message include text (eg. 0 140 character “Tweet”, geaph- jes, video, computer code (@., uniform resource locators (URTs)), or other content. Messages can also include key Phrases (eg. symbols, sch as hastag "#") that ean aid in ‘or contextualizing messages. Messages may addtional metadata that may oF may not be ‘editable by the composing account holder, depending upon the implementation. Fxamples of message metadata inclade the time and date of authorship as well asthe geographical Jocation were the message was composed (e.g. the ctrent physieal location ofthe elient 108). [0021] _Themessages composedby one aeeount holder may also reference other account. Forexample,amessagemay be ‘composed in reply to another message composed by another account holder, Messages may’also be repeats (or reposts) of ‘amessage composed by another account holder. Repostsmay also be rofered to as “otwoots.” Generally, an account refer- ‘enced in a message may both appear as Visible content inthe message (eg. the name ofthe acon), and may also appear as metadata in the message. As a result, the messaging plat ime Messaging Platform Overview Dee. 17, 2015 {orm allows interaction witha referenced account in a mes- sage. For example, clients 103 may interact with account ‘names that appear in their message stream to navigate to the message sreams of those acoounts, The messaging platform 100 allows messages to be private, sueh that a composed message will only appear inthe message streams of the com- posing aecount and designated recipients’ accounts [0022] The frontend module 110 receives composed mes- sages from the clients 105, interfaces with other intemal components of the messaging platform 100, and distributes ‘message streams to account holders. The frontend module 110 may provide a varity of interfaces for interacting with 2 numberof different types of eliens 108, For example, when ‘an aovoual holder uses a web-based client 108 to acces the ‘messaging platform 100 (eg. through an Intemet browser), a web interlace mode 114 inthe front end mode 10 can be sed to provide the client 105 access. Similarly, when an account holder uses an APLtype client 198 10 access the ‘messaging platform 100 (eg, through an application native {oan operating system of the clieat 108), an API interface ‘mosdule 112 can be used to provide the cient 108 access. [0023] The routing module 128 stores newly composed messages received through the frontend module 110 in a message repository 140. In ation to storing the content of aamessage, the routing module 12S aso stores an identifier for each message. This way, the message can be included in & variety of different message streams without needing to store ‘more than one copy of the message, 1, B. Connections in « Real-Time Messaging Platform [0024] Tae graph module 130 manages connections between account holders, thus determining which accounts receive which messages when tninsmiting message streams to clients 108. Generally, the messaging platform 100 uses unidirectional connections hetween accounts 0 allow ‘count holders a subscribe tothe message streams of other aecount holders. By using unidirectional connections, the ‘messaging platform allows an account holder to receive the message stream of anther account, without necessarily implying any sor of reciprocal relationship the oer way. For ‘example, the messaging platform 100 allows aecount holder Atosubseribeto the message stream of secount holder B, and ‘eonsequenlly account holder Ais provided and ean view th messages authored by account holder B. Hovsever, this uni iretional connection of A subseribing to B does not imply that account holder B ean view the messages authored by ‘account holder A, This could be the ease if account bolder 2 sbsribed to the message sircam af account holder A; how ever, this would require the establishment of another uni rectional connection. In one embodiment, an account holder ‘who establishes a unidirectional connection to receive fanather acoount holder's message stream is refered to as @ “follower”, and the at of ereating the unidirectional connee- tion is referred to as “following” another account holder. The raph module 130 receives requests to ereate and delete uni- ‘rctional connections hetween account holders argh the ontend module 110, These connections are stored Tor later tse in the connection graph repository 142 as pat of «nid ‘eetional connection graph. Each connection inthe connee- tion graph repository 142 references an account in the ‘account repository 146 [0025] In the same or a different embodiment, the graph ‘module 130 manages connections between account holders using bidirectional connections between account bolders US 2015/0362917 Al Upon establishing a bidirectional connection, both accounts are considered subscribed to each other's account message stream. The graph module sores bidirectional connections in the connection griph repository 142 a put of social grap. Inone embodiment, the messaging platform and connection raph repository 142 inelude both unidirectional and bdirec- tional connections 11. C. Message Delivery with a Real form 10026] The dolivery modole 135 constructs_message ‘streams and provides dhem to requesting clients 105 through the frontend modiale 110, Responsive to a request fora mes- sage stream ofa requested accouat holder, the delivery mod- tule constructsamessage stream in realtime. Thismay include providing messages from subscribed account holders who are ‘mutually connected 0 the messaging platform during eon- ‘current sessions (eg, simultaneously). However itmay also ‘include messages authored not in el time and/or via account holders that are no simultaneously connected to the messag- ing plato with the requesting account oer (aso refered to asthe contextual account holder). The eontents of a mes- sage stream fora requested account holder may include mes- ages composed hy the requested account holder, messazes ‘composed by the other account holders that the requested ‘account holder follows, messages authored by other secount holders that reference the requested account bolder, and ia some cases advertisement messages selected by the messag- ing platform 100, The messages of the message stream may be ordered chronologically by time and date of suthorship, or reverse chionologically. Other orderings may also be used 10027] There may be a laue numberof possible messages that might be inchided in the message stream. The delivery module 135 identities a subset ofthe possible messages for inclusion in the message steam. For example, the delivery module 138 orders the subset of messages by time of com- position orany other item of information available regarding the messages, The delivery module 138 stores the messaze stream na stream repository 144, Thestored message seam ‘ay include the eatire contents ofeach af the messages inthe stream, ort may ince pointer that point tothe location of the message in the message repository 140, The delivery module 135 provides the messaue stream to the requesting

You might also like