Systems and methods for in-flight connectivity - Patents.com
Patent Information
- Application Number
- JP2024534547
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-12-10
- Filing Date
- 2022-12-10
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-12-10
AI Technical Summary
Passengers face challenges in seamlessly transitioning between wireless networks during travel, particularly when connecting to vehicle-based Wi-Fi access points, due to the need to manually remember and execute multiple steps, which can be time-consuming and frustrating.
A method and system for seamless wireless connectivity that automatically detects onboard connectivity availability and service availability, enabling notifications and connections to onboard public networks without user intervention, bypassing manual network connectivity assistants.
Facilitates quick and hassle-free transitions between wireless networks, ensuring uninterrupted access to onboard services by automating the connection process, reducing user effort and time consumption.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. Provisional Application No. 63 / 288,165, filed December 10, 2021, which is incorporated herein by reference. [Background technology]
[0002] Passengers arriving or departing from an airport, train station, bus station, seaport, or other transportation hub are often in a rush and can suffer from information overload. Many passengers are responsible for coordinating other members of the passenger party by receiving and providing tickets for other members of the passenger party, ensuring that party members have their luggage and other personal items, and arriving at the correct locations in a timely manner. Among these time-sensitive matters, passengers rely on electronic devices such as cell phones, tablets, laptops, etc. to obtain relevant travel details for their trip.
[0003] Due to the vast amount of information that may be available from electronic devices and the timeliness of updates that such electronic devices may receive (e.g., flight time changes, departure gates, arrival dates, connecting flights, getting round trips to destinations, product purchases, etc.), maintaining connectivity of electronic devices is useful to facilitate a smoother travel experience. As individuals travel, they will want to maintain their connection to public data networks (e.g., the Internet) using wireless networks that may be privately or publicly available. Furthermore, individuals often want to connect their mobile devices (e.g., cell phones, tables, laptops, and other electronic devices) to public data networks as frequently as possible, whether they are at a waiting point, walking through a terminal, walking through a hotel, or traveling in a vehicle such as an airplane, bus, boat, ride sharing, taxi, or other vehicle. Thus, methods, systems, and devices for facilitating the travel experience by providing connectivity to public data networks continue to provide value to traveling individuals. Summary of the Invention
[0004] In an exemplary embodiment, a method for wireless connectivity for a mobile device is provided. The method can include detecting, at an agent of the mobile device, on-board connection availability of an on-board public network or other service associated with a service set identifier (SSID) from an access point (e.g., a wireless router or wireless gateway) mounted on the vehicle. At the agent on the mobile device, on-board service availability (e.g., broadcast public network service availability) of the on-board public network can be identified. Based in part on the on-board connection availability and on-board service availability, a notification regarding connecting to the on-board public network can be enabled at the mobile device. Further, a connection to the on-board public network can be enabled at the mobile device.
[0005] In another example, a non-transitory machine-readable storage medium having embodied instructions is provided. The instructions, when executed by one or more processors, can cause the one or more processors to perform a process. The process can include detecting, at an agent on the mobile device, on-board connection availability of an on-board public network associated with a service set identifier (SSID) from an access point mounted on the vehicle. The process can also include identifying, at the agent on the mobile device, on-board service availability of the on-board public network. The process can further include enabling, at the mobile device, a notification regarding connecting to the on-board public network based in part on the on-board connection availability and the on-board service availability. The process can include enabling, at the mobile device, a connection to the on-board public network.
[0006] In yet another example, a mobile device for seamless wireless connectivity may comprise at least one processor and at least one memory device including a data store for storing a plurality of data and instructions. The plurality of data and instructions, when executed, may cause an agent of the mobile device to detect on-board connection availability of an on-board public network associated with a service set identifier (SSID) from an access point mounted on the vehicle. The plurality of data and instructions, when executed, may cause the agent of the mobile device to identify on-board service availability of the on-board public network. The plurality of data and instructions, when executed, may cause the agent of the mobile device to enable notifications regarding connecting to the on-board public network based in part on the on-board connection availability and on-board service availability. The plurality of data and instructions, when executed, may cause the agent of the mobile device to enable connection to the on-board public network. [Brief description of the drawings]
[0007] [Figure 1] FIG. 1 is a flow chart illustrating a process for wireless connectivity on an aircraft, according to an example of existing technology. [Diagram 2] FIG. 2 is a flow chart illustrating a process for seamless wireless connectivity in accordance with an example of the present technology. [Diagram 3] FIG. 3 is a diagram illustrating a process for wireless connectivity on an aircraft in accordance with an example of the present technology. [Figure 4] FIG. 4 is a block diagram illustrating a process for wireless connectivity for an aircraft with user input in accordance with an example of the present technology. [Diagram 5] FIG. 5 is a block diagram illustrating a system for providing seamless wireless connectivity for aircraft in accordance with an example of the present technology. [Figure 6] FIG. 6 is a flow chart illustrating an example method for wireless connectivity in the vicinity of a vehicle. [Figure 7] FIG. 7 is a block diagram illustrating a satellite communication system in accordance with an example of the present technology. [Figure 8] FIG. 8 is a block diagram providing an exemplary illustration of a computing device that may be employed with the present technology. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] Transitioning between wireless networks to maintain or while maintaining access to a computer network (e.g., the Internet) can be time-consuming and tiring for a user desiring wireless access as the user moves from one location to another (e.g., while traveling for work, medical, recreational, or other reasons). Even if a user has the appropriate information (e.g., service set identifier (SSID), password, estimated coverage area, data rate, cost, etc.) to manually transition between wireless networks, keeping track of information about the multiple wireless networks to which the user may want to connect can involve information that may be difficult to access or provide when moving quickly between locations. Additionally, performing the steps necessary to join the appropriate wireless network at a given moment can add further hassle for the user.
[0009] These hassles can be frustrating or annoying when a user is in transit. For example, an airline traveler who wants to successfully join Wi-Fi (Wi-Fi is a registered trademark) using a mobile device to access services on an aircraft (e.g., a public network such as the Internet) may need to, for example, (i) remember to join the aircraft Wi-Fi access point at the correct time and location, (ii) remember numerous manual software actions (e.g., user interface commands) to be completed before and to connect to the aircraft Wi-Fi access point, (iii) remember or find the Uniform Resource Locator (URL) associated with accessing the aircraft Wi-Fi access point's network connection assistant, and (iv) know how to navigate the network connection assistant associated with the aircraft Wi-Fi access point to access the public network again through the Wi-Fi access point. The network connection assistant may be a mobile device feature that is displayed and allows the user to log in or authenticate to a Wi-Fi access point or network connection without manually browsing and opening a web browser.
[0010] Even if the user knows about all of these actions and completes them properly, timing may be a concern. For example, the point in time at which the user is notified about the ability to connect to the aircraft Wi-Fi access point may be another factor that affects the user's likelihood of successfully connecting to the aircraft Wi-Fi access point or accessing services provided through the Wi-Fi access point. For example, there may be many points at which an airline passenger may be alerted about aircraft Wi-Fi availability for their flight, including, but not limited to: 1) during the ticket reservation process (which may take place days, weeks, months, or even years before the time of the flight); 2) during the flight check-in process, as a reminder via one or more of an email, text, alert, or notification, or as generally available information about upcoming flights, immediately prior to the flight (e.g., the day of the flight); 3) at the airport terminal or gate while the passenger is waiting to board; 4) after the passenger has boarded and is seated but before the aircraft doors are closed; and / or 5) when the aircraft is in flight (e.g., when the aircraft flies above a threshold altitude, etc.).
[0011] Due to the number of factors involved in the seemingly simple activity of connecting to a Wi-Fi access point and / or the corresponding offered services of a vehicle by a user or passenger, systems and processes that can facilitate transitions between wireless networks may be useful. However, even such systems and processes may prove difficult for passengers to employ to connect to a Wi-Fi access point and / or the vehicle's services. The difficulties involved in connecting to a vehicle's Wi-Fi access point and the services offered thereby may be illustrated with an example. Figure 1 shows an existing exemplary process for connecting to a Wi-Fi access point or gateway using a mobile device (e.g., a mobile phone, a tablet, a laptop, etc.). Later, a discussion of the technology is provided using Figure 2 and subsequent figures.
[0012] 1, a flow chart illustrating an exemplary process for connecting to a vehicle's Wi-Fi access point using existing systems and processes includes some actions that may be initiated by a user (i.e., blocks 102, 104, 106, 110, 112, and 122) and other actions that may be performed automatically by a device having executable instructions (i.e., blocks 108, 120, 124, and 130). Certain actions, such as those that may be performed automatically by a device (i.e., blocks 108, 120, 124, and 130), may be customized by an airline (or other passenger transportation operator, such as a train operator, cruise operator, bus operator, etc.).
[0013] The descriptions of these user initiated blocks 102, 104, 106, 108, 110, 112, 120, 122, 130 illustrate the user information required and the time expenditure involved. When the user decides to join the aircraft's Wi-Fi access point, the user can determine the correct time when the aircraft's Wi-Fi access point is available (not explicitly shown as an action) and can navigate to the "Network Settings" page of the mobile device, as shown in block 102. After navigating to the mobile device's "Network Settings" page, the user can navigate to the mobile device's Wi-Fi menu, as shown in block 104, and select to join the aircraft's public Wi-Fi access point, as shown in block 106.
[0014] After the user completes these activities, for airlines that use a network connection assistant for mobile device connection, as shown in block 108, the network connection assistant may be launched, as shown in block 120. The network connection assistant may enable the user to access one or more services through a Wi-Fi access point by clicking a connect button that is displayed when using the network connection assistant, as shown in block 122. The network connection assistant may display information requesting the user to open their browser using a specific URL, or may automatically direct the mobile device browser to a specific URL, as shown in block 124. The specific URL may be used to direct the user to a page used to connect to one or more services provided through the Wi-Fi access point, such as a terms of use page. After this operation in block 124 is completed, a page may be displayed and the user may accept the terms of use to access one or more services through the aircraft's Wi-Fi access point, as shown in block 130.
[0015] For airlines that do not use a network connection assistant, the user may manually specify which URL to navigate to, as shown in block 110, and then may launch a browser on the mobile device and enter a URL to access a page used to connect to one or more services, as shown in block 112. After this operation is completed, a terms of use page may be displayed, as shown in block 130, and as discussed in the preceding network connection assistant scenario, and the aircraft's Wi-Fi access point may be used by the user to access one or more services.
[0016] The aircraft's Wi-Fi access points may be discovered by the mobile device in different ways. To illustrate, the mobile device may continuously transmit a probe request to identify known and unknown Wi-Fi access points or gateways that may listen for the probe request. Additionally or alternatively, the mobile device may be configured to listen for incoming announcements (e.g., beacon frames) to determine a list of nearby known and unknown Wi-Fi access points or networks that the mobile device may join. Based on the identification of a known (e.g., previously connected by the mobile device) or unknown (not previously connected by the mobile device) nearby Wi-Fi access point or network (either via a probe request or announcement), the mobile device may provide a notification to the user regarding the nearby Wi-Fi access point and set up a connection between the Wi-Fi access point and the mobile device. However, enabling notifications (e.g., resulting from either a probe request or announcement) to associate with and / or connect to one or more of the list of nearby Wi-Fi access points or networks may not be customizable or even available for a particular operating system. For example, iOS® may not provide support for a user's device to automatically identify and connect to one or more Wi-Fi access points in a list of unknown-but-nearby Wi-Fi SSIDs, even if the user is otherwise permitted to connect to unknown Wi-Fi SSIDs. Thus, user notification when a Wi-Fi access point or gateway is available may not be configurable, and the user may not be notified when the mobile device can access such nearby Wi-Fi access points or networks.As described herein, a mobile device may be any computing device that can be moved within range of a Wi-Fi access point, including, but not limited to, a user device, a mobile phone, a tablet, a laptop, a gaming device, an e-reader, a smart watch, an AR (augmented reality) headset, a mobile personal computer (e.g., on a cart), etc.
[0017] Whether or not an airline uses a network connection assistant, the required user information and the time consumption involved in connecting to an aircraft's Wi-Fi access point according to the operations shown with reference to FIG. 1 may deter potential users from joining the aircraft's Wi-Fi access point. The systems and methods of the present technology provide improvements that reduce these constraints and allow seamless wireless connections between available wireless network connections (e.g., allowing a mobile device to transition between a cellular network and an unknown Wi-Fi access point). Such seamless wireless connectivity technology may increase the number of users who are likely to join the aircraft's Wi-Fi access point after transitioning from an airport Wi-Fi, a cellular network, etc., when the users travel by aircraft.
[0018] In one exemplary embodiment, a method is provided for seamless wireless connectivity when connecting a mobile device to an unknown wireless access point. The method can include detecting, in an agent on the mobile device, an on-board connection availability associated with a service set identifier (SSID) of a Wi-Fi access point, gateway, or server onboard the vehicle. In another operation, an on-board service availability of the on-board public network can be identified in the agent on the mobile device. The method can include enabling the mobile device to provide a notification (e.g., to a user) regarding connecting to the on-board public network based in part on the on-board connection availability and the on-board service availability. Thus, a connection to the on-board public network can be enabled for the mobile device.
[0019] As used herein, the "on-board connection availability" of a wireless access point refers to the broadcast of a signal or message regarding the availability of a wireless communication connection between a wireless access point (e.g., a Wi-Fi gateway) and a mobile device attempting to connect to the wireless access point. Thus, the on-board connection availability may indicate the availability of a corresponding Wi-Fi access point. For example, the on-board connection availability of a Wi-Fi access point may be present or active when the Wi-Fi access point allows a mobile device to connect to the Wi-Fi access point. In contrast, the connection availability of a Wi-Fi access point may not exist when the Wi-Fi access point does not allow a mobile device to connect to the Wi-Fi access point. The connection availability of a Wi-Fi access point may be present or active even if the Wi-Fi access point does not provide access or connection to a service such as a public network (e.g., the Internet).
[0020] "On-board service availability" may be a radio broadcast signal or message that a service (e.g., a public network such as the Internet) is available via or through the Wi-Fi access point. The "public network" may be a network connection (e.g., using the vehicle's satellite connection) to the Internet or another public packet-switched network. Other available services may be in-flight entertainment, games, audio, or any on-board services coming from a server on the airplane, etc. For example, on-board service availability of a wireless access point (e.g., an aircraft's Wi-Fi access point) may be present or active when the wireless access point (e.g., an aircraft's Wi-Fi access point) allows a mobile device to connect to a public network (e.g., the Internet) via the wireless access point (e.g., the aircraft Wi-Fi) and receive Internet packet transmissions (e.g., TCP / IP). Conversely, if a wireless access point (e.g., an aircraft's Wi-Fi access point) does not allow a mobile device to connect to a public network (e.g., the Internet) via the wireless access point (e.g., the aircraft's Wi-Fi access point), on-board service availability of the wireless access point (e.g., the aircraft's Wi-Fi access point) may be absent.
[0021] The transfer of wireless connectivity of a mobile device may occur between any of several connection types. As used herein, "seamless wireless connectivity" refers to wireless connectivity that can be switched between wireless connections such as a wireless personal area network (WPAN), a wireless local area network (WLAN), a wireless wide area network (WWAN), or a wireless metropolitan area network (WMAN) without substantial interruption of public network service (e.g., without interruption of connectivity and service to the Internet for longer than a selected time period, including one or more of 200 milliseconds, 1 second, 5 seconds, 15 seconds, 60 seconds, 5 minutes, etc.). The switching may be between similar network types or different network types. In addition, "seamless wireless connectivity" may optionally or alternatively include actions that can be taken to maintain wireless connectivity without user intervention, and wireless connectivity can be maintained automatically. This means that the present technology can be used by a mobile device to switch between wireless networks that provide access to one or more services, such as access to a public network or a private network.
[0022] A user may be more likely to connect to a local Wi-Fi access point (e.g., a Wi-Fi access point on an aircraft or another vehicle while traveling) if: (1) an “Available Wi-Fi Networks” message informs the user when a local Wi-Fi SSID is available for joining, or (2) the user is provided with device actionable data (e.g., a scannable QR code) to join the local Wi-Fi access point. By clicking on the “Available Wi-Fi Networks” message or scanning the QR code, the user can automatically: (i) join the Wi-Fi access point, and (ii) be presented with the Terms of Service and, upon accepting the Terms of Service, be redirected to the airline portal for on-board network services (e.g., Internet access and / or on-board services).
[0023] The user may be reminded to join the aircraft's Wi-Fi access point, or such reminders may be eliminated to improve or maximize the chances that the user will connect to the aircraft's Wi-Fi access point when a Wi-Fi connection is active and a Wi-Fi public network service (e.g., Internet accessible through the aircraft's Wi-Fi access point) is operational. In one example, a travel service provider (e.g., an airline) may determine logic for providing user notifications on a mobile device using various notifications, such as departure time-based notifications, geographic location-based notifications, etc. In one example, for a flight departing at 7 p.m., a notification may be sent to the user at a specific time before the flight departure time, such that the user is reminded to join the aircraft's Wi-Fi access point. In another example, a notification may be sent to the user's mobile device when the user's mobile device is detected near an airport location, departure gate, etc. In some embodiments, the notification may be used to prompt a user action, or an action by an agent operating on the user's mobile device.
[0024] In addition to time-based, location-based, or other automated or electronic notifications on the user's mobile device, various other notifications, such as visual (e.g., printed posters, QR codes, etc.) or audio notifications near the departure gate, visual notifications on the airplane, crew announcements, etc., can be used to notify the user of the aircraft Wi-Fi. However, as noted above, the use of manual actions to be completed by the user to connect to a Wi-Fi access point may result in reduced adoption or connection on the part of the user. Thus, an automated or semi-automated process that employs reduced user input (compared to the manual actions of the example of FIG. 1) to enable Wi-Fi connectivity on the vehicle would still be useful.
[0025] An exemplary process for connecting a mobile device to a vehicle's Wi-Fi access point to access services (e.g., an on-board public network such as the Internet) can be depicted using a flowchart. FIG. 2 is a flowchart illustrating one exemplary process for seamless wireless connectivity. Initially, an agent (such as a software agent) may be executed on the mobile device, as in block 252. In one exemplary embodiment, the agent may be executed in the background on the operating system of the mobile device, and the agent may be loaded as a background process by the operating system on the mobile device (e.g., when the operating system starts). In an alternative embodiment, the agent may be executed on the mobile device because a user launched an application that includes this agent embedded in the application. For example, a user may launch the application: 1) via the operating system of the mobile device (e.g., selecting the application from other applications), 2) by scanning a QR code and clicking a link, or 3) by clicking a notification that a Wi-Fi access point may be available.
[0026] The agent may detect the presence of on-board connection availability and on-board service availability of a service set identifier (SSID) broadcast by a Wi-Fi access point or gateway on the airplane, in a vehicle, or at a location, as in block 254. If on-board connection availability is present but on-board service availability is not present (e.g., turned off or not broadcasted) indicating there is not yet on-board public network access (e.g., no Internet connectivity), the agent may delay attempting to connect to a Wi-Fi access point until there is on-board service availability.
[0027] Under current technology, when a user attempts to connect to an on-board public network (e.g., the Internet) via a Wi-Fi access point on a vehicle, a prompt from a network connection assistant (e.g., Apple® Captive Network Assistant (CNA)) may typically be displayed by the mobile device to redirect the user to a specific web page to authenticate or log in and enable access to the on-board public network after the mobile device connects to the Wi-Fi access point. This may be useful to remind the user of a specific website URL or to direct the user to a specific website. However, when the on-board public network (or the Internet) is not available or there is a disruption in the process flow of the network connection assistant, the network connection assistant prompt is more likely to confuse the user and even prevent the user from connecting to and authenticating with the public network (e.g., the Internet) than it is to enable the user to connect to and authenticate with the public network. In one example, the agents described herein may be configured to suppress or bypass such network connection assistant prompts or usage associated with connecting to and authenticating with the on-board public network based in part on the presence of on-board service availability at the Wi-Fi access point.
[0028] When an on-board public network is available, the presentation of the network connection assistant may provide additional actions to connect to the on-board public network, which may further hinder user adoption. Thus, to further facilitate the process of connecting to the on-board public network, the agent may be configured to suppress the network connection assistant and automatically authenticate or log in to a Wi-Fi access point and a connection to a service provided by the Wi-Fi access point, based in part on on-board connection availability and on-board service availability being currently active or existing. In the method of FIG. 2, the agent may suppress the network connection assistant on the mobile device and authenticate or log in to a Wi-Fi access point and a service, as in block 256. By authenticating to the Wi-Fi access point in the background, the user may connect to the on-board public network without additional effort on the part of the user, as in block 258.
[0029] In an exemplary embodiment, this suppression of the network connectivity assistant may be implemented by bypassing the network connectivity assistant and the agent may make program calls (e.g., API calls) to connect, authenticate, and / or log into the Wi-Fi access point and the corresponding service being accessed. The agent may have already received authentication credentials from an entity such as an Internet service provider, a transportation vendor (e.g., an airline), a travel website, a venue manager, or another party. A connection to an on-board public network (e.g., the Internet) may then be made via the wireless access point, as in block 258. The wireless access point may be a Wi-Fi access point, a Wi-Fi gateway, a wireless gateway, a wireless router, a wireless switch, or the like.
[0030] 3 illustrates an exemplary embodiment of the present technology for seamless connectivity of a mobile device (e.g., a mobile phone) to a wireless access point on an airplane. This example illustrates a mobile device switching from a wireless cellular connection (e.g., 3GPP LTE, 3GPP 5G, etc.) to a Wi-Fi access point on board an airplane or another vehicle. At the airport or before approaching the airplane or vehicle, an agent 302 running on the mobile device may connect the mobile device to a wireless cellular connection, as in item 310. Alternatively, the agent 302 may detect or recognize that the mobile device is already connected to a wireless cellular connection (e.g., a mobile phone connection, etc.).
[0031] When the user is in or at the gate of the plane, the agent 302 may detect that on-board connection availability and on-board service availability are active for the service set identifiers (SSIDs) broadcast by the Wi-Fi access points on the plane for the in-flight Wi-Fi, meaning that Wi-Fi connectivity and public networks (e.g., the Internet) are available and detected.
[0032] Thus, agent 302 can connect the mobile device to an in-flight Wi-Fi, as illustrated in item 320, which can automatically switch the mobile device's connectivity from a wireless cellular connection (e.g., 3GPP LTE, 3GPP 5G, etc.) to the airplane's in-flight Wi-Fi access point and connect to services via the Wi-Fi access point without or with minimal user intervention. To automatically connect the mobile device to the Wi-Fi access point, agent 302 can suppress or avoid the network connection assistant.
[0033] Once the mobile device is connected to the Wi-Fi access point, the mobile device may access a web portal on the airplane 330, an on-board public network (e.g., the Internet), etc. For example, the user may access a web portal or web service that is a captive end user interface, a captive airline portal, a captive Internet service provider portal, a web service, an entertainment service portal, advertising, an electronic store, a duty-free store, games, travel services, vacation service reservations, educational microsites, the Internet, etc. Optionally, there may be terms of use that the user may need to accept in order to receive Internet services via the Wi-Fi access point. Additionally, an initial free session may be provided to the user on the mobile device and then additional Internet time may be purchased.
[0034] FIG. 4 illustrates another example of seamlessly connecting to a Wi-Fi access point where a user initiates the launch of an agent on a mobile device and user input may be received at other points in the process. More specifically, the user may launch the agent within an application (app), as in block 460. There may be at least three alternatives in which the user may be notified to join a wireless connection using an application with an agent. In a first scenario, the app may be launched by the user via an operating system interface, which may involve launching the app by tapping on the app, clicking on the app, double-clicking on the app, or otherwise selecting the app to run on the mobile device. The app may be a third-party app associated with a travel service provider (e.g., Expedia®, Travelocity®, Kayak®, etc.), a first-party app associated with an airline (e.g., Delta®, American®, United®), an app associated with the operating system, or associated with an event provider or ticket distributor (e.g., Ticketmaster®, StubHub®, sports venues, etc.), a healthcare provider, etc. In another configuration, the app may be implemented in association with or include an operating system (e.g., iOS®, Android®, etc.). After the app is started or launched (or even if the app or agent is running in the background or background process), the app may present the user with a button to join the vehicle's Wi-Fi access point, and the app may enable the user to click the join button.
[0035] In another example, in a second scenario for launching an app, a camera app can be launched (e.g., by a user). The camera can be configured to scan a QR code (or a different type of machine-readable optical label) to access and launch or launch a URL or app automatically by the device without user involvement. After the URL or app is launched, the app can be launched as shown, as in block 460.
[0036] In a third example scenario, a notification that a vehicle Wi-Fi access point is available may be received by a user from an agent on a mobile device. The user may click on the notification (e.g., a pop-up window) or may address the notification without user intervention.
[0037] In a third scenario for launching an app, the presentation of the notification may depend on one or more factors, such as wireless access point (WAP) geographic location, WAP altitude, WAP speed, on-board public network signal strength, vehicle door status, vehicle boarding data, vehicle check-in data, other factors discussed in this description, etc.
[0038] Upon launching the app, as shown in block 460, an agent on the mobile device may be configured to attempt to connect to a wireless access point (e.g., vehicle Wi-Fi), as shown in block 462. The agent may be a process created or launched from a software development kit (SDK) with libraries that may be embedded in the app. In an example embodiment, the agent from the SDK library may detect data such as geographic location data that may be used to notify the user of Wi-Fi availability. The agent from the SDK library may also use other data such as signal to noise ratio, incoming Bluetooth beacon signals, departure gate data, departure airport data, boarding pass data, schedule information, etc., which the agent may detect before notifying the user of Wi-Fi availability.
[0039] The agent may then determine whether it has successfully joined the Wi-Fi access point, as in block 464. If the agent on the mobile device is unable to successfully connect to the wireless access point or receive on-board network services (e.g., Internet packets) at block 466, the agent may automatically (or after receiving user intervention) reattempt to connect with the Wi-Fi access point (or even a different Wi-Fi access point), as shown in block 468. The agent may also revert to a previous or original wireless connection (e.g., a wireless cellular connection) if the agent determines that a Wi-Fi connection is not available after a defined number of reconnection attempts (e.g., two or three attempts).
[0040] Upon successfully joining the wireless access point after block 464, the agent may be configured to determine whether the passenger carrier (e.g., airline) uses a network connection assistant (e.g., Apple® Captive Network Assistant (CNA)), as shown in block 470. When the passenger carrier or network service provider uses a network connection assistant, the agent may be configured to bypass or suppress the network connection assistant and any associated prompts, as shown in block 473. The network connection assistant may be associated with a Wi-Fi access point, and the agent may be configured to bypass the network connection assistant when connecting to the Wi-Fi access point based in part on on-board service availability of the on-board public network. That is, when the service of the vehicle's on-board public network (e.g., Internet) is available (e.g., when on-board service availability exists), the agent may be configured to bypass the network connection assistant to reduce the time used to access the Wi-Fi access point or the on-board public network. By bypassing the network connection assistant, the agent may also prevent the user from being notified that a wireless access point (e.g., aircraft Wi-Fi) is available when the wireless access point's service is not available. In some embodiments, such as when the Wi-Fi access point is not associated with a network connection assistant or the network connection assistant is inactive, the agent may be configured to operate as if the agent bypassed the network connection assistant. More specifically, if the network connection assistant is not present or is not active for the Wi-Fi access point, the operation of bypassing or suppressing the network assistant may be skipped.
[0041] In some embodiments, the network connection assistant is bypassed regardless of the presence of on-board service availability. For example, if an air carrier (e.g., an airline) uses a network connection assistant to authenticate or otherwise activate an on-board service and the agent bypasses the network connection assistant, the agent may be further configured to authenticate or log into a Wi-Fi access point (e.g., to access an on-board public network) and further enable or activate the on-board service. The authentication or login may proceed in part based on wireless access point connection availability (more specifically, connection availability of the on-board public network) and / or wireless access point service availability (more specifically, service availability of the on-board public network or service availability of the on-board service), as shown in block 475.
[0042] After the agent bypasses the network connection assistant and is authenticated using the network connection assistant, the agent may be configured to launch a browser and the user may be presented with a user experience as shown in user experience 471 block. Alternatively, if the passenger carrier (e.g., airline) does not use a network connection assistant, the agent may be configured to launch a browser and provide user experience 471 without performing additional network connection assistant operations, or the agent may perform those additional network connection assistant operations in the background without user input or user involvement. Part of the user experience may optionally be to display a terms of use page. After the user accepts the terms of use, the mobile device may be connected to an on-board public network (e.g., the Internet) and / or other available services. An example of another type of user experience may be a connection to the Internet or a web portal (e.g., a captive web portal) for other on-board services, such as accessing entertainment, video, audio, shopping, games, microsites, or other on-board electronic experiences.
[0043] In an exemplary embodiment, a system for seamless wireless connectivity is illustrated in FIG. 5. In this example, an aircraft 500 may be configured to include a server 510 and a wireless access point 540. The wireless access point 540 may be configured to connect to one or more mobile devices 550. The server 510 may include a context service 512 and a database 514. From the context service 512, the user's mobile device 550 may retrieve information regarding services available on the aircraft, flight service context, or flight information (e.g., altitude, speed, information from the aircraft bus, etc.). The server 510, the wireless access point 540, and access to a public network (e.g., the Internet) are also described in FIG. 7.
[0044] As previously mentioned, the wireless access point 540 may provide a wireless local area network (WLAN). More specifically, the wireless access point 540 may be a Wi-Fi access point or gateway for vehicles, including, but not limited to, airplanes, buses, trains, ships, etc. In other examples, the wireless access point 540 may operate using a Wi-Fi protocol (or suitable WLAN), a Bluetooth® protocol (or suitable WPAN), or another suitable wireless protocol (e.g., a beacon-based protocol such as iBeacon®).
[0045] The mobile device(s) 550 may be, for example, a processor-based system. The mobile device(s) 550 may be devices such as, but not limited to, a mobile phone, a laptop or notebook computer, a tablet computer, a mobile device, a handheld computer, or other devices with similar functionality. The mobile device(s) 550 may be a personal electronic device or may be the property of an aircraft operator. In one configuration, the server 510 may communicate with the mobile device(s) 550 over a wireless network, such as that provided by the wireless access point 540.
[0046] The various processes and / or other functionality included within the server(s) 510 may execute on one or more processors in communication with one or more memory modules. The server(s) 510 may include a number of computing devices arranged, for example, in one or more server or computer banks or other arrangements. The server 510 may also include a number of data stores for capturing and storing passenger information, flight information, destination information, transaction information, media, and the like.
[0047] The term "data store" may refer to any device or combination of devices that can store, access, organize, and / or retrieve data, which may include any combination and number of data servers, relational databases, object-oriented databases, cluster storage systems, data storage devices, data warehouses, flat files, and data storage configurations in any centralized, distributed, or clustered environment. The storage system components of a data store may include storage systems such as a SAN (Storage Area Network), cloud storage network, volatile or non-volatile RAM, optical media, or hard drive type media. A data store may represent multiple data stores. In some embodiments, a data store may be used to store data associated with one or more services provided via wireless access point 540.
[0048] FIG. 5 illustrates that certain processing modules or subsystems may be used in connection with the technology. In one exemplary configuration, a module or subsystem may be considered to provide a service having one or more processes executed on a server or other computer hardware. For example, a module or subsystem providing a service may be hosted on a server. An application programming interface (API) may be provided for each module or subsystem to enable a second module or subsystem to transmit requests to and receive output from the first module or subsystem. Such an API may also enable a third party to interface with the module or subsystem and make requests to and receive output from the module or subsystem.
[0049] 5 illustrates one example of a system in which the above techniques can be implemented, although many other similar or different environments are possible. The example environments discussed and illustrated above are merely representative and not limiting.
[0050] Mobile device 550 can include application 552, which may have agent 520. Agent 520 may be used to detect and connect to a Wi-Fi access point, such as wireless access point 540, if available, to access services (e.g., the Internet) provided via the Wi-Fi access point, and may be used to suppress network connection assistants, as discussed above.
[0051] 5, the notification server 530 can include a notification service 534. The notification service 534 can be used by an entity to initiate and send notifications regarding the connection of a mobile device 550 to an on-board Wi-Fi access point. Notifications can be sent to a user's mobile device 550 based in part on the user being in a defined area at the airport, aircraft geographic location, time data, event information, other triggers described in this description, and similar data (or data triggers) stored in the data store 532.
[0052] The notification service 534 can send notifications to a notification proxy 572 hosted on the airline system 570 (or owner system, physical venue system, fleet management system, etc.). The notification proxy 572 can forward notifications regarding Wi-Fi availability to the mobile device 550 via a device push notification 544. The device push notification 544 can be managed or provided by a wireless carrier, a cloud messaging provider, or other server-based messaging service. Additionally, the device push notification 544 may be sent via a wireless cellular connection, a ground-based Wi-Fi access point at an airport or venue, or another network, for example, before connecting to a Wi-Fi access point on the airplane. The notification service 534 and the notification proxy 572 may be separate, since the airline app may not have an agent and / or the airline may not be the originator of the notification. In some embodiments, one or more of the notification service 530 and the airline system 570 may be combined, along with their corresponding services, etc. In some embodiments, the device push notification 544 may indicate that on-board service availability exists, credentials for the agent 520 to use when accessing the on-board service, etc.
[0053] Optionally, a service availability module 526 may be provided to the application 552, and the service availability module 526 may connect using an on-board Wi-Fi access point connection and / or a wireless cellular connection to a cloud service or cloud data store that reports whether on-board services are available. For example, the service availability module 526 may receive device push notifications 544 from the airline system 570 and determine whether on-board services are available or active based at least in part on these device push notifications 544. If the service availability module 526 determines that Wi-Fi and / or on-board services are available, an agent may initiate a connection process to the Wi-Fi access point 540. In some embodiments, the service availability module 526 may determine that Wi-Fi and / or on-board services are available based on timing information and event or schedule information available via the mobile device 550. For example, agent 520 may have access to the user's schedule or email on or via mobile device 550 and may use event information obtained therefrom to determine that Wi-Fi and / or on-board services are available, where the on-board services may correspond to services provided at any location where an event does not involve the user being in transit when using the Wi-Fi and / or on-board services.
[0054] In an example embodiment, agent 520 may be configured to detect on-board connection availability (i.e., in the case of an aircraft, availability to connect to aircraft Wi-Fi) of an on-board public network (e.g., Internet service) from a Wi-Fi access point onboard a vehicle (e.g., an aircraft). Agent 220 may detect on-board connection availability by using a probe request or announcement when the mobile device is within range of the aircraft Wi-Fi. Such detection by agent 220 is not limited to only in-transit or in-vehicle connection availability detection, but may apply to any environment where a Wi-Fi connection may be available (e.g., a venue, transportation center, reservation location, etc.).
[0055] In another exemplary embodiment, the agent 520 may be further configured to detect on-board service availability of an on-board public network. The on-board service availability may be broadcast when an on-board public network (e.g., the Internet) is available via a Wi-Fi access point. For example, in the case of an aircraft, the in-flight entertainment service may be operational before the aircraft doors are closed or before the flight reaches a suitable cruising altitude (e.g., about 10,000 feet), and thus the in-flight entertainment service that can operate using the aircraft Wi-Fi connection can provide content to the user. Thus, for a user who wants to browse or browse in-flight media, the agent on the user's mobile device may automatically connect the mobile device to a Wi-Fi access point where the in-flight entertainment service is active and available for use. However, the Wi-Fi access point may not allow connection to the on-board public network (e.g., the Internet) until the aircraft obtains a satellite connection to the public network and is above 10,000 feet. Thus, for a user wanting to browse or browse the Internet, an agent on the user's mobile device may delay connecting the device to a Wi-Fi access point until the on-board public network is active and available for use. Thus, agent 220 may be configured to detect when the on-board public network connection is actually connected to the Internet (i.e., the on-board public network's services are available). Such detection by agent 220 is not limited to only on-vehicle service availability detection, but may be applied in any environment where a Wi-Fi connection can provide services such as the Internet.
[0056] To prevent a user from joining the aircraft's Wi-Fi access point before the onboard public network is connected to the Internet, which may cause user frustration, concern, and the like, the agent 520 may be configured to enable a notification regarding connecting to the onboard public network (e.g., Internet) based in part on onboard connection availability (e.g., whether the client device can connect to the aircraft's Wi-Fi access point) and onboard service availability (e.g., whether the aircraft's Wi-Fi is actually connected to the Internet). More specifically, the mobile device 550 may be configured to provide a notification to the user when the aircraft's Wi-Fi access point actually has functional Internet service. This avoids a situation where a Wi-Fi bar is displayed on the mobile device 550 and the user may think that they can use the Internet, but when the user launches their browser, there is no data because the Wi-Fi access point on the aircraft is not connected to the Internet. In another example, the agent 520 may enable a connection to the onboard public network (e.g., Internet) to be made after a notification regarding connecting to the Internet is displayed to the mobile device user and approved by the user.
[0057] Seamless wireless connectivity may also be desirable when transitioning from on-board an aircraft to at the airport and / or to another aircraft when a user departs from one aircraft to connect to a different flight or to leave an airport. In one example, an agent 520 on a user mobile device 550 may be configured to switch from an on-board public network connection (e.g., aircraft Wi-Fi) to an off-board public network connection (e.g., airport Wi-Fi or a 3GPP 4G, 3GPP LTE, or 3GPP 5G network) based in part on the termination of on-board connection availability (e.g., aircraft Wi-Fi connection terminates) or on-board service availability (e.g., aircraft Wi-Fi no longer connects to the Internet) and the availability of off-board public network connectivity and Internet services.
[0058] The agent 520 may be configured to determine on-board service availability or on-board connection availability in various ways, as introduced above. In one example, the geographic location or GPS coordinates of a wireless access point, altitude, speed, flight status, state, time information, etc., may be used to determine on-board service availability and / or on-board connection availability. For example, the agent 520 may be configured to determine that an on-board connection and / or an on-board service is available when the user's mobile device 550 enters within a certain range of a wireless access point defined by GPS coordinates or geofencing. In some embodiments, the agent 520 of the user's mobile device 550 may determine on-board connection availability based on being able to exchange handshake information with a wireless access point. The agent 520 may further determine that an on-board service is available based on receiving a push notification 544, determining that a desired data packet can be properly communicated to a desired target via an on-board connection, etc.
[0059] In another example, the altitude of a wireless access point may be used to determine on-board service availability and / or on-board connection availability. When a wireless access point reaches a selected altitude threshold (e.g., 10,000 feet), the agent may be configured to determine that on-board services and / or on-board connections are available.
[0060] The agent 520 may also be configured to determine on-board service availability when the wireless access point reaches a particular speed threshold, altitude threshold, or direction of travel. In this situation, the mobile device 550 may be connected to a Wi-Fi access point and receive information from an on-board service (e.g., an in-flight entertainment system (IFE)) or from an airplane bus regarding speed or direction, but the mobile device 550 may not yet have access to an on-board public network (e.g., the Internet). For example, the aircraft may reach a speed threshold of approximately 288 mph (miles per hour) above an altitude of 10,000 feet, which would indicate that an on-board public network (e.g., the Internet) and / or on-board network services are available. Also, the aircraft may move in a particular direction when it reaches a cruising altitude sufficient for Wi-Fi service. In both cases, the speed of travel and / or the direction of travel may be used by the agent 520 to determine on-board service availability.
[0061] The signal strength of the wireless access point may also be used to determine on-board connection availability. The signal strength of the wireless access point may be used by the agent to determine when a selected signal threshold is exceeded and an on-board connection is available.
[0062] The vehicle door status may also be used to determine whether on-board services or connections are available. For example, aircraft Wi-Fi may not work until the aircraft cabin door is closed. Thus, the Wi-Fi service or connection may be assumed to be inactive when the cabin door is open, and agent 520 may act accordingly.
[0063] Vehicle boarding data or vehicle check-in data may be used by agent 520 to determine whether on-board services or on-board connections are available. Vehicle boarding data may include at least one of boarding time, boarding priority, seat interaction, baggage check-in, etc. Vehicle check-in data may include at least one of check-in time, check-in priority, etc.
[0064] On-board service availability of the on-board public network may also be determined by querying a cloud computing environment. In one example, once the mobile device is connected to the off-board wireless service, a query may be made to the cloud computing environment, which may include obtaining a service availability indicator. The agent 520 may be configured to identify on-board service availability of a Wi-Fi access point on the vehicle by querying the cloud computing environment. Thus, the agent 520 may determine one or more of the on-board connection availability and / or service availability using any of a variety of methods prior to enabling the mobile device 550 to connect to the wireless access point and the on-board service.
[0065] If a Wi-Fi access point exists at the venue and provides services and connectivity at the venue, agent 520 may use the event data to determine whether the service or connectivity is available at the venue. The event data may include at least one of start / end time, priority associated with the user (e.g., level of ticket purchased, seat interaction, etc.), current time, venue check-in, etc. The venue check-in data may include at least one of check-in time, check-in priority, etc.
[0066] In one example, the agent 520 can be configured to enable notifications regarding connecting to an on-board public network by providing an on-board service availability notification on the mobile device 550 that an on-board public network connection is available. The notification can be a notification that is local to the mobile device 550, and the notification can be an audio notification, a visual notification (e.g., a pop-up window), or a haptic notification (e.g., a vibration).
[0067] To avoid user frustration, connection to the public network can be prevented until an on-board public network (e.g., Internet) connection and service is available. In one example, the agent 520 can be configured to provide notification regarding connecting to the on-board public network by displaying an unavailability notification on the mobile device while the on-board public network connection (e.g., Internet) is unavailable.
[0068] In addition to switching from an off-board public network (e.g., airport Wi-Fi or a WWAN such as 3GPP 4G, LTE, or 5G) to an on-board public network (e.g., aircraft Wi-Fi), an agent 520 on the mobile device can switch between different off-board public networks. In one example, the agent 520 can be configured to switch from a first off-board public network connection to a second off-board public network connection based in part on a first off-board connection availability and a first off-board service availability, and / or a second off-board connection availability and a second off-board service availability, a location of the mobile device 550, an expected movement of a user of the mobile device 550, or the like.
[0069] In one exemplary embodiment, the first off-board public network connection may be a WWAN network (e.g., a 3GPP 5G network) and the second off-board public network connection may be a WLAN network (e.g., an airport Wi-Fi). In another example, the first off-board public network connection may be a WLAN network (e.g., an airport Wi-Fi) and the second off-board public network connection may be a WWAN network (e.g., a 5G network). Thus, the agent 520 may be configured to switch the mobile device 550 from an airport Wi-Fi network to a 3GPP 5G network when the user is leaving the airport, or to switch the mobile device 550 from a 3GPP 5G network to an airport Wi-Fi network when the user is arriving at the airport, or to switch from a 3GPP 5G network to a WLAN network at a clinic or other appointment / event location. In another exemplary embodiment, the user's mobile device 550 may switch between multiple Wi-Fi access points at the airport. As a further exemplary embodiment, a user's mobile device 550 may switch between Wi-Fi provided on a bus or ride-sharing vehicle and Wi-Fi provided at an airport, etc.
[0070] In FIG. 5, one dotted box (i.e., labeled "on vehicle") illustrates devices, servers, or other hardware that may be physically located on a vehicle (e.g., an airplane). The mobile device 550 may be inside or outside the vehicle depending on the movement of the device. For example, the mobile device 550 (e.g., a cell phone) may be physically located on a plane but may be moved off the plane. Some of the servers, devices, or modules may not be physically located on the plane and may be outside the plane because they are part of a data infrastructure that may be located at various locations in a computer network as needed. This ground location of the devices is illustrated in FIG. 5 by a second dotted box (i.e., labeled "on ground"), which represents systems or devices that may not be at a Wi-Fi access point location and / or may be on the ground.
[0071] FIG. 6 illustrates an example of a method for seamless wireless connectivity for a mobile phone on a vehicle. An agent on the mobile device may be configured to detect on-board connection availability of an on-board public network associated with a service set identifier (SSID) from a wireless access point (e.g., a wireless gateway, a wireless access device, a server, a wireless router, a switch, a modem, etc.), as in block 610. For example, an agent on the mobile phone may detect the SSID and on-board connection availability of a Wi-Fi access point on an airplane. The agent used for this operation may be the same agent illustrated as 520 in FIG. 5 and 302 in FIG. 3. The agent on the mobile device may be configured to identify on-board service availability of the on-board public network, as in block 620. The on-board service availability may represent the availability of Internet access to the mobile phone via a Wi-Fi access point.
[0072] The agent on the mobile device may be configured to enable a notification regarding connecting to an on-board public network based in part on the on-board connection availability and on-board service availability, as in block 630. For example, the agent may provide a pop-up notification to the phone of either an automatic connection already made or the user's ability to approve making a connection to a Wi-Fi access point when on-board connection availability and on-board service availability are both active (e.g., turned on). The agent on the mobile device may be configured to enable a connection to an on-board public network, as in block 640. Thus, the agent may connect the mobile phone to a Wi-Fi gateway, in this example, and ultimately to the Internet. The methods and corresponding blocks (610, 620, 630, 640) discussed herein may be implemented and stored on a machine-readable storage medium having embodied instructions that, when executed by one or more processors, cause the one or more processors to perform processes including the methods.
[0073] While much of the description of this technology focuses on aircraft Wi-Fi and vehicles, the technology may also be applied to Wi-Fi access point connections and Internet service connections that may be made automatically at any location where a user has a reason to do so. Examples of locations where the technology may be used may include hotels, public venues (concerts, sporting events, entertainment venues), medical clinics, appointments, theaters, gyms, or other locations. Thus, the technology may provide a streamlined way for users to connect to Wi-Fi access points and corresponding services, and may be used whenever the user is in a location that offers such Wi-Fi connectivity and corresponding services.
[0074] 7 illustrates an example of a satellite communication system 700. The satellite communication system 700 may include a satellite(s) 720 in bidirectional communication with a ground station 710 via a first communication link 712 between the satellite 720 and the ground station 710. The satellite 720 may also be in bidirectional communication with an aircraft 750 (e.g., an airplane, helicopter, blimp, or balloon) via a communication link 714 between the satellite 720 and the aircraft 750. The communication link 712 and the communication link 714 may enable communication between the aircraft 750 and the ground station 710 via the satellite 720 while the aircraft 750 is stationary or in motion.
[0075] In one example, the satellite communication system 700 may include multiple satellites 720, each of which may provide coverage of a service area, and the service areas of different satellites may be non-overlapping or overlapping. The satellite communication system 700 may be any suitable type of satellite system, including a geostationary orbit satellite system, a medium Earth orbit satellite system, a low Earth orbit satellite system, or a combination thereof. The satellite 720 may have several beams directed to different regions on the Earth, and the coverage area of each beam may be non-overlapping or overlapping with one or more other beams. The satellite 720 may have one or more spot beams that cover different regions on the Earth within the service area of the satellite 720. As another example, the satellite 720 may have one or more wide area coverage beams that cover the service area of the satellite 720. As yet another example, the satellite 720 may have a combination of spot beams and wide area coverage beams.
[0076] In one configuration, the aircraft 750 may include a communication system 770 for facilitating two-way communication with the satellite 720 via the communication link 714. The communication system 770 may include an antenna 772 for receiving downlink signals from the satellite 720 and transmitting uplink signals to the satellite 720 via the communication link 714. The aircraft 750 may include a transceiver 774 in communication with the antenna 772, a modem 776 in communication with the transceiver 774, a network access unit 778 (e.g., a router) in communication with the modem 776, and a wireless access point (WAP) 780 in communication with the network access unit 778. Additionally, the wireless access point 780 may communicate with one or more client devices in the aircraft 750, such as a seatback system 785 in the aircraft 750 and / or a client device 790 (e.g., a cell phone, tablet, laptop). Thus, communication system 770 can receive downlink signals from satellite 720 and forward the downlink signals to client devices, and receive uplink signals from the client devices and forward the uplink signals to satellite 720, thereby supporting two-way data communications between client devices in aircraft 750 and satellite 720. In one configuration, network access unit 778 can communicate with a server 740 (such as server 510 described above) onboard aircraft 750.
[0077] In one example, the aircraft may include a seat back system 785, which may be a fixed or on-aircraft device. The seat back system 785 may communicate with the server 740 via a wired communication link. For example, the seat back system 785 may communicate with a network access unit 778 via a wired communication link, which may communicate with the server 740 via a wired communication link. Alternatively, the seat back system 785 may communicate with the server 740 via the network access unit 778 and a wireless access point 780. The seat back system 785 may execute one or more applications that provide an interface for a user on the aircraft 750 to obtain and consume data.
[0078] In another example, the client device 790 can receive and display data and can be brought aboard the aircraft 750 by a user (which can include a passenger or crew member). The client device 790 can execute one or more applications that provide an interface for the user to obtain and consume data. The user can have the option to select / request data for viewing from the interface. When the user interacts with the client device 790, the client device 790 can transmit a request for data to the network access unit 778 via the wireless access point 780. The client device 790 can receive the requested data from the network access unit 778 via the wireless access point 780. Thus, the wireless access point 780 can provide communication between the network access unit 778 and the client device 790.
[0079] In one example, the network access unit 778 can receive requests for data from client devices 790 via wireless access point 780, multiplex and forward the requests to modem 776. The network access unit 778 can receive and demultiplex packets associated with the data, and forward the data to client devices 790 via wireless access point 780.
[0080] In one example, the modem 776 can receive a request for data from the network access unit 778, and the modem 776 can generate modulated data (e.g., a transmit intermediate frequency (IF) signal) for delivery to the transceiver 774. Additionally, the modem 776 can receive the requested data from the transceiver 774 as modulated data (e.g., a receive intermediate frequency (IF) signal) and demodulate the data for transmission to the network access unit 778. In one example, the modem 776 can be integrated with the network access unit 778, or alternatively, the modem 776 and the network access unit 778 can be separate components.
[0081] In one example, the transceiver 774 may upconvert and amplify modulated data received from the modem 776 to generate an uplink signal for transmission to the satellite 720 via the antenna 772. Similarly, the transceiver 774 may receive a downlink signal from the satellite 720 via the antenna 772. The transceiver 774 may then amplify and downconvert the downlink signal to generate modulated downlink data (e.g., a received IF signal) for demodulation by the modem 776.
[0082] In one example, the ground station 710 may also be referred to as an access node, a hub, or a gateway. The ground station 710 may include an antenna for transmitting uplink signals to the satellite 720 and receiving downlink signals from the satellite 720. The ground station 710 may communicate with a content server 730 via a network 760. The content server 730 may include media content, web content, etc.
[0083] In one example, network 760 may be any type of network, including, for example, the Internet, an Internet Protocol (IP) network, an intranet, a wide area network (WAN), a local area network (LAN), a virtual private network (VPN), a virtual LAN (VLAN), a fiber optic network, a cable network, a public switched telephone network (PSTN), a public switched data network (PSDN), a public land mobile network, a cellular network, and / or any other type of network that supports communications as described herein. Network 760 may include both wired and wireless connections, as well as optical links.
[0084] In one example, ground station 710 may be provided as an interface between network 760 and satellite 720. Ground station 710 may receive data and information from content server 730 accessible via network 760, destined for seatback systems 785 and / or client devices 790 onboard aircraft 750. Ground station 710 may format the data and information and transmit uplink signals to satellite 720 for subsequent distribution to aircraft 750 (and then seatback systems 785 and / or client devices 790). Similarly, ground station 710 may receive downlink signals (e.g., including requests, data, and / or information originating from seatback systems 785 and / or client devices 790 onboard aircraft 750) from satellite 720, which may be destined for destinations accessible via network 760. Ground station 710 may format the received downlink signals for transmission over network 760.
[0085] In one configuration, client device 790 may be onboard aircraft 500. Alternatively, client device 790 may be onboard other types of vehicles, such as trains, automobiles (e.g., cars, trucks, buses, etc.), ships (e.g., private boats, commercial ships, cruise ships, etc.), etc.
[0086] 8 illustrates a computing device 810 capable of executing the aforementioned subsystems of the present technology. The computing device 810 and components of the computing device 810 described herein may correspond to the servers, client devices, and / or computing devices described above. A computing device 810 is illustrated in which a high-level example of the technology may be executed. The computing device 810 may include one or more processors 812 in communication with a memory device 820. The computing device may include a local communication interface 818 for components in the computing device. For example, the local communication interface may be a local data bus and / or any associated address or control bus that may be desired.
[0087] The memory device 820 may include modules 824 executable by the processor(s) 812 and data for the modules 824. The modules 824 may perform the functions previously described. A data store 822 may also be located in the memory device 820 to store data related to the modules 824 and other applications along with an operating system executable by the processor(s) 812.
[0088] Other applications may also be stored in the memory device 820, which may be executable by the processor(s) 812. The components or modules discussed in this description may be implemented in the form of software using high-level programming languages that are compiled, interpreted, or executed using a mixture of methods.
[0089] A computing device may also have access to I / O (input / output) devices 814 that can be used by the computing device. One example of an I / O device is a display screen that can be used to display output from a computing device. Other known I / O devices can be used with a computing device, if desired. Networking devices 816 and similar communication devices can be included in the computing device. The networking devices 816 can be wired or wireless network devices that connect to the Internet, a LAN, a WAN, or other computing networks.
[0090] The components or modules shown as stored in the memory device 820 may be executed by the processor 812. The term "executable" may refer to a program file in a form that can be executed by the processor 812. For example, a program in a higher level language may be compiled into machine code in a form that can be loaded into a random access portion of the memory device 820 and executed by the processor 812, or source code may be loaded by another executable program and interpreted to generate instructions in a random access portion of the memory that are executed by the processor. The executable program may be stored in any portion or component of the memory device 820. For example, the memory device 820 may be a random access memory (RAM), a read only memory (ROM), a flash memory, a solid state drive, a memory card, a hard drive, an optical disk, a floppy disk, a magnetic tape, or any other memory component.
[0091] The processor 812 may represent multiple processors and the memory 820 may represent multiple memory units operating in parallel to the processing circuit. This may provide the system with parallel processing channels of processes and data. The local interface 818 may be used as a network to facilitate communication between any of the multiple processors and memories. The local interface 818 may use additional systems designed to coordinate communications, such as load balancing, bulk data transfer, and similar systems.
[0092] Although the flowcharts presented for this technique may imply a particular order of execution, the order of execution may differ from that illustrated. For example, the order of the last two blocks may be rearranged relative to the order shown. Furthermore, two or more blocks shown in succession may be performed in parallel or with partial parallelism. In some configurations, one or more blocks shown in the flowcharts may be omitted or skipped. Any number of counters, state variables, alert semaphores, or messages may be added to the logic flow for purposes of enhancing utility, accounting, performance, measurement, troubleshooting, or similar reasons.
[0093] Some of the functional units described herein may be represented as modules to more specifically emphasize their implementation independence. For example, a module may be implemented as a hardware circuit including custom very large scale integrated (VLSI) circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented with programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices, or the like.
[0094] Modules may also be implemented in software for execution by various types of processors. An identified module of executable code may, for example, include one or more blocks of computer instructions, which may be organized as an object, a procedure, or a function. Nevertheless, the executable files of an identified module need not be physically located together, but may include heterogeneous instructions stored in different locations that, when logically combined, comprise the module and achieve the stated purpose of the module.
[0095] Indeed, a module of executable code may be a single instruction, or many instructions, and may even be distributed across several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized in any suitable type of data structure. Operational data may be collected as a single data set or may be distributed across different locations, including across different storage devices. Modules may be passive or active, and include agents operable to perform a desired function.
[0096] The techniques described herein may also be stored on computer-readable storage media, including volatile and non-volatile, removable and non-removable media implemented in any technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Computer-readable storage media includes, but is not limited to, RAM, ROM, Electrically Erasable Programmable Read-Only Memory (EEPROM), Flash memory, or other memory technology, Compact Disc Read-Only Memory (CD-ROM), Digital Versatile Disk (DVD), or other optical storage, magnetic cassettes, magnetic tapes, magnetic disk storage, or other magnetic storage devices, or any other computer storage media that may be used to store the desired information and the techniques described.
[0097] The devices described herein may also include communications connections or networking equipment and networking connections that allow the devices to communicate with other devices. A communications connection is an example of a communication medium. Communication media typically embodies computer-readable instructions, data structures, program modules, and other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. A "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media, such as a wired network or direct-wired connection, and wireless media, such as acoustic, radio frequency, infrared, and other wireless media. As used herein, the term computer-readable media includes communication media.
[0098] Reference has been made to the examples illustrated in the drawings, and specific language has been used herein to describe the same. It will nevertheless be understood that no limitation of the scope of the present disclosure is intended thereby. Alterations and further modifications of the features illustrated herein, and additional applications of the examples as illustrated herein, that would occur to one skilled in the art in possession of this disclosure, are to be considered within the scope of this description.
[0099] In describing the present technology, the following terms are used: "a," "an," and "the" include plural referents unless the context clearly dictates otherwise. Thus, for example, a reference to an item includes a reference to one or more items. The term "ones" refers to one, two, or more, and generally applies to the selection of some or all of a quantity. The term "plurality" refers to two or more of an item. The term "about" means that quantities, dimensions, sizes, formulations, parameters, shapes, and other characteristics are not exact, but may be approximated and / or may be greater or less, as appropriate, to reflect tolerances, conversion factors, rounding, measurement errors, and the like, and other factors known to those of ordinary skill in the art. The term "substantially" means that the recited characteristic, parameter, or value need not be achieved exactly, but deviations or variations, including, for example, tolerances, measurement errors, measurement accuracy limitations, and other factors known to those of ordinary skill in the art, may occur in amounts that do not exclude the effect that the characteristics are intended to provide. Numerical data may be expressed or presented herein in a range format. It should be understood that such range formats are used merely for convenience and brevity and, thus, should be interpreted flexibly not only to include the numerical values expressly recited as the limits of the range, but also to include all of the individual numerical values or subranges subsumed within that range, as if each numerical value and subrange was expressly recited.
[0100] By way of illustration, a numerical range of "about 1 to 5" should be construed to include not only the values of about 1 to about 5 explicitly recited, but also all individual values and subranges within the indicated range. Thus, included in this numerical range are individual values such as 2, 3, and 4, as well as subranges such as 1 to 3, 2 to 4, and 3 to 5. This same principle should apply to ranges reciting only one numerical value (e.g., "greater than about 1"), regardless of the breadth or nature of the range described. For convenience, multiple items may be presented in a common list. However, these lists should be construed as if each member of the list is individually identified as a separate and unique member. Thus, the individual members of such lists should not be construed as de facto equivalents of any other members of the same list solely based on their presentation in a common group, absent any indication to the contrary.
[0101] Furthermore, the terms "and" and "or," when used with a list of items, should be interpreted broadly in that any one or more of the listed items may be used alone or in combination with other listed items. The term "alternatively" refers to a selection of one of two or more alternatives and is not intended to limit the selection to only the listed alternatives or to only one of the listed alternatives, unless the context clearly indicates otherwise. The term "coupled," as used herein, does not require that components are directly connected to each other. Instead, the term is also intended to include configurations having an indirect connection in which one or more other components may be included between the coupled components. For example, such other components may include amplifiers, attenuators, isolators, directional couplers, redundant switches, and the like. Also, as used herein, including the claims, "or" used in a list of items beginning with "at least one of" indicates a disjunctive list, such as, for example, a list of "at least one of A, B, or C" means A or B or C or AB or AC or BC or ABC (i.e., A and B and C). As used herein, a "set" of elements is intended to mean "one or more" of those elements, unless a set is explicitly required to have more than one or is explicitly allowed to be a null set.
[0102] Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more examples. In the preceding description, numerous specific details, such as examples of various configurations, have been provided to provide a thorough understanding of examples of the described technology. However, one of ordinary skill in the art will recognize that the technology may be practiced without one or more of the specific details, or with other methods, components, devices, etc. In other instances, well-known structures or operations have not been shown or described in detail to avoid obscuring aspects of the technology.
[0103] Although the subject matter has been described in language specific to structural features and / or operations, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features and operations described above. Rather, the specific features and operations described above are disclosed as example forms of implementing the claims. Numerous modifications and alternative arrangements may be made without departing from the spirit and scope of the described technology.
Claims
1. 1. A method for wireless connectivity for a mobile device, comprising: Detecting, in an agent on the mobile device, on-board connectivity availability of an on-board public network associated with a service set identifier (SSID) from an access point mounted on the vehicle; identifying active on-board service availability of the on-board public network at the agent on the mobile device; Enabling, at the mobile device, notifications regarding connecting to the on-board public network based in part on the on-board connection availability and the on-board service availability that is active; and enabling, at the mobile device, a connection to the on-board public network using the access point.
2. The method of claim 1 , further comprising: at the mobile device, switching from an off-board public network connection to an on-board public network connection based in part on the on-board connection availability and on-board service availability.
3. The method of claim 1 , further comprising: at the mobile device, switching from the on-board public network to an off-board public network based in part on termination of the on-board connection availability or the on-board service availability.
4. 4. The method of claim 1, further comprising: determining, at the mobile device, the on-board service availability or the on-board connection availability based in part on one or more of a wireless access point (WAP) geographic location, a WAP altitude, a WAP speed, an on-board public network signal strength, a vehicle door status, a vehicle boarding data, or a vehicle check-in data.
5. The method of claim 1 , further comprising querying, at the mobile device, the on-board service availability of the on-board public network connection from a cloud computing environment.
6. bypassing, at the mobile device, a network connection assistant prompt associated with the on-board public network not based in part on on-board service availability; or The method of claim 1 , further comprising: at the mobile device, authenticating a network connection assistant associated with the on-board public network based in part on the on-board connection availability and the on-board service availability.
7. 10. The method of claim 1, further comprising: enabling the notification at the mobile device regarding connecting to the on-board public network by displaying an availability notification on the mobile device that the on-board public network connection is available.
8. 10. The method of claim 1, further comprising: enabling the notification at the mobile device regarding connecting to the on-board public network by displaying an unavailability notification on the mobile device that the on-board public network connection is unavailable.
9. The method of claim 1 , wherein the notification is a local mobile device notification.
10. further comprising, at the mobile device, switching from the off-board public network connection to an additional off-board public network connection based in part on off-board connection availability and off-board service availability, or additional off-board connection availability and additional off-board service availability; The method of claim 2 , wherein the off-board public network connection and the additional off-board public network connection are at least one of a WWAN network and a WLAN network.
11. 1. A mobile device for wireless connectivity, comprising: at least one processor; and at least one memory device including a data store for storing a plurality of data and instructions, the plurality of data and instructions, when executed, causing an agent of the mobile device to: Detecting on-board connectivity availability of an on-board public network associated with a service set identifier (SSID) from an access point mounted on the vehicle; Identifying active onboard service availability of said onboard public network; enabling notifications regarding connecting to the onboard public network based in part on the onboard connection availability and the onboard service availability being active; The mobile device enables connection to the on-board public network.
12. The plurality of data and instructions, when executed, cause the agent on the mobile device to: The mobile device of claim 11 , configured to switch from an off-board public network to the on-board public network based in part on the on-board connection availability and the on-board service availability.
13. The plurality of data and instructions, when executed, cause the agent on the mobile device to: The mobile device of claim 11 , wherein the mobile device switches from the on-board public network to an off-board public network based in part on termination of the on-board connection availability or the on-board service availability.
14. The plurality of data and instructions, when executed, cause the agent on the mobile device to:
14. The mobile device of claim 11, wherein the on-board service availability or the on-board connection availability is determined based in part on one or more of a wireless access point (WAP) geographic location, a WAP altitude, a WAP speed, an on-board public network signal strength, a vehicle door status, a vehicle boarding data, or a vehicle check-in data.
15. The plurality of data and instructions, when executed, cause the agent on the mobile device to: The mobile device of claim 11 , wherein the mobile device causes the on-board service availability of an on-board public network connection to be queried from a cloud computing environment.
16. The plurality of data and instructions, when executed, cause the agent on the mobile device to: bypassing a network connection assistant prompt associated with said on-board public network, not based in part on on-board service availability; or The mobile device of claim 11 , further comprising: authenticating a network connection assistant associated with the on-board public network based in part on the on-board connection availability and the on-board service availability.
17. The plurality of data and instructions, when executed, cause the agent on the mobile device to:
12. The mobile device of claim 11, wherein the notification of connecting to the on-board public network is enabled by displaying an availability notification on the mobile device that the on-board public network connection is available.
18. The plurality of data and instructions, when executed, cause the agent on the mobile device to:
12. The mobile device of claim 11, wherein the notification regarding connecting to the on-board public network is enabled by displaying an unavailability notification on the mobile device that the on-board public network connection is unavailable.
19. The mobile device of claim 11 , wherein the notification is a local mobile device notification.
20. The plurality of data and instructions, when executed, cause the agent on the mobile device to: switching from the off-board public network to an additional off-board public network connection based in part on off-board connection availability and off-board service availability, or additional off-board connection availability and additional off-board service availability; The mobile device of claim 12 , wherein the off-board public network and the additional off-board public network connection are at least one of a WWAN network and a WLAN network.
21. 1. A machine-readable storage medium having instructions embodied thereon, the instructions, when executed by one or more processors, causing the one or more processors to: Detecting, in an agent on the mobile device, on-board connectivity availability of an on-board public network associated with a service set identifier (SSID) from an access point mounted on the vehicle; identifying active on-board service availability of the on-board public network at the agent on the mobile device; Enabling, at the mobile device, notifications regarding connecting to the on-board public network based in part on the on-board connection availability and the on-board service availability; and enabling, at the mobile device, a connection to the on-board public network.
22. 22. The machine-readable storage medium of claim 21, further comprising: at the mobile device, switching from an off-board public network connection to an on-board public network connection based in part on the on-board connection availability and the on-board service availability.
23. 22. The machine-readable storage medium of claim 21, further comprising: at the mobile device, switching from the on-board public network to an off-board public network based in part on termination of the on-board connection availability or the on-board service availability.
24. 24. The machine-readable storage medium of claim 21, further comprising, at the mobile device, determining the onboard service availability or the onboard connection availability based in part on one or more of a wireless access point (WAP) geographic location, a WAP altitude, a WAP speed, an onboard public network signal strength, a vehicle door status, a vehicle boarding data, or a vehicle check-in data.
25. 22. The machine-readable storage medium of claim 21, further comprising querying, at the mobile device, the on-board service availability of an on-board public network connection from a cloud computing environment.
26. bypassing, at the mobile device, a network connection assistant prompt associated with the on-board public network not based in part on on-board service availability; or 22. The machine-readable storage medium of claim 21, further comprising: at the mobile device, authenticating a network connection assistant associated with the on-board public network based in part on the on-board connection availability and the on-board service availability.
27. 22. The machine-readable storage medium of claim 21, further comprising: enabling, at the mobile device, the notification of connecting to the on-board public network by displaying an availability notification on the mobile device that the on-board public network connection is available.
28. 22. The machine-readable storage medium of claim 21, further comprising: at the mobile device, disabling the notification regarding connecting to the onboard public network by displaying an unavailability notification on the mobile device that the onboard public network is unavailable.
29. 22. The machine-readable storage medium of claim 21, wherein the notification is a local mobile device notification.
30. further comprising, at the mobile device, switching from the off-board public network connection to an additional off-board public network connection based in part on off-board connection availability and off-board service availability, or additional off-board connection availability and additional off-board service availability; 23. The machine-readable storage medium of claim 22, wherein the off-board public network or the additional off-board public network is a WWAN network or a WLAN network.