IP Library Granted Patent US 9,599,985
Granted Patent B2
US 9,599,985 · App. 14/738,057 · Granted Mar 21, 2017

Messaging-enabled unmanned aerial vehicle

Inventors: Ya-Ting Wang (San Francisco, CA); Wayne Robins (San Francisco, CA)
Assignee: Twitter, Inc.
G05D1/0022H04L51/32
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,599,985
App. No.
14/738,057
Granted
Mar 21, 2017
Kind
B2
Abstract

An unmanned aerial vehicle (UAV) carries a camera, sends data from the camera, and receives commands. The UAV is connected to a messaging platform. Pictures or video clips received from the UAV are selected and placed in messages broadcast by an account associated with the UAV. Video footage from the camera is live-streamed in a card-type message. Account holders of the messaging platform may control the UAV with commands embedded in messages and directed towards an account associated with the UAV. Controllable elements of the UAV include UAV location, camera orientation, camera subject, UAV-mounted lighting, a UAV-mounted display, a UAV-mounted projector, UAV-mounted speakers, and a detachable payload. UAV control may be determined through democratic means. Some UAV functionality may be triggered through aggregated engagements on the messaging platform. The UAV may include a display screen and/or a microphone to provide for telepresence or interview functionality.

Claims (80)

1. A method comprising:

receiving media captured by an unmanned aerial vehicle (UAV);

incorporating the media captured by the UAV into a UAV message;

broadcasting the UAV message to client devices associated with accounts of a messaging platform;

receiving, from the client devices, interactions with the UAV message;

determining, by a UAV controller, a command for the UAV based on the interactions with the UAV message; and

transmitting the command from the UAV controller to the UAV, the UAV configured to respond to the command such that the command controls the UAV.

2. The method of claim 1 , wherein the UAV message comprises a pointer to real-time media updated substantially in real time as the media captured by the UAV is received.

3. The method of claim 2 , wherein the UAV message includes a preview of received media captured by the UAV, selection of the preview causing the UAV message to present the real-time media accessed using the pointer.

4. The method of claim 1 , wherein the UAV message comprises one or more selectable command options, and wherein receiving the interactions with the UAV message comprises receiving selections of the one or more command options.

5. The method of claim 4 , wherein the one or more selectable command options comprise a command option corresponding to at least one of a location for the UAV and a subject of focus for a camera on the UAV.

6. The method of claim 1 , wherein receiving interactions with the UAV message comprises receiving messages authored by accounts of the client devices, and wherein determining the command for the UAV comprises decoding commands embedded in the received messages, the decoded commands in a format associated with the UAV message.

7. The method of claim 1 , wherein the received interactions with the UAV message comprise a number of different commands for the UAV, and wherein determining the command for the UAV comprises:

determining a number of responses for each of the different commands; and

selecting one of the different commands according to a ranking of the different commands by the determined numbers of responses.

8. The method of claim 7 , wherein the most numerous received command is selected based on commands for the UAV received within a time period.

9. The method of claim 1 , wherein determining the command for the UAV comprises:

identifying a number of the received interactions matching a criteria specifying one or more characteristics of account holders to match the criteria; and

responsive to determining that the number of received interactions meeting the criteria equals or exceeds a threshold, selecting the command for the UAV.

10. The method of claim 1 , wherein determining the command for the UAV comprises determining whether the command complies with policies of the social media platform prior to transmitting the command to the UAV for execution.

11. The method of claim 10 , wherein the command modifies movement of the UAV, wherein determining the command for the UAV comprises:

obtaining a location boundary restricting movement of the UAV, the location boundaries including at least one of: a geographic location of the UAV, a height of the UAV, and an altitude of the UAV; and

responsive to determining that the command would result in the UAV traversing the location boundary, modifying the command to prevent the UAV from traversing the location boundary.

12. The method of claim 1 , wherein the command instructs the UAV to perform one or more of: controlling a camera attached to the UAV, releasing a droppable payload, displaying a message received from an account of one of the client devices, playing audio of a message selected by an account of one of the client devices, and a combination thereof.

13. A non-transitory computer-readable storage medium storing instructions, the instructions when executed causing a processor to:

receive media captured by an unmanned aerial vehicle (UAV);

incorporate the media captured by the UAV into a UAV message;

broadcast the UAV message to client devices associated with accounts of a messaging platform;

receive, from the client devices, interactions with the UAV message;

determine a command for the UAV based on the interactions with the UAV message; and

transmit the command to the UAV, the UAV configured to respond to the command.

14. The computer-readable medium of claim 13 , wherein the UAV message comprises one or more selectable command options, and wherein the instructions to receive the interactions with the UAV message comprise instructions to receive selections of the one or more command options.

15. The computer-readable medium of claim 13 ,

wherein the instructions to receive interactions with the UAV message comprise instructions to receive messages authored by accounts of the client devices, and

wherein the instructions to determine the command for the UAV comprises instructions to decode commands embedded in the received messages, the decoded commands in a format associated with the UAV message.

16. The computer-readable medium of claim 13 , wherein the received interactions with the UAV message comprise a number of different commands for the UAV, and wherein the instructions to determine the command for the UAV comprise instructions to:

determine a number of responses for each of the different commands received within a time period; and

select one of the different commands according to a ranking of the different commands by the determined numbers of responses.

17. A system comprising:

an unmanned-aerial vehicle (UAV);

a processor;

a message authoring engine configured to execute on the processor and to:

receive media captured by the UAV,

incorporate the media captured by the UAV into a UAV message, and

broadcast the UAV message to client devices associated with accounts of a messaging platform; and

a UAV controller configured to execute on the processor and to:

receive, from the client devices, interactions with the UAV message,

determine a command for the UAV based on the interactions with the UAV message, and

transmit the command to the UAV, the UAV configured to respond to the command.

18. The system of claim 17 , wherein the UAV message comprises one or more selectable command options, and wherein receiving the interactions with the UAV message comprises receiving selections of the one or more command options.

19. The system of claim 17 ,

wherein receiving the interactions with the UAV message comprises receiving messages authored by accounts of the client devices, and

wherein determining the command for the UAV comprises decoding commands embedded in the received messages, the decoded commands in a format associated with the UAV message.

20. The system of claim 17 , wherein the received interactions with the UAV message comprise a number of different commands for the UAV, and wherein determining the command for the UAV comprises:

determining a number of responses for each of the different commands received within a time period; and

selecting one of the different commands according to a ranking of the different commands by the determined numbers of responses.

21. The computer-readable medium of claim 14 , wherein the one or more selectable command options comprise a command option corresponding to at least one of a location for the UAV and a subject of focus for a camera on the UAV.

22. The computer-readable medium of claim 16 , wherein the most numerous received command is selected based on commands for the UAV received within a time period.

23. The computer-readable medium of claim 13 , wherein the UAV message comprises a pointer to real-time media updated substantially in real time as the media captured by the UAV is received.

24. The computer-readable medium of claim 23 , wherein the UAV message includes a preview of received media captured by the UAV, selection of the preview causing the UAV message to present the real-time media accessed using the pointer.

25. The computer-readable medium of claim 13 , wherein the instructions to determine the command for the UAV further comprise instructions to:

identify a number of the received interactions matching a criteria specifying one or more characteristics of account holders to match the criteria; and

responsive to determining that the number of received interactions meeting the criteria equals or exceeds a threshold, select the command for the UAV.

26. The computer-readable medium of claim 13 , wherein determining the command for the UAV comprises determining whether the command complies with policies of the social media platform prior to transmitting the command to the UAV for execution.

27. The computer-readable medium of claim 26 , wherein the command modifies movement of the UAV, wherein the instructions to determine the command for the UAV further comprise instructions to:

obtain a location boundary restricting movement of the UAV, the location boundaries including at least one of: a geographic location of the UAV, a height of the UAV, and an altitude of the UAV; and

responsive to determining that the command would result in the UAV traversing the location boundary, modify the command to prevent the UAV from traversing the location boundary.

28. The computer-readable medium of claim 13 , wherein the command instructs the UAV to perform one or more of: controlling a camera attached to the UAV, releasing a droppable payload, displaying a message received from an account of one of the client devices, playing audio of a message selected by an account of one of the client devices, and a combination thereof.

29. The system of claim 18 , wherein the one or more selectable command options comprise a command option corresponding to at least one of a location for the UAV and a subject of focus for a camera on the UAV.

30. The system of claim 20 , wherein the most numerous received command is selected based on commands for the UAV received within a time period.

31. The system of claim 17 , wherein the UAV message comprises a pointer to real-time media updated substantially in real time as the media captured by the UAV is received.

32. The system of claim 31 , wherein the UAV message includes a preview of received media captured by the UAV, selection of the preview causing the UAV message to present the real-time media accessed using the pointer.

33. The system of claim 17 , wherein the instructions to determine the command for the UAV further comprise instructions to:

identify a number of the received interactions matching a criteria specifying one or more characteristics of account holders to match the criteria; and

responsive to determining that the number of received interactions meeting the criteria equals or exceeds a threshold, select the command for the UAV.

34. The system of claim 17 , wherein determining the command for the UAV comprises determining whether the command complies with policies of the social media platform prior to transmitting the command to the UAV for execution.

35. The system of claim 34 , wherein the command modifies movement of the UAV, wherein the instructions to determine the command for the UAV further comprise instructions to:

obtain a location boundary restricting movement of the UAV, the location boundaries including at least one of: a geographic location of the UAV, a height of the UAV, and an altitude of the UAV; and

responsive to determining that the command would result in the UAV traversing the location boundary, modify the command to prevent the UAV from traversing the location boundary.

36. The system of claim 17 , wherein the command instructs the UAV to perform one or more of: controlling a camera attached to the UAV, releasing a droppable payload, displaying a message received from an account of one of the client devices, playing audio of a message selected by an account of one of the client devices, and a combination thereof.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
EMPLOYEE INVENTION ASSIGNMENT AND CONFIDENTIALITY AGREEMENT Recorded Feb 1, 2017
From: ROBINS, WAYNE
To: TWITTER, INC.
Reel/Frame 041589/0601 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2016
From: WANG, YA-TING
To: TWITTER, INC.
Reel/Frame 040706/0232 →
Continuity (2)
Provisional Application 62012202 · Jun 13, 2014
Related Publication 20150362917A1 · Dec 17, 2015