US Pat. No. 9,407,382

POSITIONING STUB FOR MITIGATION OF RETURN LOSS DURING SIGNAL TRANSMISSION

Sprint Communications Com...

1. A system for mitigating signal return loss, the system comprising:
a radio transmitter configured to measure voltage standing wave ratio (VSWR) and compute associated signal return loss;
a radio antenna configured to broadcast over air a radio signal generated by the radio transmitter;
a signal transmission line that couples the radio transmitter to the radio antenna, wherein the signal transmission line is
configured to transmit the radio signal to the radio antenna along a signal path; and

a positioning stub coupled to the radio transmitter, the signal transmission line, and the radio antenna, the positioning
stub configured to move to different locations along the signal path to dynamically change an impedance of the signal path,
wherein the radio transmitter is further configured to:

compute a first signal return loss along the signal path,
determine if the first signal return loss is higher than a predetermined threshold of signal return loss, and
upon determining that the first signal return loss is higher than the predetermined threshold, determine that the positioning
stub should be moved from a first location to a second location to change the impedance of the signal path.

US Pat. No. 9,386,463

APPLICATION RISK ANALYSIS

Sprint Communications Com...

1. A mobile communication device, comprising:
a radio transceiver to communicatively couple the mobile communication device to a radio access network by a wireless communication
link;

a non-transitory memory;
a processor; and
a monitoring application stored in the non-transitory memory that, when executed by the processor, is configured to
determine a risk profile of a monitored application installed on the mobile communication device based on:
a comparison of performance of the mobile communication device before and after installation of the monitored application
on the mobile communication device,

a comparison of requests by the monitored application to access a network associated with the mobile communication device
or an application stored on or accessed by the mobile communication device versus requests for access by applications of a
same application type as the monitored application, wherein the same application type comprises one of voice communication,
data communication, web browsing, email, short message system, texting, multimedia message system, gaming, social networking,
informational enhancing, functional enhancing, and performance enhancing, and

and at least one of:
community feedback of the monitored application,
an amount of time elapsed since release of the monitored application, or
a risk profile of a publisher of the monitored application; and
perform an action responsive to the risk profile of the monitored application meeting or exceeding a predefined threshold.

US Pat. No. 9,380,608

ENHANCED EMERGENCY CALL MOBILITY SUPPORT

Sprint Communications Com...

1. A system for connecting a mobile emergency call to a public safety answering point, comprising:
a processor;
a non-transitory memory; and
an application stored in the memory that, when executed by the processor,
receives an emergency call from a mobile station that originated from a roaming communication service provider network, wherein
the mobile station is associated with a non-dialable number allocated by a home communication service provider network, and
wherein the roaming communication service provider network routes the emergency call into the home communication service provider
network based on a routable number to which the emergency call is directed that references a network node in the home communication
service provider network,

in response to receiving the emergency call from the mobile station in the roaming communication service provider network,
associates, by the home communication service provider network, a temporary dialable number to the non-dialable number, and

promotes establishing a communication link between the mobile station in the roaming communication service provider network
and a public safety answering point and providing the temporary dialable number to the public safety answering point, wherein,
when the public safety answering point drops the communication link with the mobile station, the public safety answering point
reconnects to the mobile station by calling the temporary dialable number, and wherein the temporary dialable number routes
into the home communication service provider network to a signaling node and the signaling node and the roaming communication
service provider network work together to connect the public safety answering point to the mobile station.

US Pat. No. 9,369,841

PROVIDING GEOGRAPHIC LOCATIONS OF A USER'S WIRELESS DEVICE

Sprint Communications Com...

1. One or more non-transitory computer-readable media containing computer-executable instructions for performing a method
for disclosing the identity of one or more users of associated wireless devices located within a predefined geographic boundary,
the method comprising:
in response to the occurrence of an event at a geographic location, receiving a request for the identity of one or more users
of associated wireless devices located within a geographic boundary, wherein the geographic boundary includes the geographic
location of the occurrence of the event and a time period for the event;

generating a list of geographic locations within the time period for each wireless device, wherein the list of geographic
locations include addresses inside and outside of the geographic boundary visited by the wireless device;

and
disclosing the identity of the one or more wireless devices and associated users to one or more entities when the associated
users have previously consented to the disclosure of the list of geographic locations.

US Pat. No. 9,330,053

TRUE PUSH ARCHITECTURE FOR INTERNET PROTOCOL NOTIFICATION

Sprint Communications Com...

1. A method of true push for internet protocol notification to a mobile communication device implemented by at least one server
computer, comprising:
determining, by an application stored in a non-transitory memory of a server computer and executed by a processor of the server
computer, a size of physically addressable random access memory and a number of central processing unit cores of the server
computer at boot time;

setting, by the application, a resource limit, rlimit, in a kernel of the server computer that comprises:
setting a limit for a total number of file handles in an entire system automatically based on the determined size of the random
access memory and the determined number of the central processing unit cores at boot time;

tying, by the application, a memory page allocation into a setting of kernel parameters; and
setting, by the application, central processing unit core affinity to a single thread for the server computer to avoid context
switching between applications,

whereby input/output maintenance of the server computer is maximized for concurrent web sockets so that the server computer
is optimized for implementing the true push for internet protocol notification.

US Pat. No. 9,326,206

WIRELESS COMMUNICATION DEVICE CONTROL OF WIRELESS COMMUNICATION ACCESS SYSTEMS

Sprint Communications Com...

1. A method of operating a wireless communication device to control wireless communication access systems individually identified
by network names and by System Identifiers (SIDs) and to control data communication accounting systems individually identified
by accounting names and by Billing Identifiers (BIDs), the method comprising:
graphically displaying the network names and the accounting names and responsively receiving user inputs indicating a user-priority
for the network names and the accounting names;

wirelessly attaching to a first one of the wireless communication access systems having a first one of the network names and
a first one of the SIDs and responsively receiving network data characterizing the SIDs and the BIDs;

digitally processing the network data characterizing the SIDs and the BIDs in combination with the user-priority for the network
names and the accounting names to determine a second one of the SIDs for a second one of the wireless communication access
systems, and in response, wirelessly attaching to the second one of the wireless communication access systems having the second
one of the SIDs and displaying the second one of the network names for the second one of the wireless communication access
systems; and
wirelessly exchanging user data with the second one of the wireless communication access systems.

US Pat. No. 9,319,948

WIRELESS COMMUNICATION SYSTEM TO SELECT A WIRELESS ACCESS NODE BASED ON RADIO ACCESS TERMINAL MEASUREMENTS AND SUBSCRIBER WIRELESS DATA SCHEDULING WEIGHTS

Sprint Communications Com...

1. A method of operating a Long Term Evolution (LTE) wireless access node to transfer communications for a subscriber, the
method comprising:
receiving Radio Access Terminal (RAT) measurements from a User Equipment (UE) operated by the subscriber indicating individual
Radio Frequency (RF) signal quality for multiple eNodeBs;

receiving subscriber wireless data scheduling weights indicating individual scheduling metrics for the subscriber from the
multiple eNodeBs;

processing the RAT measurements and the subscriber wireless data scheduling weights to select one of the multiple eNodeBs;
and

transferring a signaling message to the UE indicating the selected eNodeB.

US Pat. No. 9,305,029

INVENTORY CENTRIC KNOWLEDGE MANAGEMENT

Sprint Communications Com...

1. A method executed by at least one computing device for managing data communication network inventory, comprising:
analyzing a plurality of separate data stores, each of the plurality of separate data stores storing information of a different
type, wherein

the different information types comprise at least trouble tickets, change requests, and scheduled maintenance,
the analyzing is conducted with reference to a plurality of port interfaces on a plurality of routers in a data communication
network,

each router of the plurality of routers comprises at least two port interfaces, and
at least one given port interface is shared by at least two of the plurality of routers;
building an integrated data store structured according to the plurality of port interfaces based on the analyzing the plurality
of separate data stores, wherein the integrated data store comprises

trouble ticket information associated with the plurality of port interfaces,
change request information associated with the plurality of port interfaces, and
scheduled maintenance associated with the plurality of port interfaces;
receiving, from a user, a selection of a port interface of the plurality of port interfaces;
selecting a subset of information corresponding to the selected port interface from the integrated data store, wherein the
selected subset of information summarizes the trouble ticket information, the change request information, and the scheduled
maintenance related to the selected port interface; and

transmitting the selected subset of information to the user for viewing.

US Pat. No. 9,230,085

NETWORK BASED TEMPORARY TRUST EXTENSION TO A REMOTE OR MOBILE DEVICE ENABLED VIA SPECIALIZED CLOUD SERVICES

Sprint Communications Com...

7. A method of executing a trusted application on a mobile communication device without a trusted security zone hardware partition,
comprising:
examining a provisioning status of a trusted security subzone on the mobile communication device;
responsive to no trusted security zone hardware partition being found on the mobile communication device, generating, by a
server, an encrypted key;

transmitting the encrypted key to the mobile communication device;
comparing the encrypted key with a plurality of trust keys stored in the mobile communication device to determine the trustworthiness
of the encrypted key;

responsive to the encrypted key being determined to be trustworthy, installing a temporary trust enablement application on
the mobile communication device;

transmitting the trusted application through an encrypted channel to the temporary trust enablement;
blocking, by the temporary trust enablement, at least part of a processor of the mobile communication device every other predefined
number of clock cycles to execute the trusted application;

restricting the trusted application to a subset of application programming interfaces and hardware peripherals of the mobile
communication device;

releasing the at least part of the processor when the trusted application is completed; and
removing the trusted application, the temporary trust enablement, and the encrypted key when the trusted application is completed.

US Pat. No. 9,191,522

BILLING VARIED SERVICE BASED ON TIER

Sprint Communications Com...

1. A mobile communication device, comprising:
a radio frequency transceiver to communicatively couple the mobile communication device to a radio access network by a wireless
communication link;

a processor;
a memory;
a trusted security zone stored in the memory, wherein the trusted security zone provides hardware-assisted trust; and
an application, stored in the memory, that when executed by the processor in the trusted security zone,
monitors a plurality of service tiers, wherein each service tier of the plurality of service tiers is associated with at least
one of an amount of data, a data throughput, a latency, or a jitter allowed for a communication service,

creates a plurality of logs of consumption for each service tier of the plurality of service tiers, wherein each service tier
of the plurality of service tiers represents a different rate of data, a different data throughput, a different latency, or
a different jitter, and

transmits a message comprising the plurality of logs of the consumption to a billing data store in a network of a service
provider associated with the mobile communication device, wherein the plurality of logs in the message comprise consumption
logs for at least two service tiers of the plurality of service tiers, and wherein a bill is created by a billing server accessing
the billing data store and comprises a consumption of at least two service tiers of the plurality of service tiers.

US Pat. No. 9,154,973

TESTING MOBILE PHONE MAINTENANCE CHANNEL

Sprint Communications Com...

7. A method of testing a mobile phone maintenance channel, comprising:
generating, by a first computer, a plurality of firmware update notification messages;
transmitting, by the first computer, the plurality of firmware update notification messages via a first communication path
between the first computer and a second computer;

in response to receiving the plurality of firmware update notification messages, generating, by the second computer, a plurality
of first maintenance request messages;

generating, by the second computer, a plurality of second maintenance request messages;
transporting the plurality of first maintenance request messages and the plurality of second maintenance request messages
over a mobile phone maintenance channel, wherein the mobile phone maintenance channel comprises a second communication path
between the first computer and the second computer, and wherein the first communication path is different from the second
communication path;

in response to receiving the plurality of first maintenance request messages and the plurality of second maintenance request
messages, generating, by the first computer, a plurality of maintenance response messages;

transmitting, by the first computer, the plurality of maintenance response messages;
transporting the plurality of maintenance response messages over the mobile phone maintenance channel; and
in response to receiving the plurality of maintenance response messages, determining, by the second computer, a test result
based on comparing the plurality of first maintenance request messages and the plurality of second maintenance request messages
with the plurality of maintenance response messages.

US Pat. No. 9,066,269

NETWORK HANDOVERS

Sprint Communications Com...

1. One or more nontransitory computer-readable storage media having computer-executable instructions embodied thereon that,
when executed, perform a method, the method comprising:
identifying a signal of a user device is decreasing in a first network;
querying a base transceiver station (BTS) in a second network to identify one or more channels of the second network that
is available to accept the user device; and

based on the identification of the signal of the user device that is decreasing, transferring the user device to a first channel
of the one or more channels of the second network that was identified as available to accept the user device.

US Pat. No. 10,659,315

VIRTUAL NETWORK FUNCTION (VNF) RELOCATION IN A SOFTWARE DEFINED NETWORK (SDN)

Sprint Communications Com...

1. A method of operating a data communication system to control Software Defined Network (SDN) Virtual Network Functions (VNFs), the method comprising:a Network Function Virtualization Infrastructure (NFVI) executing the SDN VNFs and responsively transferring SDN Key Performance Indicators (KPIs) to a Management and Orchestration (MANO) computer system;
the MANO computer system processing the SDN KPIs from the NFVI and responsively determining an NFVI task to perform for the SDN VNFs wherein the NFVI task comprises at least one of relocating some of the SDN VNFs, off-boarding some of the SDN VNFs, darkening some of the SDN VNFs, lightening some of the SDN VNFs, and on-boarding a new SDN VNF;
the MANO computer system transferring NFVI control data indicating the NFVI task to the NFVI; and
the NFVI performing the NFVI task for the SDN VNFs responsive to the NFV control data from the MANO computer system wherein the NFVI task comprises at least one of the SDN VNF relocation, the SDN VNF off-boarding, the SDN VNF darkening, the SDN VNF lightening, and the SDN VNF on-boarding.

US Pat. No. 10,212,755

WIRELESS ACCESS POINT CONTROL OF DISCONTINUOUS RECEPTION (DRX) PARAMETERS FOR USER EQUIPMENT (UE)

Sprint Communications Com...

1. A method of operating a wireless access point to control Discontinuous Reception (DRX) parameters for User Equipment (UE), the method comprising:wirelessly exchanging wireless communications with a plurality of UEs comprising High Power UEs (HPUEs) and non-HPUEs;
determining a number of the HPUEs;
determining a number non-HPUEs experiencing RF interference above an RF interference threshold;
comparing the number of non-HPUEs experiencing RF interference above the RF interference threshold to the number of HPUEs and when the number of non-HPUEs experiencing RF interference above the RF interference threshold exceeds the number of HPUEs, then modifying DRX parameters for the HPUEs to a shorter DRX cycle timer setting; and
wirelessly transmitting an instruction to the HPUEs indicating the modification of the DRX parameters for the HPUEs to the shorter DRX cycle timer setting, wherein the DRX cycle timer setting comprises at least one of an On-Duration timer setting, a DRX Inactivity timer setting, and a DRX-Retransmission timer setting within the cycle timer.

US Pat. No. 10,152,717

DOCUMENT PERFORMANCE BASED KNOWLEDGE CONTENT MANAGEMENT RECOMMENDER SYSTEM

Sprint Communications Com...

1. A method of providing content to a customer care representative, comprising:receiving, by an application, during a first interaction between a user and the customer care representative, a report associated with at least one of a first service problem or a first device problem;
receiving, by the application, a plurality of key words from the customer care representative, wherein at least some key words of the plurality of key words are associated with the report;
retrieving, by the application, a plurality of pieces of content associated with the at least some key words, the plurality of pieces of content including customer support documentation at least partially related to the first service problem or the first device problem;
sending, by the application, at least some pieces of content of the plurality of pieces of content to a graphical user interface of a device associated with the customer care representative, the at least some pieces of content of the plurality of pieces of content displayed in a first sorted list;
wherein each piece of the at least some pieces of content is associated with a content quality metric indicating a quality of each respective piece of the at least some pieces of content with respect to the first service problem or the first device problem in resolving the first service problem or the first device problem,
wherein the at least some of the pieces of content are sorted in the first sorted list by the content quality metric associated with each piece of content;
wherein the content quality metric is determined based on a plurality of call metrics, wherein each call metric of the plurality of call metrics is associated with each piece of content; and
wherein the plurality of call metrics comprises:
an interaction time metric indicating an average time of a plurality of interactions between a plurality of customer care representatives and a plurality of customers associated with each piece of content;
a customer care representative sentiment metric indicating an average value of a rating provided by each customer care representative of a plurality of customer care representatives for each piece of content;
a next call metric indicating an additional interaction with the user;
a content usage metric indicating an amount of time that a respective piece of the at least some pieces of content is accessed in addressing the first service problem or the first device problem; and
a content age metric indicating an age of a respective piece of the at least some pieces of content;
updating, by the application, at least one call metric of the plurality of call metrics for at least one piece of content from the first sorted list in response to the at least one piece of content being accessed from the first sorted list; and
sending, by the application, the at least some pieces of content of the plurality of pieces of content to the graphical user interface of the device associated with the customer care representative, the at least some pieces of content of the plurality of pieces of content displayed in a second sorted list varied from the first sorted list based on the updated at least one call metric of the plurality of call metrics.

US Pat. No. 10,116,373

DYNAMICALLY ADJUSTING VERTICAL BEAMFORMING WEIGHTS

Sprint Communications Com...

14. A dynamic vertical beamforming system for dynamically adjusting vertical beamforming weights to influence a width of a beam emitted from an antenna, the dynamic vertical beamforming system comprising:a processor; and
one or more computer storage hardware devices storing computer-usable instructions that, when used by the processor, cause the processor to:
determine that a quantity of user devices having a line of sight to the antenna is above a threshold of user devices, at least a portion of the user devices being vertically separated from others of the user devices;
determine, based on quality information sent from the user devices, current radio frequency (RF) conditions between the antenna and the user devices;
if the current RF conditions are below a minimum threshold, adjusting phase and amplitude components of the vertical beamforming weight; and
if the current RF conditions are above the minimum threshold and below a maximum threshold, adjusting the phase component of the vertical beamforming weight and not adjusting the amplitude component of the vertical beamforming weight.

US Pat. No. 10,097,421

DATA SERVICE POLICY CONTROL BASED ON SOFTWARE DEFINED NETWORK (SDN) KEY PERFORMANCE INDICATORS (KPIS)

Sprint Communications Com...

1. A method of operating a Software Defined Network (SDN) in a Network Function Virtualization Infrastructure (NFVI) to serve an Internet Protocol (IP) data service, the method comprising:an NFVI computer system executing an SDN application Virtual Network Function (VNF) to direct the IP data service and to transfer SDN application VNF Key Performance Indicators (KPIs);
the NFVI computer system executing an SDN controller VNF to control the IP data service responsive to the SDN application VNF and to transfer SDN controller VNF KPIs wherein SDN data machines deliver the IP data service responsive to the SDN controller VNF;
the NFVI computer system executing a Network Function Virtualization (NFV) virtual Switch (vSW) to serve the IP data service and to transfer NFV vSW KPIs;
an NFV SDN server processing the SDN application VNF KPIs, the SDN controller VNF KPIs, and the NFV vSW KPIs to scale the SDN application VNF, to scale the SDN controller VNF, and to scale the NFV vSW.

US Pat. No. 10,038,491

PROXY MOBILE INTERNET PROTOCOL (PMIP) TUNNEL SELECTION BY A WIRELESS RELAY IN A DATA COMMUNICATION NETWORK

Sprint Communications Com...

1. A method of operating a wireless relay to serve User Equipment (UE) over a wireless Proxy Mobile Internet Protocol (PMIP) tunnel and a wireline PMIP tunnel, the method comprising:the wireless relay receiving a wireless network address for use over a wireless network and receiving a wireline network address for use over a wireline network;
the wireless relay receiving a bearer request transferred by a network controller that identifies a gateway network address and an Access Point Name (APN);
the wireless relay selecting one of the wireless network address and the wireline network address responsive to the bearer request, generating a PMIP update that indicates the APN and the selected one of the wireless network address and the wireline network address, and transferring the PMIP update to the gateway network address;
the wireless relay receiving a PMIP response indicating a Quality-of-Service Class Identifier (QCI); and
the wireless relay wirelessly exchanging user data with the UE and responsively exchanging the user data for the UE over the wireless PMIP tunnel based on the QCI if the wireless network address was selected and exchanging the user data for the UE over the wireline PMIP tunnel based on the QCI if the wireline network address was selected.

US Pat. No. 9,824,374

RADIO ACCESS NETWORK ADAPTIVE MOBILE ADVERTISEMENT DELIVERY

Sprint Communications Com...

1. A method of selecting and sequentially sending a plurality of types of advertisements to a mobile communication device,
the method comprising the following steps, all of which are performed by an ad gateway computer:
receiving a request for content from a mobile communication device, wherein the requested content comprises a first advertisement
slot and a second advertisement slot, the second advertisement slot being located within the requested content at a position
below the first advertisement slot such that the second advertisement slot is not initially displayed on the mobile communication
device when the requested content is presented on a display of the mobile communication device;

in response to receiving the request for content that comprises a first advertisement slot and second advertisement slot,
determining a current quality of service (QoS) level of a communication network based on latency, throughput, jitter, and
error rate that the communication network is experiencing, wherein the ad gateway computer is coupled to the communication
network;

determining a type of network connection by which the mobile communication device is coupled to the communication network;
determining a level of activity on the communication network corresponding to the type of network connection that couples
the mobile communication device to the communication network;

based on determining the current QoS, the network connection type, and the level of activity on the communication network,
determining that a first advertisement type can traverse the communication network and be delivered to the mobile communication
device prior to displaying the first advertisement slot but the second advertisement type cannot traverse the communication
network and be delivered to the mobile communication device prior to displaying the first advertisement slot due to the second
advertisement type consuming more bandwidth than the first advertisement type, wherein the second advertisement type corresponds
with a content size that has more bits than a content size corresponding to the first advertisement type, and wherein the
first advertisement type comprises a static image type and the second advertisement type comprises at least one of an animation
type, a video type, and a high definition video type;

based on determining that the first advertisement type can be delivered across the communication network prior to displaying
the first advertisement slot and the second advertisement type cannot, selecting, from an advertisement data store in communication
with the ad gateway computer, a first advertisement corresponding to the first advertisement type for filling the first advertisement
slot and a second advertisement corresponding to the second advertisement type for filling the second advertisement slot;

sending the first advertisement to the mobile communication device for filling the first advertisement slot; and
after sending the first advertisement to the mobile communication device, sending the second advertisement to the mobile communication
device such that the second advertisement slot is filled with the second advertisement before the second advertisement slot
is presented in the display of the mobile communication device and such that the second advertisement does not compete with
the first advertisement for bandwidth in the communication network during sending to the mobile communication device.

US Pat. No. 9,813,562

DUAL TONE MULTI-FREQUENCY TRANSCODING SERVER FOR USE BY MULTIPLE SESSION BORDER CONTROLLERS

Sprint Communications Com...

11. A communication system comprising:
a DTMF transcoding server;
a plurality of session border controllers each configured to receive communication packets transferred over communication
sessions between one or more source communication systems and one or more destination communication systems, process the communication
packets to detect Dual Tone Multi-Frequency (DTMF) signaling, and if the DTMF signaling is detected, then processing DTMF
information to determine if DTMF transcoding is required for the one or more destination communication systems, and if the
DTMF transcoding is required, then transferring DTMF transcoding instructions for delivery to the DTMF transcoding server,
the transcoding instructions comprising destination addresses of the one or more destination communication systems;

in the DTMF transcoding server, receiving and processing the DTMF transcoding instructions, and in response, transferring
transcoded DTMF signaling in Session Initiation Protocol (SIP) information messages from the DTMF transcoding server for delivery
to the one or more destination communication systems based on the destination addresses of the one or more destination communication
systems included in the transcoding instructions, the SIP information messages comprising source addresses indicating the
session border controllers.

US Pat. No. 9,781,016

DYNAMIC ADDITION OF NETWORK FUNCTION SERVICES

Sprint Communications Com...

1. A method of dynamically adding a communication service function using network function virtualization during a communication
session, the method comprising:
receiving, at a first communication service function executing on a server that comprises a processor, a communication during
a communication session on an active connection;

detecting, by the first communication service function, a communication service trigger in the communication;
determining a second communication service function based on the communication service trigger;
sending, by the first communication service function, a message to a network function virtualization catalog, wherein the
message comprises an identity of the second communication service function;

receiving, by the first communication service function, a response from the network function virtualization catalog, wherein
the response comprises an operating location and routing information for the second communication service function;

providing, by the first communication service function, the routing information to a software defined network controller,
wherein the software defined network controller sets a session routing protocol to include the second communication service
function in a communication flow for the communication session;

routing the communication from the first communication service function to the second communication service function;
processing the communication with the second communication service function; androuting the communication to an output.

US Pat. No. 9,747,295

UPDATING A LARGE DATASET IN AN ENTERPRISE COMPUTER SYSTEM

Sprint Communications Com...

1. A method for creating, by an application executing on a computer, an updated dataset from an existing dataset, the existing
dataset comprising a plurality of existing records, each existing record comprising a plurality of fields, at least one field
in the plurality of fields being a unique identifier field, the unique identifier field comprising a unique identifier, wherein
the existing dataset comprises records of user interactions with mobile communication devices, the method comprising:
adding, by a database management tool executing on a computer, a temporary field to each existing record in a dataset by adding
a new column, the temporary field containing a first value defined as a default value for the new column, wherein the database
management tool does not provide an application programming interface (API) function for updating individual fields of records,
and wherein the database management tool supports fast access to records in a targeted advertising system;

copying a subset of the records in the dataset, by an application executing on a computer;
changing, by the application, at least one individual field in each of the copied subset of records to update the records;
changing, by the application, the temporary field to a second value different from the first value in the copied subset of
records;

adding, by the database management tool, the subset of records to the dataset;
aggregating, by the database management tool, the dataset based on a selection criterion defined with reference to the temporary
field, wherein aggregating comprises identifying conflicts that comprise records that each have a unique identifier that is
the same, identifying a preferred record for each conflict based on the criterion and based on the temporary field values
of the conflicting records, and deleting records for each conflict that are not preferred;

deleting, by the database management tool, the temporary field from the records in the dataset, thereby creating an updated
dataset; and

periodically creating, by the application, an aggregated set of records based on the updated dataset, wherein each time the
aggregated set of records is created, the aggregated set of records is saved as a partition of the dataset, each partition
being saved for a multiple of a set period of time.

US Pat. No. 9,753,758

BUILDING OF VIRTUAL SERVERS IN A CLOUD VIA NON-STRUCTURED STRINGS

Sprint Communications Com...

1. A method for building virtual servers via non-structured strings, comprising:
obtaining, by a build server comprising a processor configured by an application, server design data having the non-structured
strings from a ticketing system via a network;

determining, by the build server, that the server design data fails to designate a primary virtual network interface controller
from a plurality of virtual network interface controllers;

in response to the determining, by the build server, that the server design data fails to designate the primary virtual network
interface controller, isolating, by the build server via the non-structured strings, an interface type parameter and an interface
alias parameter for each of the plurality of virtual network interface controllers;

generating, by the build server, an interface metric for the each of the plurality of virtual network interface controllers
responsive to determining the server design data fails to designate the primary virtual network interface controller; and

automatically determining, by the build server, the primary virtual network interface controller based on one of the interface
metrics corresponding to one of the plurality of virtual network interface controllers.

US Pat. No. 9,686,164

PACKET ALLOCATION SCHEMA FOR 3G AND 4G ROUTERS

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed by a computing device, perform a method of directing transmission of data comprising a plurality of data packets
over a plurality of wireless links using an allocation server, the method comprising:
receiving an indication of a first endpoint;
receiving an indication of a second endpoint;
receiving an indication from each of a plurality of wireless links communicatively coupling the first and second endpoints,
wherein the plurality of wireless links includes a first wireless link and a second wireless link;

monitoring data, by an allocation server, transmitted via each of the plurality of wireless links between the first and second
endpoints, wherein monitoring data further comprises monitoring one or more of the following:

an amount of jitter between the first and second endpoints,
an amount of packet loss between the first and second endpoints,
or
an amount of latency between the first and second endpoints;
based on monitoring the data, dividing, at a first multiplexer, the plurality of data packets between more than one of the
plurality of wireless links by directing a first portion of the plurality of data packets to a first wireless link and a second
portion of the plurality of data packets to a second wireless link as instructed by the allocation server, wherein an initial
sequence of the plurality of data packets for transmission between the first and second endpoints is altered by the dividing;
and

at a second multiplexer, reordering the plurality of data packets to the initial sequence prior to delivery to the first endpoint
or the second endpoint.

US Pat. No. 9,608,882

NETWORK EVENT TRACKING

Sprint Communications Com...

1. A computer-implemented method to generate network health snapshots, the method comprising:
receiving queries for network event data;
counting the frequency for the received queries;
generating network health snapshots that include the network event data for the queries that are received at a high frequency,
wherein the network health snapshots provide a graphical indication of a change in the number for network events; and

providing the network health snapshots for display to a client that issues queries similar to the received high frequency
queries.

US Pat. No. 9,590,938

SYSTEM AND METHOD FOR IDENTIFYING A MOBILE DEVICE WITH NEAR REAL TIME VISUALIZATION TO ACTION

Sprint Communications Com...

1. A message distribution system for distributing messages to qualified mobile devices, the system comprising:
an analytics system comprising at least one processor and at least one non-transitory memory, configured to:
receive and analyze raw data for a plurality of mobile devices gathered through interactions between each mobile device user
and a corresponding mobile device,

associate each mobile device of the plurality of mobile devices with one or more qualifiers based on the analysis of the raw
data for each mobile device, wherein the one or more qualifiers comprise at least one characteristic associated with at least
one of a mobile device, a mobile device user, or a mobile device owner,

identify, based on the analysis and the association, one or more mobile devices of the plurality of mobile devices that are
associated with at least one qualifier of the one or more qualifiers,

generate a list of one or more mobile devices based on the association with the at least one qualifier, and
transmit the list of one or more mobile device to a data visualization system;
the data visualization system comprising at least one processor and at least one non-transitory memory, configured to:
identify that one or more mobile devices from the list of one or more mobile devices is located at a selected geographic area,
transmit a list of one or more mobile devices located at the selected geographic area and associated with the at least one
qualifier, and

generate a graphical image of the one or more mobile devices located at the selected geographic area and associated with the
at least one qualifier; and

a common campaign system comprising at least one processor and at least one non-transitory memory, configured to:
transmit the at least one qualifier to at least the analytics system to identify the one or more mobile devices associated
with the at least one qualifier,

receive the list of one or more mobile devices located at the selected geographic area and associated with the at least one
qualifier, and

send a message to the one or more mobile devices on the list of one or more mobile devices located at the selected geographic
area and associated with the at least one qualifier.

US Pat. No. 9,591,482

METHOD FOR AUTHENTICATING DRIVER FOR REGISTRATION OF IN-VEHICLE TELEMATICS UNIT

Sprint Communications Com...

1. A method of registering a vehicle telematics unit for telematics services, comprising:
contacting, by a mobile communication device of a subscriber, a mobile network operator to request to register a telematics
unit of a vehicle for telematics services;

in response to the request to register the telematics unit for telematics services:
providing, by the mobile communication device, a vehicle identification number (VIN) of the vehicle that the telematics unit
is associated with;

identifying an unpublished phone number of the telematics unit based on the VIN of the vehicle by a computer of the mobile
network operator;

in response to identification of the unpublished phone number based on the VIN, sending an electronic message via a data communication
link to the telematics unit to remove incoming voice call blocking of the unpublished phone number of the telematics unit
by a computer of a mobile communication network, wherein voice call blocking prevents incoming voice calls from being completed
to the telematics unit;

in response to removal of voice call blocking, placing a voice call to the unpublished phone number of the telematics unit
by the mobile network operator;

validating the subscriber by the mobile network operator, wherein validation is implied by a powered-on state of the telematics
unit;

engaging in a dialog with the subscriber associated with the vehicle by the mobile network operator, wherein registration
of the telematics unit for telematics services is completed based on the dialog with the subscriber; and

after completing registration for the telematics services, sending an electronic message via a data communication link to
the telematics unit to reestablish voice call blocking of the telematics unit of the vehicle by the mobile communication network.

US Pat. No. 9,558,060

END USE SELF-HELP DELIVERY SYSTEM

Sprint Communications Com...

1. A self-repairing enterprise workstation that selects a workstation repair script based on a currently experienced workstation
problem, retrieves the workstation repair script from a repair script repository, and executes the retrieved repair script
in a user context of the self-repairing enterprise workstation to repair the problem, the self-repairing enterprise workstation
comprising:
a processor,
a non-transitory memory,
a web browser application stored in the non-transitory memory that, when executed by the processor,
receives a selection of a custom uniform resource locator (URL) moniker presented in a web page, and
in response to selection of the custom URL, triggers an operating system of the self-repairing enterprise workstation to launch
an automated computer repair application, and

the automated computer repair application stored in the non-transitory memory, that when launched by the operating system
of the self-repairing enterprise workstation in response to the receipt of the selection of the custom URL moniker,

downloads a script that is identified by the custom URL moniker from a repair script repository, wherein the repair script
repository stores a plurality of repair scripts,

stores the script in a process memory space of the automated computer repair application in volatile memory,
executes the script in a user context of the automated computer repair application,
repairs a problem experienced by the self-repairing enterprise workstation,
captures the results of the script execution,
packages the results in a report,
sends the report to an external server, wherein the external server parses the report so that it is user readable as a fix
outcome message,

receives the fix outcome message from the external server, and
presents the fix outcome message on a display coupled to the self-repairing enterprise workstation, wherein the fix outcome
message details what was accomplished by the automated computer repair application.

US Pat. No. 9,483,538

TWO-WAY DATA SHARING BETWEEN DISPARATE DATA STORES

Sprint Communications Com...

1. A system for data sharing, comprising:
a computer system comprising a ticket management application for managing ticket information associated with tickets related
to an enterprise business workflow, wherein the ticket management application comprises a link to an asset bridging data structure,
and wherein the asset bridging data structure is stored in an asset data store;

a ticket data store coupled to the ticket management application and comprising a ticket bridging data structure, a mirrored
ticket bridging data structure, and a plurality of ticket data structures;

a ticket bridging data structure mirroring script that identifies changes in the ticket bridging data structure and copies
those changes to the mirrored ticket bridging data structure;

at least one mirrored ticket bridging data structure parsing script that parses entries in the mirrored ticket bridging data
structure into a plurality of attributes of a ticket and writes these attributes into the plurality of ticket data structures;

a computer system comprising an asset management application for managing asset information, wherein the asset information
comprises a plurality of attributes associated with each asset, wherein the asset management application comprises a link
to the ticket bridging data structure, and wherein the asset management application is separate and distinct from the ticket
management application;

the asset data store comprising the asset bridging data structure, a mirrored asset bridging data structure, and a plurality
of asset data structures;

an asset bridging data structure mirroring script that identifies changes in the asset bridging data structure and copies
those changes to the mirrored asset bridging data structure; and

at least one mirrored asset bridging data structure parsing script that parses entries in the mirrored asset bridging data
structure into a plurality of attributes of an asset and writes these attributes into the plurality of asset data structures,

wherein the ticket management application controls the asset bridging data structure in the asset data store and the mirrored
ticket bridging data structure in the ticket data store and shares the ticket information from the ticket data store that
is at least partially associated with the asset information to the asset management application by writing into the asset
bridging data structure of the asset data store based on the link to the asset bridging data structure, and

wherein the asset management application controls the ticket bridging data structure in the ticket data store and the mirrored
asset bridging data structure in the asset data store and shares the asset information from the asset data store that is at
least partially associated with the ticket information to the ticket management application by writing into the ticket bridging
data structure of the ticket data store based on the link to the ticket bridging data structure.

US Pat. No. 9,466,052

APPLICATION DEVELOPMENT AND EXECUTION FRAMEWORK

Sprint Communications Com...

1. An application repository, comprising:
a data store device;
a plurality of applications stored in the data store device, each application containing an instruction to invoke a run-time
license tracking application programming interface (API), the plurality of applications comprising a first application that
is a first tier application and a second application that is a second tier application, wherein the first tier application
is an application that is selectable by an end user to deploy on an electronic device and the second tier application is an
application that is embedded within or called from the first tier application;

a first computer communicatively coupled to the data store device, the first computer comprising:
a processor;
a non-transitory memory;
a discovery application stored in the non-transitory memory that, when executed by the processor configures at least the processor
to, provide an API that promotes developers researching the capabilities of the plurality of the applications stored in the
data store device and building applications composed of one or more of the plurality of applications; and

a billing apportionment module stored in the non-transitory memory that, when executed by the processor configures at least
the processor to:

receive a first run-time license tracking report generated by invocation of the run-time license tracking API by the first
application executing on one of a second computer and a mobile electronic device, wherein the first run-time license tracking
report identifies the first application as the first tier application,

determine a first application usage fee to bill to an account associated with a user of the first application,
bill the first application usage fee to the account associated with the user of the first application,
determine a first usage fee share based in part on the first application usage fee and on the first run-time tracking report,
transfer the first usage fee share to an account associated with the first application,
receive a second run-time license tracking report generated by invocation of the run-time license tracking API by the second
application executing on one of the second computer and the mobile electronic device, wherein the second run-time license
tracking report identifies the second application as the second tier application, and wherein the first usage fee share is
further determined based in part on the second run-time tracking report,

determine a second usage fee share based in part on the first application usage fee, on the first run-time tracking report,
and on the second run-time tracking report, and

transfer the second usage fee share to an account associated with the second application, wherein the second application further
functions as the first tier application when deployed by the end user for stand-alone execution.

US Pat. No. 9,444,533

METHOD TO IMPROVE MULTIPLE USER MULTIPLE INPUT MULTIPLE OUTPUT PAIRING IN A NETWORK

Sprint Communications Com...

1. A method for providing MU-MIMO pairings in a network, the method comprising:
receiving a first signal providing a first location of a first mobile handset that communicates with a first transmitting
and receiving component serving a first sector of a base station;

receiving a second signal providing a second location of a second mobile handset that communicates with a second transmitting
and receiving component serving a second sector of the base station that is distinct from the first sector, wherein the first
and second sectors provide different sections of at least a portion of a broadcast arc from the base station;

determining, by a central processing unit, from the first and the second locations if the first mobile handset and the second
mobile handset are transmitting to the base station from an angle of separation that is at least 90 degrees across the first
and second sectors, wherein the central processing unit controls mobile handset pairing across the first and second transmitting
and receiving components of the respective first and second sectors; and

upon determining that the first mobile handset and the second mobile handset are transmitting to the base station from an
angle of separation that is at least 90 degrees across the first and second sectors, pairing the first and second mobile handsets
for MU-MIMO uplink transmission with a common one of the first or the second transmitting and receiving components of the
base station.

US Pat. No. 9,444,892

NETWORK EVENT MANAGEMENT SUPPORT FOR VEHICLE WIRELESS COMMUNICATION

Sprint Communications Com...

1. A method of communicating with telematics units in vehicles by a communication hub in a wireless communication service
provider network that maintains communication state information about a plurality of telematics units, wherein the telematics
unit communication states comprise an on-line state, an off-line state, and an off-line and out-of-wireless coverage state,
comprising:
receiving a content message directed to a telematics unit by an event manager application executing on a server computer,
wherein the telematics unit is an electronic device comprising a wireless communication transceiver and integrated into a
motor vehicle;

determining by the event manager application that the content message is a high priority message type;
determining by the event manager application that the telematics unit is off-line and out-of-wireless-coverage; and
responsive to determining that the content message is a high priority message type and to determining that the telematics
unit is off-line and out-of-wireless-coverage, sending by the event manager application a wake-up message to the telematics
unit,

wherein the telematics unit, responsive to receiving the wake-up message, establishes a roaming data wireless communication
link and receives the content message via the roaming data wireless communication link.

US Pat. No. 9,432,310

CIRCUIT SWITCHED FALLBACK FAILURE HANDLING IN WIRELESS COMMUNICATION NETWORKS

Sprint Communications Com...

1. A method of operating a control node of a wireless communication system, where a wireless communication device is initially
configured to use circuit switch fallback (CSFB) services over a first wireless communication network, the method comprising:
detecting CSFB failure by at least monitoring performance of a CSBF link between the first wireless communication network
and a second wireless communication network that routes voice call signaling over the CSBF link for the wireless communication
device;

responsive to the CSFB failure, informing at least the wireless communication device of the CSFB failure, informing a home
location register (HLR) in the second wireless communication network of the CSFB failure, and informing the HLR to process
incoming voice calls with a treatment service having a voicemail timeout delay; and

responsive to the CSFB failure, routing further incoming voice call signaling for the wireless communication device using
the second wireless communication network instead of the CSFB link.

US Pat. No. 9,407,769

PROVIDING A CUSTOMIZED VOICEMAIL-RETRIEVAL ANNOUNCEMENT

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed, cause a voicemail server to perform a method of presenting a custom greeting to a user who retrieves a voicemail
that was left by a caller, the method comprising:
employing a voicemail server to store a voicemail left by a caller for an intended target recipient;
automatically retrieving a user-specific name based on an identifier that is associated with a calling device used to leave
the voicemail, wherein the user-specific name is defined by the target recipient and stored in an address book application
of the target recipient's communication device such that the address book application searches for a match with the identifier:

upon locating the user-specific name, transmits the user-specific name to the voicemail server, but
when a match is not found, providing an indication that the identifier is not in the address book of the target recipient;
and

storing the user-specific name or the indication such that it is presentable to a retriever incident to a request to retrieve
the voicemail, wherein the retriever is the target recipient and the user-specific name or indication is annunciated before
rendering the voicemail.

US Pat. No. 9,368,037

SYSTEM AND METHOD OF STATEFUL APPLICATION PROGRAMMING INTERFACE (API) TRAINING

Sprint Communications Com...

1. A method of setting states for training scenarios for use during the training of students in use of a telecommunication
service provider customer-facing application, comprising:
receiving, by an application from a messaging layer in communication with a network, a first plurality of messages from a
first instance of use of a student user interface, wherein the messaging layer provides a communication link between the student
user interface in communication with the network and a retail management system in communication with the network, and wherein
each message of the first plurality of messages from the first instance of use of the student user interface invokes an application
programming interface method of a plurality of different application programming interface methods;

associating, by the application, each message from the first instance of the student user interface to a first student and
to a first training scenario of a plurality of training scenarios, wherein each training scenario of the plurality of training
scenarios is defined by a predefined sequence of application programming interface method calls of a provisioning task, a
plurality of checkpoints that are activated when a specified sub-sequence of application programming interface method calls
associated with the provisioning task are completed in the predefined sequence, and a termination event for the provisioning
task, wherein the provisioning task comprises provisioning a telecommunication service, and wherein each checkpoint of the
plurality of checkpoints is defined by a predefined plurality of application programming interface method calls that are completed
in the predefined sequence;

receiving, by the application, a second plurality of messages from a second instance of use of the student user interface,
wherein each message of the second plurality of messages invokes one of the plurality of different application programming
interface methods;

associating, by the application, each message from the second instance of use of the student user interface to a second student
and to a second training scenario of the plurality of training scenarios, and wherein the second training scenario is different
from the first training scenario;

maintaining, by the application, based on the first plurality of messages, a state of the first training scenario, wherein
maintaining the state of the first training scenario comprises maintaining a first list of invocations of application programming
interface methods and maintaining a first list of checkpoints that have been completed by the first student;

maintaining, by the application, based on the second plurality of messages, a state of the second training scenario, wherein
maintaining the state of the second training scenario comprises maintaining a second list of invocations of application programming
interface methods and maintaining a second list of checkpoints that have been completed by the second student;

returning, by the application, based on completion of a checkpoint of the first training scenario, particularized updated
information to the first instance of use of the student user interface; and

returning, by the application, based on completion of a checkpoint of the second training scenario, particularized updated
information to the second instance of use of the student user interface.

US Pat. No. 9,326,188

MITIGATING INTERFERENCE USING BEAMFORMING

Sprint Communications Com...

1. One or more non-transitory computer-readable storage media having computer-executable instructions embodied thereon that,
when executed, perform a method for facilitating mitigation of interference using beamforming, the method comprising:
utilizing interference periodicity and interference duration associated with interference of a radar beam to determine an
extent of time during which one or more lobes of a communication tower are to be modified in power, direction, or a combination
thereof;

upon an occurrence of the extent of time, modifying at least one of the one or more lobes of the communication tower in power,
direction, or a combination thereof so that the at least one of the one or more lobes does not interfere with a radar beam
emitted from a radar remote from the communication tower.

US Pat. No. 9,215,572

MOBILE DEVICE ALTERNATIVE TEXT MESSAGING

Sprint Communications Com...

15. A mobile device system for alternative text messaging, comprising:
a processor on a mobile device, wherein the mobile device has a primary directory number and an auxiliary directory number
associated with a single subscriber identity module;

a transceiver for sending and receiving messages;
a non-transitory memory on the mobile device; and
a messaging component, stored in the non-transitory memory, that upon execution by the processor, configures the processor
to:

receive a first text message via the primary directory number associated with the mobile device,
send a first response text message from the mobile device via the primary directory number,
receive a second text message via the auxiliary directory number associated with the mobile device, wherein the auxiliary
directory number is a mobile phone number that is a ten digit number, a wireless service provider associated with the mobile
device does not route voice calls to the auxiliary directory number and only routes text messages to the auxiliary directory
number, and the auxiliary directory number is associated with only the single subscriber identity module of the mobile device,

send a second response text message from the auxiliary directory number associated with the mobile device,
disable receipt of subsequent text messages at the auxiliary directory number based on a deletion of the association between
the auxiliary directory number and the mobile device,

associate a second auxiliary directory number that is different than the auxiliary directory number with the mobile device,
receive a third text message via the second auxiliary directory number associated with the mobile device, and
send a third response text message from the mobile device via the second auxiliary directory number.

US Pat. No. 9,136,957

MOBILE DEVICE ACTIVATION FOR EVENTS

Sprint Communications Com...

1. A mobile device activation method, comprising:
scanning a mobile device for an identifier of the mobile device for activation of the mobile device to receive a local broadcast
of an event;

adding the identifier for the mobile device to an activation list comprising a plurality of identifiers for mobile devices
subscribed for the event;

providing the activation list to a broadcaster, wherein the broadcaster locally broadcasts the event and the activation list
with the event to local mobile devices such that each of the local mobile devices receives the activation list comprising
the plurality of identifiers and each of the local mobile devices that detects their identifier on the activation list activates
for the event;

checking a physical identifier for the mobile device against a deactivation list of physical identifiers;
removing the identifier for the mobile device from the activation list for the event when a match of the identifier is found
in the deactivation list; and

providing the activation list without the identifier to the broadcaster, wherein the broadcaster locally broadcasts the activation
list without the identifier to local mobile devices to deactivate the mobile device having the identifier that was removed
from the activation list for the event.

US Pat. No. 9,092,397

DEVELOPMENT SERVER WITH HOT STANDBY CAPABILITIES

Sprint Communications Com...

1. A method for managing a database, the method comprising:
causing a standby server to provide a development platform for the database, wherein the standby server comprises a first
interface and a second interface;

mimicking, on the second interface of the standby server, an authenticating media access control (MAC) address of a primary
server;

causing the primary server to transfer data to the standby server in order to provide a backup of the data on the standby
server;

determining that the primary server is not able to perform one or more functions;
in response to determining that the primary server is not able to perform the one or more functions, provisioning the standby
server, to perform the one or more functions over the first interface using an actual MAC address that is different from the
authenticating MAC address; and

after provisioning the standby server, causing the standby server to perform the one or more functions over the first interface
using the actual MAC address, wherein the one or more functions are verified via the mimicked authenticating MAC address.

US Pat. No. 9,087,038

MESSAGING WITH SHORTCUT CHARACTER STRINGS

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed, perform a method for processing a message, the method comprising:
receiving, at a second device, a message from a first device, the message comprising an encoded first plurality of characters,
wherein the encoded first plurality of characters are encoded based at least in part on a character code set of the first
device;

decoding, at the second device, the encoded first plurality of characters according to the character code set of the first
device associated with a shortcut dictionary associated with the first device, wherein the shortcut dictionary comprises at
least one shortcut character string having at least one character that is unavailable for entry via the first device keyboard
having an ASCII character set, wherein decoding the encoded first plurality of characters comprises:

referencing the shortcut dictionary that is dynamically updated based on one or more criteria in response to a predetermined
number of a plurality sent and received messages, wherein dynamically updating the shortcut dictionary is based on:

(1) analyzing at, at least one of, the first device and the second device, the plurality of sent and received messages between
the first device and the second device;

(2) identifying one or more series of consecutive characters included in the sent and received messages; and
(3) associating the at least one identified series of consecutive characters with a shortcut character string having at least
one character that is unavailable for entry via a standard device keyboard in the shortcut dictionary, the shortcut character
string containing fewer characters than the associated identified series of consecutive characters;

identifying at least one shortcut character string in the encoded first plurality of characters in the message based on the
shortcut dictionary associated with the character code set of the first device;

replacing, based on the shortcut dictionary, each identified shortcut character string with an associated series of consecutive
characters to form a second plurality of characters containing more characters than the encoded first plurality of characters;
and

displaying the second plurality of characters.

US Pat. No. 10,630,395

AUTOMATED MITIGATION OF ATMOSPHERIC-BASED INTERFERENCE EVENTS

Sprint Communications Com...

1. A system comprising:a first base station comprising a first antenna;
a first antenna adjusting component, the first antenna adjusting component configured to adjust a vertical tilt of the first antenna;
a second antenna;
a second antenna adjusting component, the second antenna adjusting component configured to adjust the second antenna; and
a processor, the processor configured to perform operations comprising:
determining that a meteorologic condition is likely to occur and that a first beamform comprising an RF signal, radiated by the first antenna in a first orientation, is likely to be propagated by the meteorologic condition beyond a predetermined range;
in response to the determination, automatically adjusting, using the first antenna adjusting component, the first antenna to a second orientation to reduce a likelihood of the first beamform being propagated by the meteorologic condition beyond the predetermined range;
determining that a coverage gap is created as a result of the automatic adjustment of the first antenna; and
automatically adjusting, using the second antenna adjusting component, the second antenna to a third orientation, wherein a second beamform radiated by the second antenna recaptures at least a portion of the coverage gap.

US Pat. No. 10,536,373

SESSION AGGREGATOR BROKERING OF DATA STREAM COMMUNICATION

Sprint Communications Com...

1. A method of providing streamed data sessions over the Internet, comprising:collecting a set of data communication performance metrics at a first time by an orchestrator virtualized network function (VNF) on a first plurality of routers associated with a first data network service provider and on a second plurality of routers associated with a second data network service provider, where the first data network service provider is different from the second data network service provider, where the orchestrator VNF is provided by execution on a virtual computing platform;
receiving a request for a streamed data session by the orchestrator VNF from a customer premises equipment (CPE) node, where the request identifies a service level agreement (SLA) to be supported by the streamed data session;
analyzing the set of data communication performance metrics based on the SLA identification in the request;
determining a first routing path in a first data network associated with the first plurality of routers and the CPE node by the orchestrator VNF based on the analyzing;
creating by the orchestrator VNF a first routing instruction set that defines the first routing path;
determining a second routing path in a second data network associated with the second plurality of routers by the orchestrator VNF based on the analyzing;
creating by the orchestrator VNF a second routing instruction set that defines the second routing path;
transmitting the first routing instruction set by the orchestrator VNF to a first session aggregator node associated with the first data network;
configuring at least some of the first plurality of routers by the first session aggregator node in accordance with the first routing instruction set;
transmitting the second routing instruction set by the orchestrator VNF to a second session aggregator node associated with the second data network; and
configuring at least some of the second plurality of routers by the second session aggregator node in accordance with the second routing instruction set, wherein the streamed data session is dynamically defined and initiated that crosses two different data networks without the use of a network-to-network interface (NNI) between the two different data networks.

US Pat. No. 10,368,243

SYSTEM AND METHOD FOR AUTHENTICATION AND SHARING OF SUBSCRIBER DATA

Sprint Communications Com...

1. A method of authenticating a wireless communication service subscriber, comprising:receiving, by a subscriber authentication server, a first request to transfer a first confidential subscriber information package associated with a first subscriber from a first wireless communication service provider to a second wireless communication service provider, where the first subscriber previously received wireless communication service from the first wireless communication service provider and has transferred service to receive wireless communication service from the second wireless communication service provider and where the second wireless communication service provider sends the first request to the subscriber authentication server, wherein the first confidential subscriber information package comprises a personal identification number (PIN) of the first subscriber and at least one answer of the first subscriber to a security question;
responsive to the first request, sending, by the subscriber authentication server, a first confidential subscriber information package transfer request to the first wireless communication service provider, wherein the first transfer request identifies the second wireless communication service provider; and
verifying, via one of the first wireless communication service provider and second wireless communication service provider, authorization by the first subscriber to transfer the first confidential subscriber information package, the verifying authorization by the first subscriber to transfer the first confidential subscriber information package comprising:
receiving, via one of the first wireless communication service provider and second wireless communication service provider, a request for authentication of the first subscriber, wherein the request for authentication of the first subscriber comprises a telephone number associated with the first subscriber and a subscriber name of the first subscriber;
verifying, via one of the first wireless communication service provider and second wireless communication service provider, correspondence between the telephone number associated with the first subscriber and the subscriber name of the first subscriber;
responsive to verifying correspondence between the telephone number associated with the first subscriber and the subscriber name of the first subscriber, transmitting, by the subscriber authentication server to a first user equipment associated with the first subscriber, a request for verification of approval to transfer the first confidential subscriber information package from the first wireless communication service provider to the second wireless communication service provider, wherein the verification of approval to transfer the first confidential subscriber information package comprises;
querying the first subscriber for personal identification information;
receiving the personal identification information entered via the first user equipment associated with the first subscriber; and
comparing the entered personal identification information to the PIN of the first subscriber, wherein authorization by the first subscriber to transfer the first confidential information package is verified based at least in part on the received personal identification information matching the PIN of the first subscriber.

US Pat. No. 10,200,855

WIRELESS COMMUNICATION SYSTEM FOR ADAPTIVE MULTIPLE-INPUT MULTIPLE-OUTPUT (MIMO) TRANSMISSION MODES

Sprint Communications Com...

1. A method for adaptive multiple-input multiple-output (MIMO) transmission modes (TMs) in wireless networks, the method comprising:receiving an attachment request from a User Equipment (UE);
retrieving a Subscriber Profile ID (SPID) for the UE and qualifying the UE for an enhanced MIMO TM based on the SPID;
if the UE qualifies, then determining if the UE is capable of the enhanced MIMO TM;
if the UE is capable of the enhanced MIMO TM, then assigning the UE to the enhanced MIMO TM;
receiving a Rank Indicator (RI) from the UE in enhanced MIMO TM, and if the RI is less than a RI threshold, then assigning the UE to a lower MIMO TM, wherein the lower MIMO TM comprises at least one of MIMO TM3 and MIMO TM4.

US Pat. No. 10,116,646

SOFTWARE-DEFINED NETWORK THREAT CONTROL

Sprint Communications Com...

1. A method of operating a Software-Defined Network (SDN) data-plane machine that stores flow data and a physically-embedded, read-only, hardware-trust key, the method comprising:a southbound transceiver receiving hardware-trust challenge data transferred by a hardware-trust controller;
a data processing system processing the hardware-trust challenge data based on the physically-embedded, read-only, hardware-trust key to generate hardware-trust response data;
the southbound transceiver transferring the hardware-trust response data for delivery to the hardware-trust controller;
a user data transceiver receiving user data;
the data processing system directing the user data transceiver to route the user data based on the flow data;
the user data transceiver routing the user data responsive to the direction from the data processing system;
the southbound transceiver receiving modification data from an SDN controller;
the data processing system determining that the SDN controller is authorized by the hardware-trust controller to modify the flow data and modifying the flow data based on the modification data responsive to the authorization from the hardware-trust controller;
the southbound transceiver receiving other modification data from another SDN controller;
the data processing system determining that the other SDN controller is not authorized by the hardware-trust controller to modify the flow data and responsively generating flow modification failure data for the other SDN controller; and
the southbound transceiver transferring the flow modification failure data for the other SDN controller for delivery to the hardware-trust controller.

US Pat. No. 10,069,957

TOKEN BASED CONTENT DISTRIBUTION TO WIRELESS COMMUNICATION DEVICES

Sprint Communications Com...

1. A mobile communication device, comprising:a processor;
a non-transitory memory;
a mobile application stored in the non-transitory memory that, when executed by the processor, requests content to be rendered; and
a content presentation mediation application stored in the non-transitory memory and comprising logic provided by a primary software development kit (SDK), logic provided by a secondary SDK embedded in the primary SDK, and logic provided by a second secondary SDK embedded in the primary SDK, that, when executed by the processor:
receives a request by the primary SDK from the mobile application for content to be rendered,
transmits a request by the primary SKD for content to a content bidding exchange,
receives a winning content bid by the primary SDK from the content bidding exchange,
determines by the primary SDK that the winning content comprises a content token,
transmits a request for content by the secondary SDK comprising the content token to a content server, where an address of the content server is predefined in the secondary SDK,
receives content by the secondary SDK from the content server,
renders the content received from the content server by the secondary SKD according to rendering logic provided by the secondary SDK,
receives a second request for content by the primary SDK,
transmits the second request for content by the primary SDK to the content bidding exchange,
receives a second winning content bid by the primary SDK from the content bidding exchange,
determines by the primary SDK that the winning content bid comprises a second content token associated with the second secondary SDK,
transmits a request for content by the second secondary SDK to a second content server, where an address of the second content server is predefined in the second secondary SDK,
receives content by the second secondary SDK from the second content server, and
renders the content received from the second content server by the second secondary SDK according to rendering logic provided by the second secondary SDK.

US Pat. No. 10,055,578

SECURE SOFTWARE CONTAINERS

Sprint Communications Com...

1. A method of providing an execution environment with a software container, each step of the method performed by a system application executing on a first computer system, the method comprising:receiving a request for a software container, where the request for the software container is received from a second computer system, where the second computer system is different from the first computer system;
creating a software container comprising a container security token, where the token comprises a signature of the software container and an identity of an application to be executed in the software container;
sending the software container comprising the container security token to the second computer system;
receiving a request from the second computer system to launch an application in the software container, wherein the request comprises the software container and identifies the application in the software container;
determining a confirmation signature of the identified software container;
comparing the confirmation signature to the signature in the container security token;
comparing the application identity provided in the request to launch the application in the software container to the application identity in the container security token; and
in response to determining that the confirmation signature matches the signature in the container security token and to determining that the application identity provided in the request to launch the application matches the application identity in the container security token, launching execution of the application in the software container on the second computer system.

US Pat. No. 10,051,548

WIRELESS RELAY TO CONTROL WIRELESS SIGNAL SCANNING BASED ON REATTACHMENT ATTRIBUTES

Sprint Communications Com...

1. A method of operating a wireless relay to control wireless scanning in a wireless data communication network, the method comprising:the wireless relay performing a 360-degree wireless signal scan for one or more wireless access points;
the wireless relay attaching to a source wireless access point responsive to the wireless signal scan;
the wireless relay reporting results from the wireless signal scan to a relay information server responsive to the attachment;
the wireless relay receiving attachment data from the relay information server responsive to the reporting;
the wireless relay losing connectivity to the source wireless access point;
the wireless relay determining reattachment attributes based on the attachment data; and
the wireless relay performing another wireless signal scan based on the reattachment attributes, wherein the reattachment attributes comprise at least one wireless access point to avoid.

US Pat. No. 10,039,146

GENERAL PACKET RADIO SERVICE TUNNELING PROTOCOL MULTIPLEXING

Sprint Communications Com...

1. A method of operating a communication system to enhance data communications between a wireless relay node and a wireless network gateway, the method comprising:in the wireless relay node, wirelessly receiving first data packets from first wireless communication devices, generating first GPRS Tunneling Protocol (GTP) packets for the first data packets, and wirelessly transferring the first GTP packets that transport the first data packets to a wireless access node;
in the wireless access node, wirelessly receiving the first GTP packets that transport the first data packets from the wireless relay node,
generating a wrapper for the first GTP packets responsive to use of the wireless relay node, wherein the wrapper comprises metadata to multiplex the first GTP packets in a user datagram protocol (UDP) packet, and transferring the UDP packet to a wireless relay gateway, wherein the UDP packet transports the wrapper and the first GTP packets that transport the first data packets;
in the wireless relay gateway, receiving the UDP packet and
separating the first GTP packets from the UDP packet based at least on the wrapper;
in the wireless relay gateway, transferring the first GTP packets that transport the first data packets to the wireless network gateway;
in the wireless access node, wirelessly receiving second data packets from second wireless communication devices, generating second GTP packets for the second data packets, and transferring the second GTP packets that transport the second data packets to the wireless network gateway; and
in the wireless network gateway, receiving the first GTP packets that transport the first data packets, receiving the second GTP packets that transport the second data packets, separating the first data packets from the first GTP packets, separating the second data packets from the second GTP packets, and transferring the first data packets and the second data packets from the wireless network gateway.

US Pat. No. 9,986,513

DEVICE TO-DEVICE (D2D) TRANSMISSION POWER CONTROL

Sprint Communications Com...

1. A method of operating a wireless access point to dynamically control Device-to-Device (D2D) transmission power, the method comprising:wirelessly exchanging wireless communications with a plurality of User Equipment (UEs) comprising Device-to-Base Station (D2BS) UEs and D2D UEs;
determining geographical locations for each of the D2BS UEs and the D2D UEs and processing the geographical locations for each of the D2BS UEs and the D2D UEs with a neighbor distance threshold to identify which of the D2BS UEs neighbors the D2D UEs and which of the D2BS UEs do not neighbor the D2D UEs;
monitoring a Radio Frequency (RF) interference for each of the neighbor D2BS UEs and the non-neighbor D2BS UEs, identifying a subset of the non-neighbor D2BS UEs having the RF interference within a threshold range of the neighbor D2BS UEs, and determining that a difference between the RF interference for each of the neighbor D2BS UEs and the subset of the non-neighbor D2BS UEs is above an RF interference threshold; and
wirelessly transmitting an instruction to the D2D UEs neighboring the neighbor D2BS UEs to decrease a transmission power amount.

US Pat. No. 9,949,198

LONG TERM EVOLUTION COMMUNICATION SYSTEM TO PERFORM A MOBILITY MANAGEMENT ENTITY RESELECTION

Sprint Communications Com...

1. A method of operating a wireless communication system to connect User Equipment (UE) to Mobility Management Entities (MMEs), the method comprising:receiving a connection message from the UE that indicates one of a Voice over Long Term Evolution (VoLTE) service and an interactive gaming service;
connecting the UE to an initial MME responsive to the connection message;
when the VoLTE service indication is in the connection message, performing MME re-selection for the UE responsive to the VoLTE service indication in the connection message and connecting the UE to a VoLTE MME for the VoLTE service; and
when the interactive gaming service indication is in the connection message, performing MME re-selection for the UE responsive to the interactive gaming service indication in the connection message and connecting the UE to an interactive gaming MME for the interactive gaming service.

US Pat. No. 9,807,664

WIRELESS COMMUNICATION SYSTEM TO OPTIMIZE DEVICE PERFORMANCE ACROSS WIRELESS COMMUNICATION NETWORKS

Sprint Communications Com...

1. A method of operating a communication system, the method comprising:
in a first wireless communication network, exchanging first wireless communications with a wireless communication device for
a communication session and determining first performance metrics for the communication session on the first wireless communication
network;

transferring the communication session from the first wireless communication network to a second wireless communication network;
in the second wireless communication network after the communication session transfer, exchanging second wireless communications
with the wireless communication device for the communication session and determining second performance metrics for the communication
session on the second wireless communication network;

in a control processing system, performing a comparison of the first performance metrics with the second performance metrics,
and if the comparison indicates a lower Quality of Service (QoS) for the communication session on the second wireless communication
network compared to the first wireless communication network, then determining configuration instructions to improve the QoS
for the communication session on the second wireless communication network and transferring the configuration instructions
for delivery to the second wireless communication network;

in the second wireless communication network, receiving the configuration instructions and responsively modifying a network
configuration, exchanging third wireless communications with the wireless communication device for the communication session
and determining third performance metrics for the communication session on the second wireless communication network; and

in the control processing system, comparing the first performance metrics with the third performance metrics to determine
a user notice related to session quality on the second wireless communication network and transferring the user notice for
delivery to the wireless communication device.

US Pat. No. 9,749,238

APPLICATION LABELS FOR DATA COMMUNICATION

Sprint Communications Com...

1. A communication device comprising:
a processing system configured to execute multiple applications that generate application data and determine application labels
that individually identify the executing applications;

a layer three communication interface configured to insert the application data in layer three communication payloads and
insert the application labels in layer three communication headers to individually associate the executing applications with
their layer three communication headers and their application data; and

a layer two communication interface configured to insert the layer three communication headers and the layer three communication
payloads in layer two communication payloads transfer the layer two communication payloads with layer two headers.

US Pat. No. 9,774,674

RECONCILING CONTACT INFORMATION BETWEEN USERS

Sprint Communications Com...

1. Non-transitory computer-readable media having computer-executable instructions embodied thereon that, when executed, facilitate
a method of reconciling information contained in a first set of contacts on a first mobile device associated with a first
user with a second set of contacts on a second mobile device associated with a second user in response to an event associated
with the first mobile device, the method comprising:
receiving an indication of an occurrence of an update event associated with the first mobile device;
updating a remotely-stored copy of the first set of contacts based on the update event;
accessing a remotely-stored copy of the second set of contacts;
determining that the remotely-stored copy of the second set of contacts needs to be updated based on the update event;
updating the remotely-stored copy of the second set of contacts based on the update event; and
synchronizing the second set of contacts on the second mobile device with the updated remotely-stored copy of the second set
of contacts such that the second set of contacts on the second mobile device is updated based on the update event.

US Pat. No. 9,712,483

AUTOMATED CHECK FOR SIMPLE MAIL TRANSFER PROTOCOL EMAIL DELAYS

Sprint Communications Com...

1. A system for automated monitoring simple mail transfer protocol (SMTP) email delays, comprising:
a data store that stores message identifiers for sent emails;
a first monitoring server, comprising:
a processor,
a non-transitory memory, and
an application stored in the memory that, when executed by the processor:
builds a test email with a message identifier in a header of the test email,
creates an entry with the message identifier in the data store,
controls an outgoing route of the test email through a plurality of internal email servers of an internal email system within
an internal network of an enterprise, wherein the outgoing route of the test email through the plurality of internal email
servers is determined by the application based on a priority list of the plurality of internal email servers,

sends the test email through the plurality of internal email servers of the internal email system based on the priority list
to an external email system, wherein the external email system has been provided with a public distribution list (PDL) to
relay the test email back to the plurality of internal email servers,

obtains a time duration for the test email to be delivered, and
sends an alert when the test email is not received by a second monitoring server within a predefined period of time based
on the obtained time duration due to a delay; and

the second monitoring server that:
receives the test email relayed back from the external email system through the plurality of internal email servers,
processes the test email,
finds the entry in the data store of the first monitoring server based on the message identifier, and
updates the entry in the data store with information collected along a delivery path of the test email, wherein the information
comprises each internal email server of the plurality of internal email servers that passed the test email along the delivery
path and a timestamp associated with the test email at each internal email server of the plurality of email servers along
the delivery path, and wherein the first monitoring server determines which internal email server of the plurality of internal
email servers caused the delay based on the information in response to a determination that the test email is not received
by the second monitoring server within the predefined period of time.

US Pat. No. 9,706,353

PROVIDING GEOGRAPHIC LOCATIONS OF A USER'S WIRELESS DEVICE

Sprint Communications Com...

1. A method for determining the identity of a user associated with a wireless device located near a geographic location at
a specific time, the method comprising:
determining geographic locations of one or more wireless devices associated with one or more users, the determining comprising:
(1) sending an alert to the one or more wireless devices in response to an occurrence of an event at a specific location,
wherein the alert requests release of the geographic locations of one or more wireless devices associated with the one or
more users;

(2) receiving consent from at least one of the one or more users associated with the one or more wireless devices to release
the geographic locations of the one or more wireless devices associated with the at least one user; and

(3) generating a list of the at least one user from which consent was received and the one or more wireless devices associated
with the at least one user;

generating an inquiry in response to a request from a law enforcement organization, the request for identities of the one
or more users of the one or more wireless devices having geographic locations corresponding to the specific location, the
geographic locations and the identities being unknown to the law enforcement organization;

transmitting, to the one or more wireless devices associated with the at least one user on the list, the inquiry for consent
to communicate user identifying information in response to the request received from the law enforcement organization;

and
transmitting, to the law enforcement organization, the user identifying information and the geographic locations for the one
or more wireless devices corresponding to the at least one user on the list when consent is received in response to the inquiry.

US Pat. No. 9,615,300

WIRELESS ACCESS NODE AND HAND-OFF METHOD FOR HANDING-OFF A WCD TO A RELAY NODE

Sprint Communications Com...

1. A wireless access node configured to hand-off a wireless communication device (WCD) to a relay node, comprising:
a communication interface configured to exchange communications between the wireless access node and the WCD; and
a processing system coupled to the communication interface and configured to determine that a hand-off of the WCD is imminent
based on a delta signal strength between a wireless access node signal strength and a relay node signal strength exceeding
a predetermined delta signal strength threshold, if the hand-off is imminent, determine whether the WCD is receiving one of
streaming media or a Voice Over LTE (VoLTE) communication, if the hand-off is imminent, determine whether the WCD is located
to hand-off to a decode-and-forward relay device of the wireless network, if the WCD is about to hand-off to a decode-and-forward
relay device and if the WCD is receiving one of streaming media or a VoLTE communication, then extend a hand-off criteria
in order to delay hand-off of the WCD to the decode-and-forward relay device wherein extending the hand-off comprises increasing
the delta signal strength threshold, and send a request to the decode-and-forward relay device to switch over to a store-and-forward
relay mode.

US Pat. No. 9,591,046

EFFICIENTLY PROVIDING MULTIMEDIA SERVICES

Sprint Communications Com...

1. A method of providing multimedia services, comprising:
providing a database that stores a plurality of scripts, wherein each script invokes one of a plurality of media-related functions,
wherein a script is employed by at least two multimedia applications to invoke a particular media-related function, wherein
the at least two multimedia applications that employ the script reside on separate application servers;

receiving a message from an application server running a multimedia application and requiring a media-related function;
in response to the message, accessing a script stored in the database corresponding with the media-related function; and
running the script to cause a media server to provide the media-related function, wherein the script is run by the media server.

US Pat. No. 9,560,550

MITIGATING INTERFERENCE USING BEAMFORMING

Sprint Communications Com...

1. One or more non-transitory computer-readable storage media having computer-executable instructions embodied thereon that,
when executed, perform a method for reducing interference via beamforming, the method comprising:
analyzing interference between a telecommunications tower and a radar source;
based on analyzing, determining a length of time for which interference persists and determining a reoccurring time period
for which one or more lobes of an antenna of the telecommunications tower is to be modified; and

modifying at least one of beam width, angle, signal strength, or number of the one or more lobes of the antenna at the reoccurring
time period and for the length of time determined in order to at least reduce the interference between the telecommunications
tower and the radar source.

US Pat. No. 9,558,341

INTEGRATED USER PROFILE ADMINISTRATION TOOL

Sprint Communications Com...

1. A computer system for managing application passwords and user authority levels via a user profile administration tool integrated
with a single sign-on system, comprising:
a plurality of authentication databases for a plurality of applications accessible to a user, wherein each application of
the plurality of applications is associated with one of the plurality of authentication databases, and wherein each authentication
database of the plurality of authentication databases stores an application password for a corresponding application of the
plurality of applications;

a single sign-on system with a data store storing a user profile of the user, wherein the user profile includes a plurality
of application passwords for the plurality of applications for which the user has access and authority levels of the user
for the plurality of applications, and wherein the single sign-on system, responsive to the user being signed-on to the single
sign-on system using a single sign-on password, enables the user to access each application of the plurality of applications
in accordance with a corresponding authority level of the user for the application in the user profile using a corresponding
application password for the application in the user profile; and

a user profile administration tool that validates, via bulk provisioning functions, a template file that matches a format
of a downloaded template file and that comprises required information for each user profile of a group of user profiles associated
with the template file, the user profile administration tool comprising:

a password provisioning component stored in a non-transitory memory, that when executed by a processor after validation of
the template file, resets, for a first application of the plurality of applications, a first application password of the plurality
of application passwords stored in a first authentication database of the plurality of authentication databases to a reset
application password without the user being aware of the reset of the first application password, wherein the user profile
administration tool automatically synchronizes the reset application password in the first authentication database with the
first application password for the first application in the user profile, and

a role manager component stored in a non-transitory memory, that when executed by a processor, changes, for the first application,
a first authority level of the user in the user profile to a new authority level based on the user changing roles, wherein
the new authority level grants the user different access rights to the first application than the first authority level, and
wherein the single sign-on system, responsive to the user being signed-on to the single sign-on system using the single sign-on
password, enables the user to access the first application in accordance with the new authority level in the user profile
using the reset application password for the first application in the user profile.

US Pat. No. 9,553,780

BI-DIRECTIONAL REAL-TIME DATA CONNECTION TROUBLESHOOTING

Sprint Communications Com...

1. A method for bi-lateral data connection troubleshooting a communication service by using a communication service troubleshooting
tool, comprising:
creating, by the communication service troubleshooting tool, an association between a customer premise equipment in a customer
network and a communication service provider router providing the communication service in a communication service provider
network;

determining, by the communication service troubleshooting tool, a customer premise equipment configuration of the customer
premise equipment in the customer network and a router configuration of the communication service provider router providing
communication services to the customer premise equipment based on the association;

responsive to determining the customer premise equipment configuration and router configuration, initiating, by the communication
service troubleshooting tool, at least one network test on a customer premise equipment interface of the customer premise
equipment in the customer network and at least one network test on a router interface of the communication service provider
router, each of the at least one network tests are separate and initiated simultaneously, wherein the customer premise equipment
interface and the router interface are configured for the communication service;

responsive to initiating the separate tests, generating customer premise equipment measurements based on the at least one
network test on the customer premise equipment interface and router measurements based on the at least one network test on
the router interface;

collecting, by the communication service troubleshooting tool, the customer premise equipment measurements and the router
measurements generated by each of the at least one test initiated on the customer premise equipment interface and the at least
one test initiated on the router interface;

determining, by the communication service troubleshooting tool, a difference between the collected customer premise equipment
measurements and router measurements;

determining, by the communication service troubleshooting tool, whether the difference exceeds a normal threshold;
in response to determining that the difference exceeds the normal threshold, identifying, by the communication service troubleshooting
tool, that a cause of the difference includes at least a mismatch between the customer premise equipment configuration and
the router configuration; and

changing, by the communication service troubleshooting tool, at least one of the customer premise equipment configuration
to an acceptable customer premise equipment configuration or the router configuration to an acceptable router configuration
based on i) the cause of the difference, and ii) a solution for the cause which is obtained by comparing the cause, the customer
premise equipment configuration, the router configuration, or a combination thereof with information previously stored on
a datastore of the communication service provider,

wherein the information previously stored comprises a previously stored cause, previously stored bi-directional information,
previously stored customer behavior, or a combination thereof.

US Pat. No. 9,554,235

IDENTIFIYING ONE OR MORE CARGO DEVICES FOR COMMUNICATION

Sprint Communications Com...

12. A computer implemented method of connecting a cargo device to a long-range interface, the method comprising:
establishing, by cargo devices, a mesh network over short-range channel interfaces;
calculating, by the cargo devices, metrics that are communicated to a hardware controller; and
receiving, by the cargo devices, identities of one or more cargo devices that are suitable for communicating to the hardware
controller over long-range interfaces such that the identified one or more cargo devices receive logistic information from
all other cargo devices in the mesh network for transmission to the hardware controller.

US Pat. No. 9,515,990

COMMUNICATING REREGISTRATION INFORMATION BASED ON THE LIFETIME OF A COMMUNICATION SESSION

Sprint Communications Com...

1. A method for communicating a reregistration value for proxy mobile IP (PMIP) communication sessions to a mobile device,
the method comprising:
receiving a request for an Internet Protocol (IP) address that is used to establish an IP communication session between a
particular mobile device and a wireless communications network, wherein the IP communication session is established as a PMIP
communication session;

authenticating the mobile device to the wireless communications network, the authenticating comprising,
A) communicating a message to an allocation component, comprising a local mobility anchor which supports PMIP access, indicating
that the mobile device is requesting establishment of the IP communication session, thus indicating that the mobile device
does not currently have an assigned IP address, and

B) receiving, from the allocation component, the assigned IP address for the mobile device and a lifetime value indicating
a length of time after which the PMIP communication session between the mobile device and the wireless communications network
expires;

computing a reregistration value, wherein computing the reregistration value comprises
A) determining a threshold value which indicates an amount of time prior to expiration of the lifetime value,
B) calculating a difference between the lifetime value and the threshold value, and
C) setting the reregistration value to a value less than or equal to the calculated difference between the registration lifetime
and the threshold value;

creating a new attribute that comprises the reregistration value to communicate to the mobile device; and
communicating a message to the mobile device, the message including the assigned IP address and the reregistration value,
wherein the reregistration value indicates a time prior to expiration of the PMIP communication session, wherein the reregistration
value allows the mobile device to reregister the PMIP communication session when the PMIP communication session has expired
or renew the current PMIP communication session prior to the expiration of the PMIP communication session.

US Pat. No. 9,462,125

IDENTIFICATION OF PUBLIC SAFETY ANSWERING PLATFORM NEXT GENERATION 911 MEDIA SUPPORT

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed, perform a method to identify media format support, the method comprising:
obtaining a test emergency service call at one or more Public Safety Answering Platforms (PSAPs), wherein the test emergency
service call includes a combination of two different types of media;

processing the test emergency services call at one or more PSAPs;
determining whether the one or more PSAPs support the combination of the media format in the test emergency services call;
if the combination of media formats are supported, updating a profile associated with the one or more PSAPs to indicate that
the combinations of different media format included in the test emergency services call may be sent to the identified PSAPs;
and

providing the location of the PSAPs with the media format support data for illustration on a carrier coverage map associated
with a communication provider.

US Pat. No. 9,462,418

AUGMENTATION OF CALL DATA INFORMATION TO DETERMINE A LOCATION OF A WIRELESS COMMUNICATION DEVICE

Sprint Communications Com...

1. A method of operating a wireless communication device, comprising:
receiving wireless signals transmitted from a plurality of base stations and determining signal strengths for at least some
of the wireless signals;

identifying at least three geographically diverse ones of the base stations having signal strengths that satisfy a location-determination
strength threshold, wherein a signal strength of the signal strengths satisfies the location-determination strength threshold
when the signal strength is greater than a threshold signal strength value and less than a signal strength value that would
otherwise place a corresponding base station identifier in an active set for the wireless communication device; and

transmitting base station identifiers and associated signal strengths for the geographically diverse base stations.

US Pat. No. 9,420,474

BEAMFORMING SELECTION FOR MACRO CELLS BASED ON SMALL CELL AVAILABILITY

Sprint Communications Com...

1. A method for reducing interference from beamforms in one or more wireless communications networks, the method comprising:
communicating data to a plurality of user equipment (UE) in a cell using a plurality of beamforms, each of the plurality of
beamforms having a main lobe and side lobes, the main lobe being directed toward a corresponding UE of the plurality of UE;
and

for each beamform of the plurality of beamforms:
determining a position of the beamform in the cell,
identifying one or more positions of one or more small cells,
determining that the one or more small cells of a plurality of small cells in the cell are available to serve the corresponding
UE of the beamform based on determining that the one or more small cells are positioned within the main lobe of the beamform
using the determined position of the beamform and the identified one or more positions of the one or more small cells, and

based on the one or more small cells being determined as available to serve the corresponding UE, disabling beamforming to
the corresponding UE from the cell, thereby preventing the side lobes of the beamform from interfering with other radio communications
in the cell, the disabling of the beamforming comprising disabling the beamform directed toward the corresponding UE.

US Pat. No. 9,332,120

DIALING RULE DETERMINING AND APPLICATION IN A COMMUNICATION SYSTEM

Sprint Communications Com...

1. A call processing system for processing calls in a communications network, the call processing system comprising:
an interface configured to receive from a device a message to register the device with the communications network, wherein
the message indicates a mobile station identifier associated with the device; and

a processing system configured to process the message to determine a phone number associated with the device based on the
mobile station identifier, process the phone number to determine if an override dialing rule applies, wherein if the override
dialing rule applies, process the phone number to determine the override dialing rule based on the phone number, and apply
the override dialing rule to calls placed from the device.

US Pat. No. 9,307,506

IMPLEMENTATION OF A FIBER DISTRIBUTED ANTENNA SYSTEM NETWORK WHILE MAINTAINING SYNCHRONIZATION

Sprint Communications Com...

1. A system for synchronizing transmission through the introduction of a specific additional delay in a wireless telecommunications
network, comprising:
at least a distributed antenna system (DAS) connected to a central communications hub site, wherein the central communications
hub site is part of a macro cellular network;

the DAS comprising one or more DAS nodes distributed in an area to transmit and receive radio frequency (RF) signals, wherein
each of the one or more DAS nodes comprises at least one antenna to facilitate RF transmission, and wherein each of the one
or more DAS nodes is located at a same distance or a different distance to another of the one or more DAS nodes from the central
communications hub site;

the one or more DAS nodes encounter a delay in transmission of the RF signals because of their respective one or more distances
from the central communications hub site, wherein each of the one or more DAS nodes encounter an amount of the delay in proportion
to its distance from the central communications hub site; and

each of the one or more DAS nodes further delays transmission to synchronize with transmissions within the macro cellular
network, wherein each of the one or more DAS nodes transmits RF signals at a same time as RF signals in the macro cellular
network to avoid interference.

US Pat. No. 9,220,011

ELECTRONIC DEVICE THEFT SELF-DETECTION AND LOCKING

Sprint Communications Com...

1. A mobile communication device that detects and responds to theft, comprising:
a cellular radio transceiver;
a processor;
a memory, wherein the memory comprises a user partition and a system partition; and
an operating system kernel stored in the system partition of the memory that, when executed by the processor:
prevents unprivileged users from accessing the system partition,
determines a theft status of the mobile communication device by comparing an electronic serial number (ESN) or a mobile equipment
identity (MEID) associated with a component of the mobile communication device stored in the system partition with an ESN
or a MEID stored in the component, and

in response to a determination that the theft status is a stolen status based on the operating system kernel detecting at
least one of a different pattern of usage or a flushing of contact information and building of different new contact information
and at least one of a lack of correlation between the ESN or the MEID stored in the system partition and the ESN or the MEID
stored in the component, performs at least one theft response selected from preventing boot-up of the mobile communication
device, sending a message via the cellular radio transceiver indicating the theft status, commanding presentation of a theft
alert message on a display of the mobile communication device, and disabling input functions of the mobile communication device.

US Pat. No. 9,160,629

MESH WIRELESS CONNECTIVITY

Sprint Communications Com...

1. A computer-implemented method of connecting machine-to-machine (M2M) components in delivery vehicles, the method comprising:
storing, in a database, metrics for each delivery vehicle having near-field channel interfaces and wireless interfaces;
identifying one or more delivery vehicles that are suitable to communicate data for each of the delivery vehicles;
establishing a mesh network of delivery vehicles over the near-field channel interfaces;
calculating, at each delivery vehicle, the metrics;
transmitting the calculated metrics to a central station; and
receiving, from said central station, identities of delivery vehicles that are suitable for communicating to the central station
over a wireless network such that the identified delivery vehicles receive package delivery information from all other delivery
vehicles in the mesh network for transmission to the central station.

US Pat. No. 9,154,976

MESH WIRELESS CONNECTIVITY

Sprint Communications Com...

1. One or more non-transitory computer-storage media storing computer-usable instructions that, when executed by a processor,
perform a computer-implemented method of connecting a wireless device to a wireless network, the method comprising:
specifying a plurality of communication metrics for a group of wireless devices;
establishing thresholds for each of the communication metrics;
receiving the specified plurality of communication metrics from each wireless device in the group of wireless devices;
tallying the achieved thresholds for each wireless device in the group of wireless devices, wherein each of the communication
metrics have an associated value and the achieved thresholds are based on a comparison of the associated values and the thresholds;
and

identifying a suitable communication device among the group of wireless devices based on the largest tallied count of the
achieved thresholds from the group of wireless devices, wherein the suitable communication device connects to the wireless
network.

US Pat. No. 9,148,453

DYNAMIC DETERMINATION OF INITIAL FILTER CRITERIA

Sprint Communications Com...

1. A method of operating an internet protocol (IP) multimedia subsystem, the method comprising:
in a call session control function (CSCF), receiving a session initiation protocol (SIP) registration message transferred
by a user communication device and responsively transferring a registration request to a home subscriber server (HSS);

in the HSS, processing the registration request to obtain initial filter criteria (IFC) for the user communication device,
wherein the IFC comprises processing instructions indicated using a markup language that direct the CSCF to perform an operation
to dynamically obtain and load data into the IFC;

in the CSCF, receiving a SIP invite message transferred by the user communication device;
in the CSCF, processing text from the SIP invite message against a set of keywords to determine a dynamic parameter based
on a keyword match;

in the CSCF, processing one of the processing instructions in the IFC to obtain and load the dynamic parameter into the IFC;
in the CSCF, processing the IFC with the dynamic parameter to determine a communication session parameter; and
in the CSCF, transferring a SIP message with the communication session parameter responsive to the SIP invite message.

US Pat. No. 9,106,382

QUALITY ADJUSTMENT FOR VOLTE EMERGENCY CALLS

Sprint Communications Com...

1. A method of operating a wireless access node to facilitate communication quality adjustments during voice over long term
evolution (VoLTE) communication sessions, the method comprising:
exchanging VoLTE packets with a wireless communication device during a VoLTE emergency call with a public safety answering
point (PSAP);

receiving a scheduling request transmitted from the PSAP, wherein the scheduling request includes an identifier associated
with the wireless communication device and specifies hybrid automatic repeat request (HARQ) settings for the VoLTE emergency
call; and

responsive to the scheduling request, issuing a scheduling grant to the wireless communication device based on the HARQ settings
specified in the scheduling request.

US Pat. No. 10,628,439

SYSTEM AND METHOD FOR MOVIE DIGITAL CONTENT VERSION CONTROL ACCESS DURING FILE DELIVERY AND PLAYBACK

Sprint Communications Com...

1. A system, comprising:a data store;
a playback device located at a movie theater;
a processing server that builds metadata, the processing server comprising:
a processor,
a memory,
an application stored in the memory that, when executed by the processor,
formats data into a data container, wherein the data is comprised of audio and video content of a movie,
builds metadata, wherein the metadata details what post-processing has been done on the data, wherein the metadata identifies what processing and algorithms are applied to the data and supports selection of data by the playback device, and identifies a source location from which the data container is obtained, and identifies a plurality of different data containers with different versions of the audio or video content that have different processing or algorithms applied to them and the source location from which the different data containers are obtained,
writes the metadata into the data container, and
stores the data container in the data store;
the data store is configured to:
receive a request from the playback device for the data container,
transmit the data container to the playback device responsive to receiving the request from the playback device for the data container, and
transmit one of the plurality of different data containers to the playback device responsive to receiving a request from the playback device for the one of the plurality of different data containers based at least partially on the metadata that identifies the source location from which the different data containers are available; and
the playback device is configured to:
generate and transmit the request to the data store for the data container,
receive and analyze the data container to determine based on the metadata whether the data formatted into the data container is suitable for playback by the playback device,
generate and transmit the request for the one of the plurality of different data containers when the analysis based on the metadata indicates that the data formatted into the data container is not suitable for playback by the playback device, the request for the one of the plurality of different data containers at least comprising a source location for the one of the plurality of different data containers identified from the metadata, wherein the request for the one of the plurality of different data containers is transmitted to the source location for the one of the plurality of different data containers identified from the metadata, and
receive the one of the plurality of different data containers from the source location for the one of the plurality of different data containers identified from the metadata.

US Pat. No. 10,592,484

DATA MIGRATION BETWEEN DIFFERENT LIGHTWEIGHT DIRECTORY ACCESS PROTOCOL (LDAP) BASED WIRELESS COMMUNICATION SUBSCRIBER DATA STORES

Sprint Communications Com...

1. A method of migrating a data store of wireless communication subscriber data from a first data store system to a second data store system while continuing to handle requests to authenticate subscribers in the data store, where the second data store system is different from the first data store system, comprising:receiving during a first portion of a subscriber data migration a plurality of subscriber data provisioning requests by a computer system, wherein each provisioning request comprises a reference to a wireless communication subscriber data entry and a provisioning content;
in response to each provisioning request,
looking up a wireless communication subscriber data entry by the computer system in the first data store system based on the reference of the provisioning request;
revising the wireless communication subscriber data entry by the computer system in the first data store system based on the provisioning content of the provisioning request;
copying a revised wireless communication subscriber data entry identified by the reference by the computer system to the second data store system;
creating a reference to the revised wireless communication subscriber data entry copied to the second data store system; and
changing the reference to the wireless communication subscriber data entry in the first data store system to reference empty memory;
during a second portion of the subscriber data migration, creating a list of wireless communication subscriber data entries to be migrated from the first data store system to the second data store system by the computer system, where the list of data entries to be migrated excludes data entries that are migrated during the first portion of the subscriber data migration;
for each wireless communication subscriber data entry in the list;
setting a softlock on the wireless communication subscriber data entry in the first data store system by the computer system;
reading the wireless communication subscriber data entry in the first data store system by the computer system;
copying the wireless communication subscriber data entry read in the first data store system by the computer system into the second data store system;
creating a reference to the wireless communication subscriber data entry copied to the second data store system by the computer system;
changing the reference to the wireless communication subscriber data entry in the first data store system to reference empty memory by the computer system; and
releasing the softlock on the wireless communication subscriber data entry in the first data store by the computer system, where if an attempt to write the wireless communication subscriber data entry in the first data store system that has a softlock set occurs, any of the steps of copying the wireless communication subscriber data entry read into the second data store system and of creating a reference to the wireless communication subscriber data entry are backed out of the second data store system.

US Pat. No. 10,542,115

SECURING COMMUNICATIONS IN A NETWORK FUNCTION VIRTUALIZATION (NFV) CORE NETWORK

Sprint Communications Com...

1. A method of electronic communication via a virtual network function (NFV) implementation of a core network, comprising:receiving a first domain name lookup request that comprises an abstract service name having a format that does not include a domain name suffix referencing a top-level domain;
in response to receiving the first domain name lookup request, looking up an internet protocol (IP) address of a server associated with the abstract service name;
creating a mapping between a one-time-use domain name and the IP address, where the one-time-use domain name is created dynamically;
transmitting a reply to the first domain name lookup request comprising the one-time-use domain name, wherein the one-time-use domain name is dependent on and generated according to the abstract service name such that the one-time-use domain name comprises at least a portion of the abstract service name, and wherein the one-time-use domain name is configured to prevent inclusion of the domain name in the first domain name lookup request to access a service identified by the abstract service name;
receiving a hypertext transfer protocol (HTTP) content request from a user equipment (UE), wherein the HTTP content request is a trusted HTTP content request received from a trusted browser application executing in a trusted security zone of the UE and comprises the one-time-use domain name, and wherein the trusted security zone of the UE provides hardware assisted security on the UE;
in response to receiving the HTTP content request, looking up the IP address based on the one-time-use domain name and destroying the mapping between the one-time-use domain name and the IP address;
determining, by a trusted orchestrator service that executes in a trusted security zone of a first physical host, that insufficient NFV trusted processing capacity is available to perform the trusted HTTP content request;
dynamically increasing the NFV trusted processing capacity by the trusted orchestrator service;
performing the HTTP content request using the increased NFV trusted processing capacity; and
returning a HTTP content response to the UE, wherein the HTTP content response contains content responsive to the HTTP content request, and wherein the HTTP content response does not comprise an identification of a source of the content.

US Pat. No. 10,341,195

VIRTUAL NETWORK FUNCTION (VNF) RESOURCE MANAGEMENT IN A SOFTWARE DEFINED NETWORK (SDN)

Sprint Communications Com...

1. A method of operating a Network Function Virtualization (NFV) Software Defined Network (SDN) to control NFV resources consumed by Virtual Network Functions (VNFs) that support a data service, the method comprising:an NFV Infrastructure (NFVI) executing SDN application VNFs, SDN controller VNFs, and NFVI virtual Switches (vSWs) to support the data service,
the SDN application VNFs, the SDN controller VNFs, and the NFVI vSWs responsively transferring SDN Key Performance Indicators (KPIs) to an NFV Management and Orchestration (MANO) Virtual Infrastructure Manager (VIM) and to a MANO VNF Manager (VNFM);
the MANO VIM receiving the SDN KPIs and transferring the SDN KPIs to a MANO KPI server;
the MANO VNFM receiving the SDN KPIs and transferring the SDN KPIs to the MANO KPI server;
the MANO KPI server processing the SDN KPIs to generate VNF control data to darken one of the SDN VNFs and processing the VNF control data to generate and transfer NFV control data to darken the one SDN VNF; and
the NFVI darkening the one SDN VNFs responsive to the NFV control data by restricting access to NFVI hardware for the one SDN VNF.

US Pat. No. 10,200,910

WIRELESS COMMUNICATION SYSTEM TO DYNAMICALLY MODIFY A BUFFER STATUS REPORT (BSR) TIMER IN A WIRELESS RELAY

Sprint Communications Com...

1. A method of operating a wireless communication system to dynamically modify a Buffer Status Report (BSR) timer in a wireless relay, the method comprising:a wireless access point determining a User Equipment (UE) load on the wireless access point, wherein the UE load includes at least a number of UEs;
the wireless access point comparing the UE load to a relay reporting threshold, and if the UE load exceeds the relay reporting threshold, then increasing the BSR timer for the wireless relay to decrease BSR transfers from the wireless relay; and
the wireless access point indicating the increased BSR timer to the wireless relay.

US Pat. No. 10,129,411

SYSTEM AND METHOD OF ENHANCING A MOBILE DEVICE UPGRADE OFFER

Sprint Communications Com...

1. A system for enabling selection of one or more different mobile devices for delivery, comprising:a server comprising:
a processor;
a non-transitory memory; and
a server application stored in the non-transitory memory of the server that, when executed by the processor of the server, configures the processor of the server to:
trigger a mobile device application to run a diagnostics test on a current mobile device by sending a signal to the current mobile device;
the current mobile device comprising:
a processor;
a non-transitory memory; and
the mobile device application stored in the non-transitory memory of the current mobile device that, when executed by the processor of the current mobile device, configures the processor of the mobile device to:
run the diagnostics test on the current mobile device in response to receiving the signal from the server application, wherein the diagnostics test comprises the mobile device application examining a processing capacity of the processor of the current mobile device and whether one or more viruses are present in the current mobile device, and
send a message to the server application indicating results of the diagnostics test,
wherein the server application is further configured to:
receive the message from the mobile device application indicating the results of the diagnostics test,
determine a refurbished value of the current mobile device based on the results of the diagnostics test,
identify one or more characteristics associated with the current mobile device, the one or more characteristics selected from a group consisting of: one or more features of a current mobile service plan associated with the current mobile device comprising at least an amount of time remaining on a contract corresponding to the current mobile service plan, one or more features of the current mobile device, and a usage history of a user of the current mobile device,
identify the one or more different mobile devices, wherein identifying the one or more different mobile devices comprises identifying a retail price for each of the one or more different mobile devices,
generate an available price for each of the one or more different mobile devices based on the one or more characteristics associated with the current mobile device, the refurbished value of the current mobile device, and the retail price for each of the one or more different mobile devices, wherein the available price for each of the one or more different mobile devices varies depending on the amount of time remaining on the contract with a higher available price when there is more time remaining on the contract and a lower available price when there is less time remaining on the contract,
provide the generated available price for each of the one or more different mobile devices to a display associated with a user associated with the current mobile device,
receive user input from the user associated with the current mobile device that indicates a selection of at least one of the one or more different mobile devices,
transmit a request to a server of a mobile service provider associated with the current mobile service plan, the request indicating the selection of the at least one of the one or more different mobile devices by the user of the current mobile device, and
in response to receiving the request, initiate, via the server of the mobile service provider associated with the current mobile service plan, delivery of the at least one of the one or more different mobile devices to an address associated with the user associated with the current mobile device, and
the at least one or more different mobile devices comprising:
a processor;
a non-transitory memory; and
a transfer application stored in the non-transitory memory of the at least one or more different mobile devices that, when executed by the processor of the at least one or more different mobile devices, configures the processor of the mobile device to:
automatically activate the transfer application responsive to the at least one or more different mobile devices being powered on,
receive one or more account identification items uniquely associated with a mobile service account of the current mobile service plan of the current mobile device,
transmit the one or more account information items to a second server of the mobile service provider, and
automatically receive activation of mobile service associated with the mobile service account in response to transmitting the one or more account information items, wherein transmitting the one or more account information causes the second server of the mobile service provider to transmit a signal to deactivate the current mobile device automatically in response to receipt of the one or more account information items and activation of the mobile service associated with the mobile service account on the at least one or more different mobile devices.

US Pat. No. 10,090,908

DATA SERVICES FOR WIRELESS COMMUNICATION DEVICES THAT ARE ATTACHED TO WIRELESS REPEATER CHAINS

Sprint Communications Com...

1. A method of operating a data communication system to control data services for User Equipment (UE) attached to a serving wireless repeater in a wireless repeater chain, the method comprising:a wireless base station receiving attachment signaling for the UE from the wireless repeater chain and responsively identifying a number of repeater hops for the UE between the wireless base station and the serving wireless repeater and transferring initial UE signaling indicating the UE identity and the number of wireless repeater hops;
a network controller receiving the initial UE signaling and responsively selecting a set of the data services for the UE based on the UE identity and the number of wireless repeater hops;
the network controller exchanging session creation signaling indicating the selected set of the data services for the UE with at least one network element to deliver the selected set of the data services to the UE;
the network controller transferring S1AP Initial Context Setup Request signaling indicating the UE, the selected set of the data services for the UE, and a non-selected set of the data services for the UE for delivery to the wireless base station; and
the wireless base station transferring Radio Resource Control (RRC) signaling to the wireless repeater chain for delivery to the UE indicating the selected set of the data services and the non-selected set of the data services.

US Pat. No. 10,075,540

NETWORK FUNCTION VIRTUALIZATION (NFV) HARDWARE TRUST IN DATA COMMUNICATION SYSTEMS

Sprint Communications Com...

1. A method of operating wireless User Equipment (UE) that comprises a Network Function Virtualization Infrastructure (NFVI) that has hardware-trusted circuitry to support a hardware-trusted wireless communication service, the method comprising:a Network Function Virtualization Management and Orchestration (NFV MANO) orchestrator executing in the hardware-trusted circuitry in the NFVI and responsively exchanging hardware trust data with a wireless communication network to maintain hardware-trust between the wireless UE and the wireless communication network;
the NFV MANO orchestrator executing in the hardware-trusted circuitry in the NFVI and responsively exchanging network operations data for the hardware-trusted wireless communication service with the wireless network over an Os-Nfvo link;
responsive to the exchange of the network operations data, the NFV MANO orchestrator exchanging network service data with the hardware-trusted circuitry in the NFVI over an Nf-Vi link to execute an NFV Virtual Network Function (VNF) to support the hardware-trusted wireless communication service; and
responsive to the exchange of the network service data, the hardware-trusted circuitry in the NFVI executing the NFV VNF to support the hardware-trusted wireless communication service.

US Pat. No. 10,021,521

DYNAMICALLY UPDATING THE LOCATION OF MOBILE WIRELESS REPEATERS

Sprint Communications Com...

1. A method of operating a Long-Term Evolution (LTE) communication system to facilitate updating network topology information when a mobile wireless repeater changes its attachment, the method comprising:in a network topology server, receiving updated attachment information transmitted from the mobile wireless repeater;
in the network topology server, processing the updated attachment information to identify a former macro LTE base station to which the mobile wireless repeater was previously attached and a new macro LTE base station to which the mobile wireless repeater is presently attached;
in the network topology server, transferring an attachment scan instruction for delivery to the former macro LTE base station and the new macro LTE base station;
in the former macro LTE base station, in response to the attachment scan instruction, determining former network attachment information for one or more former network wireless repeaters attached to the former macro LTE base station and transferring the former network attachment information for delivery to the network topology server;
in the new macro LTE base station, in response to the attachment scan instruction, determining new network attachment information for one or more new network wireless repeaters attached to the new macro LTE base station and transferring the new network attachment information for delivery to the network topology server; and
in the network topology server, receiving the former network attachment information and the new network attachment information and updating a network topology map with the former network attachment information and the new network attachment information.

US Pat. No. 10,019,281

HANDOFF OF VIRTUAL MACHINES BASED ON SECURITY REQUIREMENTS

Sprint Communications Com...

1. A method of transitioning a virtual machine from a host computer to a target computer having a security key, the method comprising:the host computer transferring a security phrase to the target computer;
the target computer applying the security key to the security phrase to generate a security response and transferring the security response to the host computer;
the host computer determining whether the target computer supports the virtual machine based on the security response from the target computer, and if the target computer is capable of supporting the virtual machine, then the host computer initiating a transition of the virtual machine from the host computer to the target computer, wherein the target computer applying the security key to the security phrase to generate the security response comprises a hypervisor in the target computer applying the security key to the security phrase to generate the security response;
the host computer transferring a time-slice request to the target computer to identify a time-slice for the virtual machine on the target computer;
the target computer transferring a time-slice response to the host computer that identifies the time-slice for the virtual machine on the target computer; and
the host computer determining whether the target computer supports the virtual machine further comprises determining whether the target computer supports the virtual machine based on the time-slice for the virtual machine on the target computer.

US Pat. No. 9,986,487

RELAY CONTROL SYSTEM NOTIFICATION OF INTER-CELL INTERFERENCE COORDINATION (ICIC) TO A DONOR BASE STATION

Sprint Communications Com...

1. A method of operating a wireless communication network to notify a donor base station of the use of Inter-Cell Interference Coordination (ICIC) between a wireless relay and a neighboring base station, the method comprising:the donor base station exchanging first user data with the wireless relay using a first communication throughput;
a relay control system exchanging data with the wireless relay over the donor base station and the neighboring base station;
the relay control system detecting ICIC between the wireless relay and the neighboring base station and in response, identifying the donor base station serving the wireless relay and signaling the donor base station of the ICIC between the wireless relay and the neighboring base station; and
the donor base station receiving the signaling and responsively reducing the first communication throughput of the wireless relay; and
the donor base station exchanging second data with the wireless relay using the reduced communication throughput.

US Pat. No. 9,949,146

CONTROL OVER DATA SERVICES THAT ARE DELIVERED OVER A WIRELESS ACCESS POINT

Sprint Communications Com...

1. A method of operating a wireless communication network having a wireless access point and a data gateway to control multiple data services, the method comprising:the wireless access point wirelessly broadcasting service identifiers for the data services, and in response, user communication devices and the wireless access point wirelessly exchanging user data for the data services;
the wireless access point and the network gateway exchanging the user data for the data services;
the network gateway processing the user data to determine if one of the data services falls below a Quality-of-Service (QoS) threshold for the one of the data services;
if one of the data services falls below the QoS threshold, then the network gateway responsively transferring an instruction to stop wirelessly broadcasting one of the service identifiers for the one of the data services that fell below the QoS threshold; and
the wireless access point receiving the instruction and stopping the wireless broadcast of the service identifier for the data service that fell below the QoS threshold.

US Pat. No. 9,942,702

DEVICE LOCATION DETERMINATION WHEN ATTACHED TO ONE OR MORE WIRELESS REPEATERS

Sprint Communications Com...

1. A method of operating a Long-Term Evolution (LTE) communication system to facilitate device location determinations, the method comprising:in an LTE base station, exchanging session communications with a User Equipment (UE) device during a communication session, wherein the LTE base station is attached to one or more wireless repeaters;
in the LTE base station, receiving a location request for a device location of the UE device;
in the LTE base station, determining an amount of delay time associated with the session communications of the UE device;
in the LTE base station, submitting a query to a database system for a location of a wireless repeater to which the UE device is connected, wherein the query includes an identifier of the LTE base station and the amount of delay time associated with the session communications;
in the database system, processing the identifier of the LTE base station and the amount of delay time associated with the session communications to identify the wireless repeater to which the UE device is connected, and returning the location of the wireless repeater to the LTE base station in response to the query; and
in the LTE base station, receiving the location of the wireless repeater from the database system and transferring the location of the wireless repeater in response to the location request for the device location of the UE device.

US Pat. No. 9,928,222

CUSTOMIZING A BROWSING EXPERIENCE ON A MOBILE COMMUNICATIONS DEVICE

Sprint Communications Com...

1. One or more nontransitory computer-readable media having computer-executable instructions embodied thereon that, when executed, perform a method for customizing a user agent profile for a mobile communications device, the method comprising:communicating, from a mobile communications device, a request for a Hyper Text Transfer Protocol compatible (“HTTP-compatible”) page, wherein the request includes information about capabilities of the mobile communications device;
at the mobile communications device, receiving an options page that includes one or more selectable options associated with one or more of the capabilities of the mobile communications device;
at the mobile communications device, receiving a selection as to which of the selectable options are preferred;
communicating, from the mobile communications device, the selected options to be used for generating the customized user agent profile; and
receiving a target HTTP-compatible page, wherein the target HTTP-compatible page is a variation of the requested HTTP-compatible page that is converted based on the customized user agent profile.

US Pat. No. 9,817,641

FACILITATING APPLICATION DEVELOPMENT USING PROTECTED COMPONENTS

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon for performing
a method of facilitating development of an application by a user for a mobile communications device, the method comprising:
accessing, using a computing device in a network environment, a portion of code, wherein portions of code correspond to code
classifications associated with use restrictions that are matched with protected components used for developing applications
in mobile communications devices;

determining a code classification corresponding to the portion of code;
determining that the code classification is associated with a use restriction, based on a mapping between the code classification
and the use restriction, wherein the use restriction is matched with a protected component, the protected component is used
for developing applications for a mobile communications device; and

communicating, for display via a display device, an indication that the portion of code is associated with a use restriction.

US Pat. No. 9,820,216

WIRELESS TRAFFIC CHANNEL RELEASE PREVENTION BEFORE UPDATE PROCESS COMPLETION

Sprint Communications Com...

9. A wireless communication device, comprising:
a communication interface configured to establish a voice call using a wireless voice traffic channel between the wireless
communication device and a wireless access point of a wireless communication network, upon establishing the voice call using
the wireless voice traffic channel, receive an indication of the occurrence of the background update process; and

a processing system configured to in response to the indication of the occurrence, set a flag in the wireless communication
device to prevent the release of the wireless voice traffic channel, initiate a background process on the wireless communication
device that uses the wireless voice traffic channel before completion of the voice call, determine that the voice call is
complete, prevent the release of the wireless voice traffic channel until the background update process that uses the wireless
voice traffic channel is completed, and, upon completion of the background update process, allow the release of the wireless
voice traffic channel.

US Pat. No. 9,799,196

INTEGRATED GAS DETECTION AND VEHICLE TELEMATICS SYSTEM

Sprint Communications Com...

1. A system for providing wireless communications network access to a vehicle capable of detecting levels of chemical substances,
the system comprising:
one or more access components configured to provide wireless communications network access to at least one integrated chemical
substance detection and vehicle telematics system, wherein the one or more access components are configured to receive an
alert signaling detection of a threshold level of a chemical substance, wherein the alert is automatically generated based
on a determination that the threshold level of the chemical substance has been detected;

a command center server configured to provide network services to the at least one integrated chemical substance detection
and vehicle telematics system; and

a mobile gateway configured to provide remote access to the at least one integrated chemical substance detection and vehicle
telematics system and communicate the alert to one or more recipients.

US Pat. No. 9,781,255

AUTHENTICATION OF PHONE CALL ORIGINATION

Sprint Communications Com...

1. A method of authenticating call origination, the method comprising:
receiving, by a computer system, a call origination message from a communication network, wherein the call origination message
comprises an automatic number identification (ANI) storing a phone number, and wherein the computer system is associated with
a called number in the call origination message;

determining, by the computer system, that the phone number is not associated with an originator of the call origination message;
responsive to determining that the phone number is not associated with the originator of the call origination message, dropping,
by the computer system, the call origination message and not answering an associated call, whereby a called party associated
with the called number reduces its vulnerability to call origination spoofing;

receiving, by the computer system, a second call origination message from the communication network, wherein the second call
origination message comprises an ANI storing a second phone number and the called number associated with the computer system;

responsive to receiving the second call origination message, transmitting, by the computer system, a call origination authentication
request message to the communication network, wherein the call origination authentication request message comprises the second
phone number and the called number;

determining, by a communication network server system, that a second UE associated with the second phone number is off-hook
and that the second UE is connected to the called number;

responsive to determining that the second UE associated with the second phone number is off-hook and connected to the called
number, determining, by the communication network server system, a call verification status;

encrypting, by the communication network server system, the call verification status using a secret key known to an enterprise
call center;

transmitting, by the communication network server system, a call origination authentication response message comprising the
encrypted call verification status to the enterprise call center;

receiving, by the computer system, the call origination authentication response message from the communication network comprising
the encrypted call verification status;

decrypting, by the computer system, the encrypted call verification status, wherein the decrypted call verification status
comprises one or more of a tenure of a subscriber account associated with the second phone number, a stolen status of the
second UE associated with the second phone number, a status of a recent swapping of the second UE or swapping of the association
of the second phone number and the second UE, and a status of voicemail forwarding active;

based on the decrypted call verification status, determining, by the computer system, that the second phone number is associated
with the second UE; and

based on the decrypted call verification status, connecting a call associated with the second call origination message to
the enterprise call center associated with the called number.

US Pat. No. 9,749,294

SYSTEM AND METHOD OF ESTABLISHING TRUSTED OPERABILITY BETWEEN NETWORKS IN A NETWORK FUNCTIONS VIRTUALIZATION ENVIRONMENT

Sprint Communications Com...

1. A system for establishing a trusted end-to-end communication link between different Network Function Virtualization (NFV)
networks, comprising:
a first server associated with a first NFV network, wherein the first server comprises a processor coupled to memory and is
configured to:

generate and send a first trust ticket establishing the security protocol for communicating with the first NFV network, a
request to engage in communication with a second server associated with a second NFV network, and trusted data from the first
NFV network, wherein the first NFV network is executing in a trusted security zone that provides hardware assisted security,
and wherein the second server comprises a processor coupled to memory; and

disable communication with the first NFV network after the first trust ticket, request and trusted data are sent;
a virtual machine stored on the first NFV network, wherein the virtual machine executes virtualized network functions and
is executing in a trusted security zone; and

a session border controller executing in a trusted security zone, wherein the session border controller comprises a trust
node and an application stored on the trust node, configured to:

receive the first trust ticket, request, and trusted data from the first server;
transmit the first trust ticket and request to a second session border controller, wherein the second session border controller
transmits the request and first trust ticket to the second server associated with the second NFV network;

receive a response to the request and a second trust ticket from the second server, wherein the second trust ticket establishes
the security protocol for communicating with the second NFV network, wherein the response and second trust ticket are transmitted
from the second session border controller to the first session border controller, and wherein the second NFV network is executing
in in a trusted security zone, that provides hardware assisted security;

compare the first and second trust tickets for compatibility; and
transmit the trusted data to the second server if the trust tickets are compatible.

US Pat. No. 9,747,617

PROVISION OF WIRELESS DEVICE ACTIVITY INFORMATION TO A THIRD PARTY BASED ON ACCEPTANCE OF AN OFFER PRESENTED TO A USER

Sprint Communications Com...

1. A method of operating a wireless communication system, comprising:
in a processing system, monitoring communications of a wireless communication device to detect an occurrence of the wireless
communication device moving into a designated geographic area and visiting a designated website by a web browser on the wireless
communication device while in the designated geographic area;

in response to detecting the occurrence, in a display system, presenting a user of the wireless communication device with
an offer to provide previously visited website data for the wireless communication device to a third party in exchange for
billing credits, wherein presenting the offer comprises a pop-up notification of the offer; and

receiving a response to the offer from the user, wherein the response comprises an indication of whether the user desires
to accept the offer.

US Pat. No. 9,736,728

IDENTIFYING AVAILABLE PACKET DATA NETWORK GATEWAYS BASED ON RESPONSE MESSAGES

Sprint Communications Com...

1. A method of operating a mobility management entity (MME) to manage communication paths, the method comprising:
transferring a plurality of general packet radio service tunneling protocol (GTP) messages to a plurality of packet data network
gateways;

identifying one or more response messages from the plurality of packet data network gateways;
determining transaction success information for each packet data network gateway in the plurality of packet data network gateways
based on the one or more response messages, wherein the transaction success information comprises a transaction success rate;

identifying when a first transaction success rate for a first packet data network gateway meets transaction criteria; and
when the first transaction success rate meets the transaction criteria, altering communication path allocation to the first
packet data network gateway based on the transaction success information.

US Pat. No. 9,756,597

USER EQUIPMENT (UE) ATTACHMENT TO MULTIPLE MOBILITY MANAGEMENT ENTITIES (MMES) FOR MULTIPLE DATA SERVICES

Sprint Communications Com...

1. A method of operating a data communication network to serve User Equipment (UE) with multiple Mobility Management Entities
(MMEs), the method comprising:
a wireless base station receiving Radio Resource Control (RRC) signaling that indicates multiple data services and transferring
network-attachment signaling indicating the multiple data services;

one of the multiple MMEs receiving the network-attachment signaling indicating the multiple data services, selecting the other
ones of the multiple MMEs to support the multiple data services, and transferring additional network-attachment signaling
indicating the multiple MMEs;

the wireless base station receiving the additional network-attachment signaling indicating the multiple MMEs and transferring
service-attachment signaling indicating the multiple data services;

the multiple MMEs each receiving at least a portion of the service-attachment signaling and transferring Non-Access Stratum
(NAS) signaling for the UE; and

the wireless base station transferring the NAS signaling between the multiple MMEs and the UE to support the multiple data
services.

US Pat. No. 9,705,660

AGGREGATING SPECTRUM CHUNKS FOR MAXIMUM BANDWIDTH UTILIZATION

Sprint Communications Com...

1. A computerized method carried out by at least one server having one or more processors for performing a method of maximizing
bandwidth utilization in a wireless communications network, the method comprising:
determining a carrier bandwidth of a carrier associated with a mobile device that is requesting to communicate data by way
of the wireless communications network;

based on the carrier bandwidth, selecting a standard cell structure that allows the mobile device to send and receive the
data at a bandwidth equal to or larger than the carrier bandwidth;

identifying one or more portions of the standard cell structure that will not be used to transmit the data associated with
the request to communicate the data; and

prior to communicating the data, maximizing bandwidth utilization by inputting zeroes into the one or more portions of the
standard cell structure that will not be used to transmit the data.

US Pat. No. 9,673,982

EFFICIENT HARDWARE TRUST VERIFICATION IN DATA COMMUNICATION SYSTEMS THAT COMPRISE NETWORK INTERFACE CARDS, CENTRAL PROCESSING UNITS, AND DATA MEMORY BUFFERS

Sprint Communications Com...

1. A method of operating a data communication network comprising a multiple Network Interface Cards (NICs), Central Processing
Units (CPUs), and Data Memory Buffers (DMBs) to efficiently verify hardware-trust of the data communication network, the method
comprising:
the NICs receiving user data and responsively transferring data receipt interrupts for the user data;
the CPUs receiving the data receipt interrupts transferred by the NICs and responsively transferring buffer descriptors for
the user data;

the DMBs receiving the buffer descriptors for the user data transferred by the CPUs and responsively transferring the buffer
descriptors for delivery to the NICs;

the NICs receiving the buffer descriptors for the user data and responsively transferring the user data for delivery to the
DMBs;

the DMBs receiving and buffering the user data;
a master one of the NICs transferring CPU hardware-trust validation challenge for delivery to a master one of the CPUs, the
master CPU hashing a validation data with its physically-embedded, hardware-trust code to generate and transfer a CPU hardware-trust
validation result, and the master NIC processing the CPU hardware-trust validation result to verify hardware-trust of the
master CPU; and

the master NIC transferring NIC hardware-trust validation challenge to the other NICs, the other NICs hashing the NIC hardware-trust
validation challenge with their physically-embedded hardware-trust codes to generate and transfer NIC hardware-trust validation
results, and the master NIC processing the NIC hardware-trust validation results to verify hardware-trust of the other NICs.

US Pat. No. 9,672,489

INVENTORY VALIDATOR WITH NOTIFICATION MANAGER

Sprint Communications Com...

1. An inventory management system for dynamically maintaining servers on a network, the system comprising:
a plurality of servers communicatively coupled to the network;
a domain name system (DNS) computer system coupled to the network and configured to convert a name of an alphanumerically
labeled network component into an internet protocol (IP) address;

an automated monitoring system computer coupled to the network and configured to monitor a status of equipment for which the
inventory management system maintains inventory information;

a backup system computer coupled to the network and configured to record errors that occur in a data backup procedure;
a photograph system computer coupled to the network and configured to maintain photographs of equipment for which the inventory
management system maintains inventory information; and

a validator computer system communicatively coupled to the network, the validator computer system comprising:
a processor, and
a non-transitory memory storing a thread manager and at least one validation module for communicating with each of the DNS
computer system, the automated monitoring system computer, the backup system computer, and the photograph system computer,
wherein upon execution of the thread manager and the at least one validation module, the processor:

spawns a first thread on the processor for a DNS validation module and a second thread on the processor for a monitoring system
validation module,

provides a first portion of inventory information to the DNS validation module via the first thread and a second portion of
inventory information to the monitoring system validation module via the second thread,

validates the first portion of inventory information in the inventory management system by comparing the first portion of
inventory information to equivalent information from the DNS computer system,

discovers, from the DNS validation module based on the first portion of inventory information, that an IP address returned
by the DNS computer system is not the same as an IP address associated with a host name in the inventory management system,

responsive to the discovery, updates the inventory management system with the IP address returned by the DNS computer system,
responsive to the second portion of inventory information being provided to the monitoring system validation module via the
second thread, determines, via the monitoring system validation module, that a particular server of the plurality of servers
has not been in operation for a period of time,

determine that a discrepancy exists between the inventory management system and the automated monitoring system computer based
on the particular server not being in operation for the period of time but being designated as a production server,

identify the second portion of inventory information as an instance of invalid data based on the discrepancy, and
report the instance of invalid data from the monitoring system validation module to the thread manager.

US Pat. No. 9,672,512

PROCESSOR ROUTING NUMBER FOR MOBILE COMMUNICATION SERVICE PROVIDER BILLING

Sprint Communications Com...

1. A system for payment approval at a point-of-sale (POS) terminal comprising:
a POS terminal for processing a transaction involving a payment;
a mobile communication device in communication with the POS terminal and a service provider server, the mobile communication
device comprising:

a near field communication (NFC) transceiver;
a radio transceiver;
a display;
a processor;
a non-transitory memory; and
an application stored in the non-transitory memory of the mobile communication device that, when executed by the processor
of the mobile communication device:

in response to receiving a message from the POS terminal, presents a prompt to input identification information on the display,
receives the identification information,
transmits, in response to receiving the identification information, a request for a processor routing number via the radio
transceiver to the service provider server, wherein the processor routing number is a non-exclusive account number that is
also used by other mobile communication devices that are not associated with a service account corresponding to the mobile
communication device;

receives, from the service provider server, the processor routing number via the radio transceiver, and
transmits, to the POS terminal via the near field communication transceiver, the processor routing number and metadata that
comprises at least one of a phone number of the mobile communication device or an equipment identification of the mobile communication
device;

a payment processor server in communication with the POS terminal and the service provider server, the payment processor server
comprising:

a processor;
a non-transitory memory; and
a payment processor application stored in the non-transitory memory of the payment processor server that, upon execution by
the processor of the payment processor server:

receives a payment process request from the POS terminal, wherein the payment process request comprises the processor routing
number and the metadata,

based on the processor routing number in the payment process request, determines that the processor routing number is not
a standard credit card number and is to be processed as a service provider billing transaction with the service provider sever,
and

based on the determination, sends a payment authorization request to the service provider server corresponding to the processor
routing number; and

the service provider server in communication with the POS terminal and the payment processer server, the service provider
server comprising:

a processor;
a non-transitory memory; and
a billing application stored in the non-transitory memory of the service provider server that, when executed by the processor
of the service provider server:

receives, from the payment processor server, the payment authorization request, including the processor routing number and
the metadata that was transmitted by the mobile communication device comprised in the payment process request,

identifies the service account corresponding to the mobile communication device based on the received metadata,
approves the payment authorization request based on the identified service account being in good standing, and
based on the approval, sends a payment approval message to the payment processor server, wherein the payment processor server
sends the payment approval message to the POS terminal and the POS terminal completes the transaction based on the payment
approval message.

US Pat. No. 9,578,069

COOPERATIVE IMS ACCESS FROM A VISITED DOMAIN

Sprint Communications Com...

1. A method of operating broadband access equipment to provide roaming IP multimedia subsystem (IMS) access, the method comprising:
in a communication interface, attaching a communication device to provide the communication device with access to a broadband
access network associated with a visited domain of the communication device;

in a proxy call session control element of a broadband services gateway (BSG):
registering the communication device to access IMS services on behalf of an IMS core in the visited domain over the broadband
access network;

conveying Session Initiation Protocol (SIP) signaling between the communication device and the IMS core as a SIP proxy; and
establishing a communication session between the communication device and the IMS core.

US Pat. No. 9,578,664

TRUSTED SIGNALING IN 3GPP INTERFACES IN A NETWORK FUNCTION VIRTUALIZATION WIRELESS COMMUNICATION SYSTEM

Sprint Communications Com...

1. A method of wireless communication enabled by hardware assisted security, comprising:
receiving a trusted communication request from an enhanced node B (eNB) by a serving gateway interface application, where
the serving gateway interface application is part of a serving gateway virtualized network function provided by a virtual
server executing in a virtual computing environment;

determining by a security monitor module of the serving gateway virtualized network function that a trusted communication
request has been received, where the security monitor module executes in a trusted security zone of compute resources provided
by the virtual computing environment and wherein the trusted security zone provides hardware assisted security;

allocating a serving gateway interface trustlet by the security monitor module to handle the trusted communication request
of the eNB, where the serving gateway interface trustlet executes in the trusted security zone, is associated with the serving
gateway interface application, and is part of the serving gateway virtualized network function;

establishing trusted signaling by the serving gateway interface trustlet with two or more mobility management entity (MME),
home subscriber server (HSS), policy and charging rules function (PCRF) server virtualized network functions provided by virtual
servers executing in the virtual computing environment; and

sending a trust token by the serving gateway interface trustlet to the eNB, whereby a trusted communication link from the
eNB is established via a virtualized network function path through the virtual computing environment.

US Pat. No. 9,569,790

RESOURCE ALLOCATION FOR ADVERTISING CONTENT ON WIRELESS COMMUNICATION DEVICES

Sprint Communications Com...

1. A method of operating a wireless communication device comprising:
displaying a user prompt for resource allotment among advertising content and user content, wherein the user prompt indicates
a plurality of allocation quality of service (QoS) options and associated monetary costs for each of the plurality of allocation
QoS options;

receiving user input indicating an allocation QoS from the plurality of allocation QoS options;
in response to the user input, determining an advertising content resource allotment and a user content resource allotment
based on the user input, wherein the advertising content resource allotment comprises an advertising bandwidth resource allotment
for the advertising content and an advertising processing system utilization allotment for the advertising content, and wherein
the user content resource allotment comprises a user content bandwidth resource allotment for the user content and a user
content processing system utilization allotment for the user content;

transferring a resource allotment message to a wireless communication network indicating the advertising bandwidth resource
allotment and the user content bandwidth resource allotment;

wirelessly receiving the user content from the wireless communication network in accordance with the advertising bandwidth
resource allotment and the user content bandwidth resource allotment;

processing the advertising content from the wireless communication network using the advertising processing system utilization
allotment and the user content from the wireless communication network using the user content processing system utilization
allotment; and

displaying the user content and the advertising content.

US Pat. No. 9,560,519

MOBILE COMMUNICATION DEVICE PROFOUND IDENTITY BROKERING FRAMEWORK

Sprint Communications Com...

7. The mobile communication device of claim 6, wherein the triggering event comprises detecting one of an electronic door scanner signal or a hotel identification wireless
beacon signal.

US Pat. No. 9,392,442

SECURED APPLICATION COMMUNICATIONS

Sprint Communications Com...

1. A method of providing secure application communications on a wireless communication device, the method comprising:
identifying a communication request for a secured application on the wireless communication device, wherein the wireless communication
device comprises a secured processing system portion and an open processing system portion and wherein the secured application
comprises an application executable by the secured processing system portion;

selecting one or more radio transceivers for the communication request from a plurality of radio transceivers on the wireless
communication device based on preferences from the secured processing system portion;

initializing the one or more radio transceivers to search for availability data based on an open operating system command
from an open operating system executable by the open processing system portion;

identifying an appropriate transceiver based on the availability data; and
wirelessly communicating data for the secured application using the appropriate transceiver,
wherein the open processing system portion and the secured processing system portion each comprise at least one processing
core.

US Pat. No. 9,373,106

TRACKING THE DOWNLOAD AND PURCHASE OF DIGITAL CONTENT

Sprint Communications Com...

1. One or more nontransitory computer-readable media having computer-executable instructions embodied thereon that, when executed
by one or more computing devices associated with a service provider, cause the one or more computing devices to perform a
method of tracking online purchases, the method comprising:
monitoring communication sessions between a client device and content providers;
assigning a first transaction identifier to communication sessions between the client device and a first provider that are
associated with a first digital content that is available from the first provider, wherein the first transaction identifier
is uniquely associated with a combination of the client device, the first provider, and the first digital content;

intercepting a request from the client device to the first provider for the first digital content;
obtaining the first digital content from the first provider;
storing the first digital content in a content cache;
downloading the first digital content to the client device,wherein downloading the first digital content to the client device includes downloading to the client device the first transaction
identifier that associates the first digital content with the first provider;
assigning a second transaction identifier to communication sessions between the client device and a second provider that are
associated with a second digital content that is available from the second provider, wherein the second transaction identifier
is uniquely associated with a combination of the client device, the second provider, and the second digital content;

intercepting a request from the client device to the second provider for the second digital content;
determining that the second digital content is identical to the first digital content stored in the content cache;
obtaining a copy of the first digital content from the content cache based on the determination;
downloading the copy of the first digital content obtained from the content cache to the client device, wherein downloading
the copy of the first digital content to the client device includes downloading to the client device the second transaction
identifier, and wherein the first digital content is distinguishable from the copy of the first digital content based on a
comparison of the first transaction identifier and the second transaction identifier;

receiving a usage notification from the client device based on the second transaction identifier that the copy of the first
digital content associated with the second provider has been used; and

upon receiving the usage notification, notifying a settlement system that a purchase of the second digital content associated
with the second provider by a user of the client device has occurred based on the second transaction identifier.

US Pat. No. 9,363,622

SEPARATION OF CLIENT IDENTIFICATION COMPOSITION FROM CUSTOMIZATION PAYLOAD TO ORIGINAL EQUIPMENT MANUFACTURER LAYER

Sprint Communications Com...

1. A method of composing a client identification for a mobile communication device comprising: composing an initial client
identification for a mobile communication device; detecting a change in a service provider identification in a provisioning
profile, wherein the change in the service provider identification indicates a change of service provider; reading the changed
service provider identification from the changed provisioning profile; composing a subsequent client identification based
on the changed service provider identification instead of receiving the subsequent client identification as a part of a customization
payload; replacing the initial client identification in a memory of the mobile communication device with the subsequent client
identification; and sending a notification to mobile services applications with the subsequent client identification, wherein
composing the subsequent client identification instead of receiving the subsequent client identification as part of the customization
payload preserves user customization elements are after the change of service provider due to no reset of the mobile communication
device, and wherein each step in the method is performed by a client identification composition application stored on a non-transitory
memory of the mobile communication device and executable by a processor of the mobile communication device.

US Pat. No. 9,213,931

MATRIX BARCODE ENHANCEMENT THROUGH CAPTURE AND USE OF NEIGHBORING ENVIRONMENT IMAGE

Sprint Communications Com...

1. A method of enhancing a matrix barcode with environment image, comprising:
generating, by a server, an original matrix barcode based on source information;
capturing, by a camera, an image of the original matrix barcode in a graphic environment comprising the matrix barcode and
at least part of graphic environment information;

parsing the image to obtain the source information and the at least part of the graphic environment information;
generating a key based on the at least part of the graphic environment information;
encrypting the source information with the key to obtain encrypted source information;
encoding the encrypted source information into a first matrix barcode;
encoding the key into a key matrix barcode;
transmitting, by a data store, to a user equipment the first matrix barcode and the key matrix barcode;
scanning and decoding, by a second matrix barcode reader, the key matrix barcode being displayed on a display of the user
equipment to recover the key;

scanning and decoding the first matrix barcode to obtain the encrypted source information; and
decrypting the encrypted source information based on the key to recover the source information of the first matrix barcode.

US Pat. No. 9,201,716

AUTOMATIC QUEUE SIZE DETERMINATION AND TUNING

Sprint Communications Com...

1. Non-transitory computer-readable media having computer-executable instructions embodied thereon that, when executed, perform
a method comprising:
referencing a plurality of queue data sets, wherein each of the plurality of queue data sets corresponds to messages associated
with a first queue within a collection time period;

identifying a first queue data set associated with a largest number of messages in the first queue from within the plurality
of queue data sets;

generating an average message size based on the first queue data set, wherein the average message size is based on total bytes
and total number of puts operations of the first queue in a first collection time period; and

determining a target-queue size using the average message size generated from the first queue data set associated with the
largest number of messages in the first queue.

US Pat. No. 9,167,370

DELAYING REGISTRATION ON ROAMING NETWORKS

Sprint Communications Com...

1. One or more non-transitory computer-readable storage media having computer-executable instructions embodied thereon that,
when executed, perform a method for facilitating delaying registration in association with roaming networks, the method comprising:
recognizing that a mobile device is associated with a border coverage in that the mobile device is in an idle mode and alternates
between connection to a home network and a roaming network, wherein the border coverage is an area where the mobile device
receives services from the home network and the roaming network, and wherein the idle mode is where the mobile device does
not actively use services; and based on the mobile device being associated with the border coverage, delaying registration
with the roaming network, wherein delaying registration comprises delaying an assignment of a mobile internet protocol address
to the mobile device, and wherein registration with the roaming network is delayed until a user of the mobile device initiates
a call.

US Pat. No. 9,137,742

SELECTIVE AUTHENTICATION OF USER DEVICES IN WIRELESS COMMUNICATION NETWORKS

Sprint Communications Com...

1. A method of operating a communication system, the method comprising:
receiving wireless access for a communication session over a Code Division Multiple Access (CDMA) wireless communication network;
receiving a registration request transferred by a user device for wireless access from another wireless communication network,
different from the CDMA wireless communication network;

receiving authentication information for the communication session from Authentication, Authorization, and Accounting (AAA)
equipment in the CDMA wireless communication network over the CDMA wireless communication network; wherein the authentication
information comprises at least one of user device authentication information, user authentication information, or network
authentication information;

in response to the registration request, processing the authentication information for the communication session over the
CDMA wireless communication network to selectively bypass an associated authentication process in the other wireless communication
network to authenticate the communication session in the other wireless communication network, wherein the other wireless
communication network comprises one of: a Long Term Evolution (LTE) wireless communication network or a Worldwide Interoperability
for Microwave Access (WiMAX) wireless communication network;

processing an activity level of AAA equipment in the other wireless communication network to select the associated authentication
process in the other wireless communication network to bypass, wherein the activity level of the AAA equipment in the other
wireless communication network comprises at least one of a registration drop rate, a registration incomplete rate, and a processor
utilization level.

US Pat. No. 9,118,767

COMMUNICATION DEVICE AUDIO CONTROL TO COMBINE INCOMING AUDIO AND SELECT OUTGOING AUDIO DESTINATIONS

Sprint Communications Com...

1. A method of operating a communication device for a user, the method comprising:
during a first call with a first caller, transferring user audio to the first caller and playing first caller audio from the
first caller;

during the first call and in response to a second call, presenting an option to the user to combine and play the first caller
audio with second caller audio, to transfer the user audio to the second caller and not to the first caller, to not transfer
the first caller audio to the second caller, and to not transfer the second caller audio to the first caller; and

receiving an instruction from the user, and in response, transferring the user audio to the second caller and not to the first
caller, combining and playing the first caller audio and the second caller audio, not transferring the first caller audio
to the second caller, and not transferring the second caller audio to the first caller.

US Pat. No. 9,106,267

NEAR FIELD COMMUNICATION SESSION FEEDBACK

Sprint Communications Com...

1. A mobile phone, comprising:
a cellular communication radio transceiver;
a near field communication (NFC) radio transceiver;
a processor;
a memory; and
an application stored in the memory that, when executed by the processor:
presents an indication of an initiation of a near field communication session for data transfer via a communication link between
the near field communication radio transceiver and a near field communication transceiver external to the mobile phone, and

in response to the data transfer being completed, presents an indication of a completion of the near field communication session.

US Pat. No. 9,069,952

METHOD FOR ENABLING HARDWARE ASSISTED OPERATING SYSTEM REGION FOR SAFE EXECUTION OF UNTRUSTED CODE USING TRUSTED TRANSITIONAL MEMORY

Sprint Communications Com...

1. An electronic device, comprising:
a processor;
an operating system;
a memory;
a trusted security zone manager to manage a trusted security zone; and
an anti-trusted-security-zone in the trusted security zone that, when installed and managed by the trusted security zone manager
places non-trusted applications into the anti-trusted-security-zone for execution,
restricts access of the non-trusted applications to at least some resources of the electronic device outside the anti-trusted-security-zone,
alerts a user when a non-trusted application of the non-trusted applications inside the anti-trusted-security-zone desires
access to any restricted resource of the electronic device outside the anti-trusted-security-zone,

asks the user for permission to access the desired resource outside the anti-trusted-security-zone,
grants access for the non-trusted application to the desired resource outside the anti-trusted-security-zone upon the permission
by the user,

moves any of the non-trusted applications from the anti-trusted-security-zone to a normal zone that are determined not to
be malicious,

keeps any of the non-trusted applications within the anti-trusted-security-zone that do not need to execute outside the anti-trusted-security-zone,
and

deletes any of the non-trusted applications that are determined to be malicious,
whereby the risk that the non-trusted applications can cause harm to the electronic device is reduced.

US Pat. No. 10,715,969

WIRELESS MESSAGING USING AN ENHANCED QUALITY-OF-SERVICE (QOS)

Sprint Communications Com...

1. A method of operating a wireless communication network to transfer a user message for a wireless User Equipment (UE) using enhanced Quality-of-Service (QoS), the method comprising:provisioning circuitry transferring a QoS code that is associated with the enhanced QoS for delivery to Subscriber Identity Module (SIM) circuitry in the wireless UE;
the SIM circuitry in the wireless UE receiving and storing the QoS code;
processing circuitry in the wireless UE receiving the user message for transfer using the enhanced QoS, and in response, retrieving the QoS code from the SIM circuitry and wirelessly transferring a network message having the user message and the QoS code for delivery to messaging circuitry in the wireless communication network;
the messaging circuitry receiving the network message having the user message and the QoS code, and in response to the QoS code, adding a QoS header to the network message that corresponds to the enhanced QoS and handling the network message having the QoS header with the enhanced QoS; and
the messaging circuitry generating a new network message having the QoS header for the enhanced QoS and the user message, handling the new network message having the QoS header with the enhanced QoS, and transferring the new network message having the QoS header and the user message for delivery to a destination.

US Pat. No. 10,631,358

PHYSICAL LAYER SPLIT IN A MULTI-RADIO ACCESS TECHNOLOGY (RAT) CENTRAL UNIT (CU)

Sprint Communications Com...

1. A method of operating multi-Radio Access Technology (RAT) Central Unit (CU) circuitry to serve wireless User Equipment (UE), the method comprising:the multi-RAT CU circuitry receiving N1 signaling, N2 signaling, and N3 data from a Fifth Generation Core (5GC) network, and in response, processing the N3 data with a Fifth Generation Core (5G) Service Data Adaption Protocol (SDAP) and processing the N2 signaling with a 5G New Radio (NR) Radio Resource Control (RRC) to generate 5G RRC signaling and 5G RRC instructions;
the multi-RAT CU circuitry processing a first portion of the 5G RRC instructions with a multi-RAT Packet Data Convergence Protocol (PDCP) and responsively converting the 5G RRC signaling and the N1 signaling into LTE RRC signaling having Non-Access Stratum (NAS) signaling, and generating LTE PDCP instructions;
the multi-RAT CU circuitry processing the LTE PDCP instructions with an LTE Radio Link Control (RLC), and in response, generating LTE RLC instructions and processing the LTE RLC instructions and a second portion of the LTE RRC instructions with an LTE Media Access Control (MAC), and in response, generating LTE MAC instructions;
the multi-RAT CU circuitry processing the LTE MAC instructions with an LTE Physical Layer High (PHY-H) and responsively generating and transferring LTE PHY-H instructions for delivery to an LTE Physical Layer Low (PHY-L) in Distributed Unit (DU) circuitry;
the multi-RAT CU circuitry receiving other N1 signaling, other N2 signaling, and other N3 data from the 5GC network, and in response, processing the other N3 data with the 5G SDAP and processing the other N2 signaling with the 5G NR RRC to generate other 5G RRC signaling having the other N1 signaling and to generate other 5G RRC instructions;
the multi-RAT CU circuitry processing the other 5G RRC instructions with the multi-RAT PDCP, and in response, generating 5GNR PDCP instructions and processing the 5GNR PDCP instructions with a 5GNR RLC, and in response, generating 5GNR RLC instructions and processing the 5G NR RLC instructions with a 5GNR MAC, and in response, generating 5GNR MAC instructions; and
the multi-RAT CU circuitry processing the 5GNR MAC instructions with a 5GNR PHY-H and responsively generating and transferring 5GNR PHY-H instructions for delivery to a 5GNR PHY-L in other DU circuitry.

US Pat. No. 10,609,117

TEMPORAL SHIFT OF OBJECT RESOLUTION AND OPTIMIZATION PRIORITY

Sprint Communications Com...

1. A method for transmitting messages in a communication network, the method comprising:storing, in a database, a first version of content in association with an identifier, the first version of content received in a first message from a first device via a first network condition, and the first version of content having a smaller file size than a second version of content;
providing a recipient device access to the first version of content via the identifier;
receiving a second message from the first device via a second network condition that has higher bandwidth than the first network condition;
parsing the second message to determine that (i) a temporal shifting message is being received and (ii) the second version of content is contained within the temporal shifting message, wherein based on determining that the message is a temporal shifting message, communicating the second message to a content provider such that the content provider receives and stores the second version of content and enhances the second version of content based on additional services available to the recipient device;
based on parsing the temporal shifting message, updating the first version of content with the second version of content contained within the temporal shifting message such that the second version of content is accessible via the identifier; and
providing the recipient device access to the second version of content via the identifier.

US Pat. No. 10,595,301

MANAGING SIGNALING RESOURCES USING HIDDEN PUBLIC LAND MOBILE NETWORK SIGNALS

Sprint Communications Com...

1. A method of operating a wireless access node to serve a wireless communication device over available wireless channels and over hidden wireless channels, the method comprising:the wireless access node wirelessly transmitting an available Public Land Mobile Network Identifier (PLMN ID) that is associated with the available wireless channels to the wireless communication device, wherein the wireless communication device hosts a data structure indicating that the available PLMN ID is available to the wireless communication device but not that the hidden PLMN ID is available to the wireless communication device;
the wireless access node wirelessly receiving the available PLMN ID from the wireless communication device and responsively exchanging wireless signals with the wireless communication device over the available wireless channels;
the wireless access node identifying a transition condition for the wireless communication device and responsively wirelessly transferring a Physical Cell Identifier (PCI) and the hidden PLMN ID to the wireless communication device, wherein the hidden PLMN ID is associated with the hidden wireless channels and wherein the available wireless channels and the hidden wireless channels comprise different portions of a frequency spectrum; and
the wireless access node wirelessly receiving the PCI and the hidden PLMN ID from the wireless communication device and responsively exchanging additional wireless signals with the wireless communication device over the hidden wireless channels.

US Pat. No. 10,575,194

CONTROLLING NETWORK LOAD

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when executed, perform a method for facilitating control of network loads, the method comprising:receiving, at a policy server, at least one communication comprising a first indication that a network load of a first base station operating in a network exceeds a network load threshold, wherein the at least one communication includes a second indication that a user device in communication with the first base station should transfer to a second base station, wherein a network load of the second base station does not exceed the network load threshold;
determining, at the policy server, that the user device should have its performance level modified in a communication session with the first base station instead of transferring to the second base station when the network load of the first base station exceeds the network load threshold and the network load of the second base station does not exceed the network load threshold, wherein the policy server's determination overrides the second indication that the user device in communication with the first base station should transfer to the second base station; and
based on the policy server's determination, modifying the performance level of the user device in the communication session with the first base station to at least partially reduce the network load on the first base station.

US Pat. No. 10,555,130

PRE-PROCESSING OF MOBILE COMMUNICATION DEVICE GEOLOCATIONS ACCORDING TO TRAVEL MODE IN TRAFFIC ANALYSIS

Sprint Communications Com...

1. A geolocating method of sorting geolocation data associated with a plurality of mobile communication devices into different travel modes, clustering the geolocation data according to different clustering algorithms based on the different travel modes of the geolocation data, determining travel routes traversed by the plurality of mobile communication devices based on the clustering of the geolocation data, and analyzing the intersections of points-of-interest (POIs) and the travel routes to determine a traffic flow at the POI, comprising:storing a map of travel routes in a first data store, where each of the travel routes is one of a highway travel route, a light rail travel route, or a footpath travel route;
storing geolocation data associated with a plurality of mobile communication devices in a second data store, where each item of geolocation data identifies a location of a mobile communication device, identifies the mobile communication device, identifies a cell site to which the mobile communication device attached to, and identifies a timestamp comprising a date and a time;
designating some of the geolocation data stored in the second data store by an analysis application executing on a computer system as associated with a light rail travel mode based on the identity of the cell site contained in the geolocation data;
designating some of the geolocation data stored in the second data store by the analysis application as associated with a footpath travel mode based on the location contained in the geolocation data;
inferring a speed of travel associated with some of the geolocation data by the analysis application;
designating some of the geolocation data stored in the second data store by the analysis application as associated with a highway travel mode based on the inferred speed of travel associated with the geolocation data;
designating some of the geolocation data stored in the second data store by the analysis application as associated with the footpath travel mode based on the inferred speed of travel associated with the geolocation data;
clustering the geolocation data associated with the light rail travel mode by the analysis application based on a light rail travel mode clustering algorithm;
clustering the geolocation data associated with the footpath travel mode by the analysis application based on a footpath travel mode clustering algorithm;
clustering the geolocation data associated with the highway travel mode by the analysis application based on a highway travel mode clustering algorithm;
for each of the plurality of mobile communication devices, determining travel routes traversed by the mobile communication device based on the clustering of the geolocation data by the analysis application and based on the map of travel routes; and
for each of a plurality of POIs, determining by the analysis application a number of different mobile communication devices that intersect with the POI based on the travel routes traversed by the mobile communication devices, whereby traffic flows at the geolocation of the POIs are determined.

US Pat. No. 10,383,124

METHOD TO TRANSMIT DATA PACKETS ON A NETWORK

Sprint Communications Com...

1. A system for transmitting data packets in a wireless communications network, the system comprising:a TCP region tagger configured to tag a first data packet with a first TCP region and a second data packet with a second TCP region based on a size of the respective first and second data packets; and
a network controller configured to:
assign the first data packet to a first signal carrier spectrum having a first time interval between uplink transmissions and an established network uplink/downlink ratio, wherein the first data packet is assigned to the first signal carrier spectrum based on it having more frequent uplinks with the network based on the tagged first TCP region indicating a session maturity and data packet size that is below a threshold, and
assign the second data packet to a second signal carrier spectrum having a second time interval between uplink transmissions and the established network uplink/downlink ratio, wherein the second data packet is assigned to the second signal carrier spectrum based on it having less frequent uplinks with the network based on the tagged second TCP region indicating a session maturity and data packet size that is above the threshold.

US Pat. No. 10,299,185

WIRELESS RELAY QUALITY-OF-SERVICE BASED ON RELAY-DELIVERED MEDIA SERVICES

Sprint Communications Com...

1. A method of operating a wireless data network to control Quality-of-Service (QoS) delivered to wireless relays, the method comprising:the wireless relays attaching to wireless base stations in the wireless data network and transferring configuration data indicating their media services to the wireless data network;
a relay QoS control system in the wireless data network receiving the configuration data, allocating individual QoS levels to the wireless relays based on their media services, and transferring the individual relay QoS levels for the wireless relays to the wireless base stations;
the wireless relays exchanging user data with wireless user devices to deliver the media services; and
some of the wireless base stations directing some of the wireless relays to re-attach to other ones of the wireless base stations based on the individual QoS levels for the wireless relays.

US Pat. No. 10,171,290

SYSTEMS AND METHODS FOR REAL-TIME CORRECTION OF CORE APPLICATIONS

Sprint Communications Com...

1. A method for correcting connectivity failures of core applications on a user equipment (UE), the method comprising:detecting, via execution of a client on a processor of the UE, a plurality of request-reply message sequences between a core application of a plurality of core applications and a corresponding server;
learning, by execution of the client, a set of reply messages within the plurality of request-reply message sequences that are coming from the corresponding server and not producing a connection error with the corresponding server;
based on the set of reply messages, creating, by execution of a ghost client on the processor of the UE, a series of ghost replies that each mimics a reply that is one of the set of learned reply messages coming from the corresponding server;
retaining, by execution of the client within a memory of the UE, the series of ghost replies;
subsequent to retaining the series of ghost replies, detecting, by the client, that the core application has exceeded a threshold number of request messages that are unanswered by the corresponding server due to a lack of reply by the corresponding server; and
based on the detecting, feeding, by execution of the client, a ghost reply from the retained series to the core application.

US Pat. No. 10,148,340

MULTI-CORE COMMUNICATION SYSTEM TO SERVE WIRELESS RELAYS AND USER EQUIPMENT

Sprint Communications Com...

1. A method of operating a multi-core data communication system to serve a wireless relay from a relay core system and to serve User Equipment (UE) from a UE core system, the method comprising:the relay core system establishing a relay bearer between the wireless relay and the relay core system over a wireless base station;
the wireless relay receiving a wireless data request from the UE and responsively transferring an S1-MME UE data request for delivery to the UE core system and indicating a UE Identifier (ID), a Relay ID, and a Relay Core ID;
a UE Mobility Management Entity (UE-MME) in the UE core system receiving the S1-MME data request having the relay ID and the relay core ID and the UE core system responsively transferring a core-to-core message indicating the Relay ID for delivery to the relay core system;
the relay core system receiving the core-to-core message and responsively transferring a base station message directing the wireless base station to modify the relay bearer;
the UE MME in the UE core system responsively transferring an S11 bearer request having the relay ID and the relay core ID to a UE Serving Gateway (UE-SGW) in response to the S1-MME data request;
the UE-SGW receiving the S11 bearer request and responsively transferring an S5 bearer request having the relay ID and the relay core ID to a UE Packet Data Network Gateway (UE-PGW);
the UE-PGW receiving the S5 bearer request and responsively transferring a Gx bearer request having the relay ID and the relay core ID to a UE Policy Charging and Rules Function (UE-PCRF); and
the wireless relay exchanging wireless data with the UE over a UE bearer, the wireless relay and the wireless base station exchanging the user data over the UE bearer, the wireless base station and the relay core system exchanging the user data over the UE bearer, and the relay core system and the UE core system exchanging the user data over the UE bearer, wherein the UE bearer traverses the modified relay bearer between the wireless relay and the relay core system.

US Pat. No. 10,143,028

WIRELESS COMMUNICATION SYSTEM TO IMPLEMENT INDEPENDENT WIRELESS CONNECTIONS

Sprint Communications Com...

1. A method of operating a wireless communication system to implement independent wireless connections for data communication services comprising a voice call and a video call, the method comprising:receiving a request indicating one of the data communication services and a User Equipment (UE) Identifier (ID) for a UE indicating a media call and responsively selecting a number of unassigned independent wireless connections and assigned independent wireless connections for the UE based on the UE ID and the data communication service;
configuring multiple wireless communication devices to use the assigned independent wireless connections and reserve the established number of unassigned independent wireless connections with multiple wireless access points and responsively monitoring the assigned independent wireless connections; and
detecting a data communication loss on one or more of the assigned independent wireless connections and responsively selecting ones of the unassigned independent wireless connections and assigning the UE to the selected ones of the unassigned independent wireless connections.

US Pat. No. 10,136,377

MOBILE DEVICE HANDOFF OPTIMIZATION

Sprint Communications Com...

1. A method for optimizing a seamless transition of a mobile device from a 3G network to a 4G network in a failure scenario, the method comprising:determining that the mobile device is initiating a first handoff attempt to access the 4G network;
accessing a subscriber profile database to determine that a packet gateway identifier associated with the mobile device is not stored on the subscriber profile database;
based on the packet gateway identifier not being stored on the subscriber profile database, denying the first handoff attempt by the mobile device to access the 4G network; and
based on the first handoff attempt being denied, triggering an authorization request that comprises the packet gateway identifier associated with the mobile device, the packet gateway identifier being forwarded to the subscriber profile database.

US Pat. No. 10,123,223

SYSTEM AND METHOD FOR EVALUATING OPERATIONAL INTEGRITY OF A RADIO ACCESS NETWORK

Sprint Communications Com...

1. A method of evaluating operational integrity of a radio access network, comprising:using a computer including a transceiver, a processor, a non-transitory memory, and an application stored in the non-transitory memory that, when executed by the processor, performs steps comprising:
receiving, via a single user selected discrete option that is coarse grained and selectable from a plurality of discrete options, a satisfaction metric from a mobile communication device,
wherein the satisfaction metric corresponds to one of the plurality of discrete options and the satisfaction metric provides a user's level of satisfaction with a communication quality between the radio access network and the mobile communication device,
determining a mobile communication device identifier that is associated with the mobile communication device,
in response to receiving the satisfaction metric via the single user selected discrete option from the mobile communication device, determining a network connection identifier, a geolocation of the mobile communication device, and a history of wireless communication between the mobile communication device and the radio access network, wherein the history spans a predefined timeframe, and identifies a communication type including at least one of voice communication or data communication,
analyzing the network connection identifier and history of wireless communication,
responsive to analyzing the network connection identifier and history of wireless communication, associating the satisfaction metric with the communication type that includes at least one of voice communication or data communication,
in response to receiving the satisfaction metric via the single user selected discrete option from the mobile communication device, initiating a network communication test between the radio access network and another mobile communication device that did not provide the satisfaction metric to a server of a communication service provider associated with the radio access network,
responsive to receiving a result of the network communication test, generating a message comprising the result of the network communication test, the satisfaction metric, the mobile communication device identifier, the network connection identifier, the geolocation of the mobile communication device, and the history of wireless communication, and
transmitting the message to the server.

US Pat. No. 10,116,571

NETWORK FUNCTION VIRTUALIZATION (NFV) MANAGEMENT AND ORCHESTRATION (MANO) WITH APPLICATION LAYER TRAFFIC OPTIMIZATION (ALTO)

Sprint Communications Com...

1. A method of operating a Network Function Virtualization (NFV) Management and Orchestration (MANO) data communication system to support an Application Layer Traffic Offload (ALTO) system for a Network Service (NS), the method comprising:MANO computer system circuitry processing an NFV MANO orchestrator and an NFV MANO Virtualized Infrastructure Manager (VIM) and responsively exchanging network data to support the NS;
the MANO computer system circuitry processing the NFV MANO orchestrator and an NFV MANO Virtual Network Function Manager (VNFM) and responsively exchanging function data to support the NS;
the MANO computer system circuitry processing the NFV MANO VIM and responsively exchanging the network data with NFV Infrastructures (NFVIs) that execute Virtual Machines (VMs) that instantiate Virtual Network Function (VNFs) to support the NS;
the MANO computer system circuitry processing the NFV MANO VNFM and responsively exchanging function data with the VNFs to support the NS;
the MANO computer system circuitry processing the NFV MANO orchestrator and responsively indexing some of the network data and the function data to generate NFV ALTO topology data that associates individual ALTO Provider Identifiers (PIDs) with individual ones of the NFVIs, that associates the individual ALTO PIDs with individual ones of the NFV VNFs, that associates an ALTO external domain with individual NFV Virtual Links (VLs), that associates the individual ones of the NFV VLs with individual NFVI resource usage, and that associates the individual ones of the NFV VLs with individual VL usage costs; and
the MANO computer system circuitry processing the NFV MANO orchestrator and responsively transferring the NFV ALTO topology data for delivery to the ALTO system.

US Pat. No. 10,083,098

NETWORK FUNCTION VIRTUALIZATION (NFV) VIRTUAL NETWORK FUNCTION (VNF) CRASH RECOVERY

Sprint Communications Com...

1. A method of operating a Network Function Virtualization (NFV) system to recover from a Virtual Network Function (VNF) crash, the method comprising:first NFV processing circuitry executing a VNF, and in response, the first NFV processing circuitry supporting a wireless data communication service and transferring VNF state data;
VNF memory circuitry receiving and storing the VNF state data;
Management and Orchestration (MANO) processing circuitry executing an NFV orchestrator and the MANO processing circuitry responsively detecting a crash of the VNF by failing to receive heartbeat messages from the crashed VNF and responsively retrieving the VNF state data for the crashed VNF from the VNF memory circuitry;
the MANO processing circuitry executing the NFV orchestrator and the MANO processing circuitry responsively directing second NFV processing circuitry to execute a new VNF to replace the crashed VNF based on the VNF state data;
the second NFV processing circuitry executing the new VNF based on the VNF state data and the second NFV processing circuitry responsively supporting the wireless data communication service and transferring additional VNF state data;
the MANO processing circuitry executing the NFV orchestrator, and in response to the VNF state data, the MANO processing circuitry establishing a new Hardware Root of Trust (HRoT) relationship between the new VNF in second NFV processing circuitry and an HRoT control system; and
the second NFV processing circuitry using a secret read-only HRoT key embedded in the second NFV processing circuitry to hash a random challenge from the HRoT control system and the second NFV processing circuitry and responsively transferring a hash result to the HRoT control system for hardware identity verification.

US Pat. No. 10,069,788

CONTROLLING A HIGH AVAILABILITY COMPUTING SYSTEM

Sprint Communications Com...

1. A method of providing a high availability computing service, comprising:monitoring a first computer system and a second computer system by a monitoring application executing on a third computer system, wherein the monitoring application executing on the third computer system is acting in a primary role, where the first computer system and the second computer system execute the same service application in a redundant configuration and wherein each redundant configuration is referenced by a common domain name;
monitoring the first computer system and the second computer system by a monitoring application executing on a fourth computer system, wherein the monitoring application executing on the fourth computer system is acting in a secondary role;
writing to a DNS resource record by the monitoring application having the primary role to a domain name system (DNS) server, where the DNS resource record is a DNS TXT record and indicates a last touched time, wherein writing to the DNS TXT record is performed according to dynamic DNS;
determining by the monitoring application having the primary role that the service application on the first computer system is not available;
in response to determining the service application on the first computer system is not available, writing one of a DNS A record or a DNS AAAA record that associates an IP address of the second computer system to the common domain name by the monitoring application having the primary role to a plurality of DNS servers, whereby the monitoring application having the primary role fails over the service application to the second computer system;
monitoring the DNS TXT resource record in the DNS server by the monitoring application executing in the secondary role, wherein the monitoring comprises reading the last touched time in the DNS TXT record and determining an age of the last touched time by comparing a current time;
detecting by the monitoring application executing in the secondary role that the last touched time in the DNS TXT resource record in the DNS server is more than a predefined period of time old based on the monitoring; and
in response to detecting that the DNS TXT resource record last touched time is more than the predefined period of time old, writing to the DNS TXT resource record by the monitoring application executing on the fourth computer system to indicate that the monitoring application executing on the fourth computer system has assumed the primary role.

US Pat. No. 10,034,134

LOCATION DETERMINATION FOR USER EQUIPMENT (UE) THAT ARE SERVED BY WIRELESS REPEATER CHAINS

Sprint Communications Com...

10. A wireless base station to locate User Equipment (UE) that is served by a wireless repeater chain that is served by the wireless base station, the wireless base station comprising:a base station data processing system configured to maintain a data structure that indicates geographic locations for wireless repeaters in the wireless repeater chain; and
a base station wireless data transceiver configured to wirelessly exchange user data with the wireless repeater chain responsive to the UE exchanging the user data with one of the wireless repeaters in the wireless repeater chain, to determine repeater hops in the wireless repeater chain between the wireless base station and the UE, to determine the wireless repeater serving the UE based on the repeater hops, and to indicate one of the geographic locations in the data structure for the one of the wireless repeaters serving the UE, wherein the base station data processing system is configured to determine the repeater hops in the wireless repeater chain between the wireless base station and the UE by determining Round Trip Delay (RTD) between the wireless base station and the UE.

US Pat. No. 10,028,323

WIRELESS NETWORK ACCESS POINT TO SELECT A DEVICE-TO-DEVICE COMMUNICATION MASTER FOR A DEVICE-TO-DEVICE COMMUNICATION GROUP

Sprint Communications Com...

1. A method of operating a wireless network access point to select a Device-to-Device (D2D) communication master, the method comprising:a wireless access point transceiver wirelessly receiving signal strength reports indicating signal strengths and wirelessly receiving buffer status reports indicating buffer capacities from multiple User Equipment (UEs) that form a D2D communication group;
wireless access point processing circuitry filtering the signal strengths for the D2D communication group based on a signal strength threshold and filtering the buffer capacities for the D2D communication group based on a buffer capacity threshold to identify a candidate set of the UEs;
the wireless access point processing circuitry determining buffer status reporting frequencies for the candidate set of the UEs and prioritizing the candidate set of the UEs based on the buffer status reporting frequencies to select one of the UEs having a lower one of the buffer status reporting frequencies as the D2D communication master for the D2D communication group, wherein the lower one of the buffer status reporting frequencies indicates a lower amount of UE errors; and
the wireless access point transceiver wirelessly transferring D2D signaling to the UEs in the D2D communication group that indicates the selected one of the UEs that is the D2D communication master for the D2D communication group.

US Pat. No. 9,949,304

MOBILE COMMUNICATION DEVICE PROFOUND IDENTITY BROKERING FRAMEWORK

Sprint Communications Com...

7. A mobile communication device, comprising:a cellular radio transceiver;
a non-transitory memory integral with the mobile communication device, wherein the memory is apportioned into a plurality of sub-partitions;
a first wireless communication identity received from a first server via a wireless identity broker and stored in a first sub-partition of the non-transitory memory, wherein a wireless communication identity comprises a network access identity, a list of wireless communication systems to which the mobile communication device is authorized to attach, and a rule set for prioritizing among the wireless communication systems identified in the list, and wherein the wireless identity broker mediates transport of the first wireless communication identity to the non-transitory memory;
a second wireless communication identity received from a second server via the wireless identity broker and stored in a second sub-partition of the non-transitory memory, wherein the second wireless communication identity is different from the first wireless communication identity, and wherein the wireless identity broker mediates transport of the second wireless communication identity to the non-transitory memory;
a processor; and
an application stored in the non-transitory memory that, when executed by the processor:
detects a triggering event, and
in response to the triggering event, selects the first wireless communication identity stored in the first sub-partition of the non-transitory memory or the second wireless communication identity stored in the second sub-partition of the non-transitory memory to be an active wireless communication identity of the mobile communication device, wherein the first sub-partition of the non-transitory memory is accessed based on a first sub-key and the second sub-partition of the non-transitory memory is accessed based on a second sub-key, and wherein the mobile communication device establishes a wireless communication link via the cellular radio transceiver based on the active wireless communication identity and only a single wireless communication identity is active on the mobile communication device at one time.

US Pat. No. 9,913,125

MOBILE DATA SERVICE CONTROL FOR A WIRELESS COMMUNICATION DEVICE

Sprint Communications Com...

1. A communication system to control a mobile data service for User Equipment (UE), the communication system comprising:
a Long Term Evolution (LTE) network configured to receive a registration request from the UE and responsively access an LTE
network data structure to identify a mobile data Access Point Name (APN), Extensible Mark-up Language (XML) Configuration
Access Protocol (XCAP) APN, and an Internet Multimedia Subsystem (IMS) APN for the UE, establish and maintain a mobile data
bearer responsive to the mobile data APN, establish an XCAP bearer responsive to the XCAP APN, and establish and maintain
an IMS bearer responsive to the IMS APN;

the LTE network configured to receive a first user instruction over the XCAP bearer to disable the mobile data service for
the UE and responsively release the mobile data bearer and modify the LTE network data structure to disable the mobile data
APN for the UE;

an IMS server system configured to exchange messages with the UE over the IMS bearer when the mobile data service is disabled;
and

the LTE network configured to receive a second user instruction over the XCAP bearer to enable the mobile data service for
the UE and responsively modify the LTE network data structure to enable the mobile data APN for the UE.

US Pat. No. 9,906,504

HARDWARE-TRUSTED ORTHOGONAL FREQUENCY DIVISION MULTIPLEX (OFDM) ACCESS TO A SHARED COMMON PUBLIC RADIO INTERFACE (CPRI)

Sprint Communications Com...

1. A method of operating an Orthogonal Frequency Division Multiplex (OFDM) data communication system comprising:
a trusted OFDM subsystem receiving trust challenge data and responsively encoding the trust challenge data with a physically-embedded
read-only trust key to generate encoded trust data and transferring the encoded trust data;

the trusted OFDM subsystem receiving user data from a trusted communication network into a trusted network receive buffer
system and responsively transferring a resource request to an access OFDM subsystem;

the access OFDM subsystem receiving the resource request and allocating and indicating trusted OFDM resource blocks to the
trusted OFDM subsystem;

the trusted OFDM subsystem scheduling the user data using the trusted OFDM resource blocks and responsively transferring the
user data from the trusted network receive buffer system to a trusted Common Public Radio Interface (CPRI) transmit buffer
system; and

the trusted OFDM subsystem transferring the user data from the trusted CPRI transmit buffer system to a CPRI communication
system.

US Pat. No. 9,877,213

INTEGRATED MINIMIZATION OF DRIVE TEST (MDT) AND TICKETING IN A MOBILE COMMUNICATION NETWORK

Sprint Communications Com...

1. A method of identifying and remediating wireless communication issues, comprising:
receiving a ticket from a mobile communication device by a ticket server computer, where the ticket identifies the mobile
communication device and identifies a service issue category and where the ticket server computer manages a wireless communication
network ticketing system;

storing the ticket in a ticket data store by the ticket server computer;
transmitting the mobile communication device identity and the service issue category of the ticket from the ticket server
computer to a resolution server computer, where the resolution server computer is part of an operation subscriber subsystem
that comprises a core element management system (core EMS), a home subscriber system (HSS), and a radio access network element
management system (RAN EMS);

analyzing the service issue category by the resolution server computer;
based on the analyzing of the service issue category, initiating a minimization of drive test (MDT) in a wireless communication
network by the resolution server computer, where the wireless communication network provides wireless communication service
to the mobile communication device and where the wireless communication network comprises a plurality of cell sites;

analyzing the results of the MDT by the resolution server computer; and
based on the analyzing of the results of the MDT, initiating a corrective action in the mobile communication device or in
the wireless communication network.

US Pat. No. 9,872,304

PACKET FRAGMENTATION FOR VOLTE COMMUNICATION SESSIONS

Sprint Communications Com...

1. A method of operating a wireless access node to facilitate Voice over Long Term Evolution (VoLTE) communication sessions,
the method comprising:
exchanging VoLTE packets with a wireless communication device during a VoLTE communication session;
receiving a scheduling request and responsively issuing a scheduling grant with a number of hybrid automatic repeat requests
(HARQs);

calculating a quality of service (QoS) score based on a communication quality of the VoLTE communication session after issuing
the scheduling grant;

when the QoS score falls below a threshold value, applying a higher level of fragmentation to the VoLTE packets, and
when the higher level of fragmentation applied to the VoLTE packets reaches a predetermined highest level, then increase the
number of HARQs by one which reaches a maximum number of HARQs.

US Pat. No. 9,818,104

SECURE ONLINE CREDIT CARD TRANSACTIONS

SPRINT COMMUNICATIONS COM...

1. A method of completing a transaction using proxy credit card information comprising:
initiating, via a radio transceiver of a mobile device, a transaction with a computer system associated with a merchant or
payee;

generating, in a secure element of the mobile device comprising a non-transitory memory and by executing an application that
configures a processor of the mobile device to execute a mobile device algorithm, proxy credit card information based on original
credit card information stored in the non-transitory memory of the secure element on the mobile device, wherein the proxy
credit card information comprises a proxy credit card number that is different from the original credit card information,
and wherein the secure element comprises a chip embedded on the mobile device that provides security during the transaction;

receiving, via an interface on the mobile device, user input which defines at least one usage rule that limits use of the
proxy credit card information to the merchant or payee;

in response to the generating and the receiving, creating based on the user input, writing in the secure element, and associating,
by the application of the mobile device, the at least one usage rule with the proxy credit card information, wherein the at
least one usage rule limits use of the proxy credit card information to the merchant or payee;

communicating, by the mobile device over a wireless network to an issuer server associated with the original credit card information
in response to the generating and the creating, an indication that the proxy credit card information was created in the secure
element and communicating the at least one usage rule created in the secure element, wherein the mobile device communicates
with the issuer server independent from the computer system of the merchant or payee;

receiving, by the issuer server, the indication from the mobile device;
in response to the issuer server receiving the indication from the mobile device, generating, by the issuer server independently
executing an issuer server algorithm, the same proxy credit card information based on the original credit card information
independently of the mobile device generating the proxy credit card information, wherein the mobile device algorithm and the
issuer server algorithm are the same algorithm stored and executed on different devices;

associating, by the issuer server, the independently generated proxy credit card information with a user corresponding to
the original credit card information;

providing, by the application of the mobile device, the proxy credit card information generated in the secure element to the
computer system associated with the merchant or payee for payment in the transaction;

receiving, by the issuer server from the computer system of the merchant or payee, the proxy credit card information that
was provided to the computer system of the merchant or payee from the mobile device;

using, by the issuer server, the independently generated proxy credit card information to determine that the proxy credit
card information generated by the mobile device is the same as the independently generated proxy credit card information based
on the association;

enforcing, by the issuer server, the at least one usage rule received from the mobile device by determining that the transaction
is in conformance with the at least one usage rule;

verifying, by the issuer server, the transaction based on the determination, by the issuer server, that the proxy credit card
information generated by the mobile device is the same as the independently generated proxy credit card information and based
on the determination, by the issuer server, that the transaction is in conformance with the at least one usage rule; and

completing, by using the proxy credit card information provided to the computer system of the merchant or payee from the mobile
device, the transaction based at least on the determination, by the issuer server, that the proxy credit card information
generated by the mobile device is the same as the independently generated proxy credit card information by the issuer server
and based at least on the determination, by the issuer server, that the transaction is in conformance with the at least one
usage rule.

US Pat. No. 9,807,599

MANAGEMENT OF WIRELESS COMMUNICATION DEVICES BY A MOBILE CONTROL DEVICE

Sprint Communications Com...

1. A method of operating a mobile control device to manage wireless communication devices, the method comprising:
in the mobile control device, receiving a selection for a user-type and receiving a map instruction indicating a geographic
area map, selecting a geographic area on the geographic area map, and in response, displaying the geographic area map indicating
multiple wireless communication devices of the selected user-type that are located within the selected geographic area;

in the mobile control device, receiving touch-display inputs through the geographic area map selecting at least one of the
multiple wireless communication devices of the selected user-type within the selected geographic area;

in the mobile control device, receiving an activation instruction indicating a command to at least allow or block wireless
communications between other wireless communication devices that are in the selected geographic area and the selected at least
one of the multiple wireless communication devices and in response, wirelessly transferring an activation message indicating
the activation instruction for the selected at least one of the multiple wireless communication devices for delivery to a
wireless network control system.

US Pat. No. 9,807,669

IDENTIFYING COMMUNICATION PATHS BASED ON PACKET DATA NETWORK GATEWAY STATUS REPORTS

Sprint Communications Com...

1. A method of operating a mobility management entity to route communications based on service capacity, the method comprising:
receiving a plurality of status reports indicating subscriber capacity information from a plurality of packet data network
gateways;

identifying a communication request for a wireless communication device;
determining a communication path for the wireless communication device based on the plurality of status reports from the plurality
of packet data network gateways by identifying an available packet data network gateway for the communication path with enough
capacity to handle the communication request based on the subscriber capacity information; and

initiating a communication for the wireless communication device via the communication path;
wherein determining the communication path for the wireless communication device based on the plurality of status reports
from the plurality of packet data network gateways comprises:

performing a domain name system procedure to identify a default packet data network gateway for the communication request;
determining whether the default packet data network gateway meets a capacity criteria based on a status report for the default
packet data network gateway;

if the default packet data network gateway meets the capacity criteria, identifying the default packet data network gateway
as the available packet data network gateway for the communication path; and

if the default packet data network gateway does not meet the capacity criteria, identifying an alternative packet data network
gateway that meets the capacity criteria as the available packet data network gateway for the communication path.

US Pat. No. 9,788,247

LONG TERM EVOLUTION (LTE) COMMUNICATION SYSTEM TO TRANSFER COMMUNICATIONS FROM NON-LTE TO LTE NETWORKS

Sprint Communications Com...

1. A method of operating a Long Term Evolution (LTE) communication network wherein an LTE gateway system exchanges LTE registration
data and Internet Protocol (IP) Multimedia Subsystem (IMS) registration data with User Equipment (UE) over a non-LTE communication
network, the method comprising:
the LTE gateway system transferring networking data for the UE to an LTE control system responsive to an IMS media session
for the UE and transferring an instruction to remove the networking data for the UE from the LTE control system responsive
to termination of the IMS media session, wherein the networking data characterizes the IMS media session over the non-LTE
communication network through the LTE gateway system;

the LTE control system receiving an LTE initial access message for the UE and if the networking data characterizes the IMS
media session over the non-LTE communication network through LTE gateway system, then transferring a session transfer message
to the LTE gateway system to switch communication access for the UE from the non-LTE communication network to the LTE communication
network and responsively detach from the non-LTE network; and

the LTE control system receiving an LTE session termination message for the UE and responsively transferring an LTE reattach
message to the LTE gateway system to force the UE to reattach to the LTE communication network.

US Pat. No. 9,768,547

WATER AND INGRESS RESISTANT AUDIO PORT

Sprint Communications Com...

1. A water-resistant port for an accessory plug, comprising:
a port casing comprising an interior wall that defines an interior portion of the port casing;
a moveable seal assembly;
one or more electrical connectors moveably coupled to the interior wall of the port casing;
a spring structure coupled to the interior wall and to the moveable seal assembly; and
a guide extending from the interior wall through a center of the spring structure,
wherein the moveable seal assembly is moveable between a relaxed position and an engaged position by insertion of the accessory
plug,

wherein, in the relaxed position, the moveable seal assembly provides a seal against a side wall of the port casing, and
wherein, in the engaged position, the spring structure is compressed and the accessory plug contacts the one or more electrical
connectors.

US Pat. No. 9,760,542

PROVIDING CONTEXT-SENSITIVE WRITING ASSISTANCE

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed by a computing device, facilitate a method of providing context-specific writing assistance, the method comprising:
providing writing assistance that is tuned to a communication style of a writer of a textual communication presently being
composed by the writer, wherein the writing assistance is tuned by using a corpus of words that conform to the communication
style associated with a specific recipient in a communication profile of the writer, and wherein the communication profile
associates a corpus of words with each of multiple people with which the user has previously communicated in writing; and

building, by way of the computing device, the communication profile by analyzing written communications received from each
of the multiple people and sent to each of the multiple people from the writer, wherein the communication profile gives more
weight to the written communications sent to each of the multiple people, and wherein the communication profile associates
different corpuses of words for different types of communication mediums on a per-recipient basis, thereby allowing the writing
assistance to be tuned to the specific recipient and communication medium.

US Pat. No. 9,763,180

PEER-TO-PEER WIRELESS DEVICE COMMUNICATION OVER A WIRELESS LOCAL AREA NETWORK

Sprint Communications Com...

1. A method of operating a wireless communication device in communication with a wireless wide area communication network
(WWAN) and a wireless local area communication network (WLAN), comprising:
receiving a request from a user to initiate a communication with a second wireless communication device, and responsively
determining whether the second wireless communication device is in communication with the WLAN;

upon determining that the second wireless communication device is in communication with the WLAN, establishing the communication
with the second wireless communication device as a peer-to-peer communication over the WLAN; and

upon determining that the second wireless communication device is not in communication with the WLAN, establishing the communication
with the second wireless communication device over the WWAN.

US Pat. No. 9,712,999

DIGEST OF BIOGRAPHICAL INFORMATION FOR AN ELECTRONIC DEVICE WITH STATIC AND DYNAMIC PORTIONS

Sprint Communications Com...

1. A method of obtaining information about a mobile communication device from a radio frequency identity (RFID) chip in the
mobile communication device, the method comprising:
reading, by a near field communication (NFC) scanner, a biographical digest from the RFID chip in the mobile communication
device, wherein the RFID chip comprises non-transitory memory areas corresponding to a static portion and a dynamic portion
of the biographical digest, and wherein information in the static portion cannot be altered but information in the dynamic
portion is alterable prior to a device status of the dynamic portion indicating a value of dead or terminated;

based on reading the biographical digest from both the static portion and dynamic portion, determining, by a computer system
that is communicatively coupled to the NFC scanner, at least three items of information about the mobile communication device
selected from: a location where the mobile communication device was manufactured, an initial software version installed in
the mobile communication device by a manufacturer, a current preferred roaming list (PRI) stored in the mobile communication
device, a current software version installed in the mobile communication device, an activation date of the mobile communication
device, a phone number of the mobile communication device, an international mobile station equipment identity (IMEI) of the
mobile communication device, and a mobile equipment identity (MEID) of the mobile communication device; and

providing, by the computer system to a display, the at least three items of information about the mobile communication device
determined by the computer system.

US Pat. No. 9,705,794

DISCOVERY OF NETWORK ADDRESS ALLOCATIONS AND TRANSLATIONS IN WIRELESS COMMUNICATION SYSTEMS

Sprint Communications Com...

1. A method of operating a wireless user device served by a wireless network that performs Network Address Translation (NAT),
the method comprising:
the wireless user device exchanging user data with the wireless network using a device IP address wherein a network gateway
in the wireless network exchanges the user data with external systems using an external IP address;

the wireless user device receiving network information that indicates a network server, querying the network server for IP
address translation data, and receiving the IP address translation data from the network server wherein the IP translation
data indicates that the external IP address is associated with the device IP address for the wireless user device and wherein
the network server receives some of the IP address translation data from the network gateway; and

the wireless user device transferring content delivery footprint data for delivery to a content delivery network wherein the
content delivery footprint data indicates media content stored on the wireless user device and indicates that the external
IP address is associated with the device IP address for the wireless user device.

US Pat. No. 9,690,100

WIRELESS COMMUNICATION SYSTEM WITH A LIQUID CRYSTAL DISPLAY EMBEDDED IN AN OPTICAL LENS

Sprint Communications Com...

1. A wireless communication system comprising:
a transparent lens system;
a frame coupled to the transparent lens system and configured to position the transparent lens system in front of at least
one eye of a user when the frame is mounted on a head of the user;

a Liquid Crystal Display (LCD) system embedded within the transparent lens system and configured to render images and transparency
in response to display control signals, wherein the LCD system is further configured without backlighting and without reflective
backing; and

a wireless transceiver configured to wirelessly receive the display control signals and to transfer the display control signals
to the LCD system.

US Pat. No. 9,691,182

SYSTEM AND METHOD FOR ADAPTIVE DISPLAY RESTRICTION IN A HEADSET COMPUTER

Sprint Communications Com...

1. An apparatus for improving the safety of a driver while driving a car, the apparatus comprising;
a headset for combining an unobstructed view with a virtual overlay, the virtual overlay created from a virtual output provided
to the headset, the virtual output having one or more portions;

a memory;
a processor;
at least one input device coupled to the memory and capable of delivering input device data to the memory;
an application stored in the memory that when executed by the processor determines characteristics of the driver or an environment
around the driver based upon the input device data from the at least one input device, wherein the characteristics of the
driver and the environment around the driver comprise at least one of: ambient light or position and direction of the eyes
of a wearer of the headset, and at least one of: location and position of the car, motion of the car, relative position of
the wearer of the headset within the car, or volume and relative speed of traffic around the car; and

a controller program that:
activates controlling features in response to a determination that at least one of: the wearer of the headset is in a driver's
seat of the car, the car is in motion, or the car is running, and

in response to the activation of the controlling features and based on the determined characteristics, at least one of: blocks
a portion of the virtual output to the virtual overlay, alters at least a portion of the virtual output to the virtual overlay,
or adds a new portion to the virtual output.

US Pat. No. 9,668,274

DYNAMIC ALLOCATION OF FREQUENCY BANDS TO USER DEVICES

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer executable instructions embodied thereon that, when
executed, perform a method of dynamically allocating frequency bands transmitted by a base station to a user device to optimize
signal strength at the user device, the method comprising:
determining a distance from the base station to the user device, wherein determining the distance from the base station to
the user device comprises: 1) measuring a time-offset from the user device's signal to a GPS-based time associated with the
base station, and 2) based on the time-offset, determining the distance the user device is located from the base station;
and

determining if the distance is greater than or less than a predefined distance threshold, wherein:
when the distance is less than the predefined distance threshold:
calculating a penetration loss factor for the user device, wherein when the penetration loss factor is above a predefined
penetration loss threshold, allocating a lower-frequency band to the user device, and wherein when the penetration loss factor
is below the predefined penetration loss threshold, allocating a higher-frequency band to the user device; and

when the distance is greater than the predefined distance threshold, allocating the lower-frequency band to the user device.

US Pat. No. 9,613,208

TRUSTED SECURITY ZONE ENHANCED WITH TRUSTED HARDWARE DRIVERS

Sprint Communications Com...

1. An electronic device, comprising:
at least one processor that includes:
a normal partition of the at least one processor that is associated with a permissive sector, and
a secure partition of the at least one processor that is associated with a trusted security zone, the trusted security zone
providing a hardware root of trust and an operating system for the secure partition that runs separate from a normal partition
operating system, wherein the trusted security zone ceases execution of non-trusted applications in the permissive sector
during execution of at least one trusted application in the secure partition;

a non-transitory memory that includes:
a normal partition of the non-transitory memory that is associated with the permissive sector, the permissive sector allowing
non-trusted applications to invoke hardware drivers stored in the normal partition, and

a secure partition of the non-transitory memory that is associated with the trusted security zone and comprises a trusted
version of a hardware driver that provides information about an uncompromised state associated with the hardware driver, wherein
the trusted security zone is separate from the permissive sector;

the hardware driver associated with a version that is stored in the non-transitory memory and comprises a current state, wherein
the hardware driver is at least initially stored in the normal partition of the non-transitory memory;

a first trusted application, stored in the secure partition of the non-transitory memory associated with the trusted security
zone, configured to invoke the hardware driver in response to activation instructions; and

a second trusted application, stored in the secure partition of the non-transitory memory associated with the trusted security
zone, that when executed by the secure partition of the at least one processor, configures the secure partition of the at
least one processor to:

amass the information about the uncompromised state associated with the hardware driver,
store, in the secure partition of the non-transitory memory, the information about the uncompromised state associated with
the hardware driver,

perform, in response to receipt of the activation instructions by the first trusted application, a confidence check on the
version of the hardware driver stored in the permissive sector and compare, in response to receipt of the activation instructions
by the first trusted application, the trusted version of the hardware driver with the version of the hardware driver stored
in the permissive sector and the information about the uncompromised state associated with the hardware driver with the current
state of the hardware driver, and

enable, based on the confidence check and in response to a result of the comparison indicating that the version of the hardware
driver stored in the permissive sector corresponds with the trusted version of the hardware driver and the current state of
the hardware driver corresponds to the uncompromised state associated with the hardware driver, the first trusted application
stored and executed in the secure partition of the trusted security zone to invoke the hardware driver, wherein the hardware
driver is invoked by the first trusted application responsive to the enablement by the second trusted application.

US Pat. No. 9,609,556

FACILITATING NETWORK TRANSFER BASED ON NETWORK CONDITIONS

Sprint Communications Com...

1. A method for facilitating providing network transfer messages based on network conditions, the method comprising:
receiving one or more network-condition data indicating that a mobile device has transferred to a network node providing minimal
network coverage to the mobile device, wherein the network node is associated with a first network being used by the mobile
device; and

in response to receiving the one or more network-condition data, providing a network transfer message that provides an indication
for the mobile device to seek a second network, the network transfer message being transmitted to the mobile device based
on reception of the one or more network-condition data indicating that the mobile device transferred to the network node associated
with the first network providing minimal network coverage to the mobile device.

US Pat. No. 9,594,471

SYSTEM AND METHOD FOR INSERTING ADDITIONAL ICON CONTENT INTO A DISPLAY SCREEN

Sprint Communications Com...

1. A system for displaying non-disruptive additional content via a display screen, comprising:
a mobile communication device comprising an application and the display screen, wherein the display screen displays at least
one previously inserted program icon at a display screen location of a plurality of display screen locations; and

the application, that when executed on the mobile communication device,
identifies the receipt of a virtual pre-load pack by the mobile communication device, wherein the virtual pre-load pack comprises
at least one virtual pre-load program icon and a virtual pre-load pack template that provides a proposed display screen location
of the plurality of display screen locations for the insertion of the at least one virtual pre-load program icon, wherein
the proposed display screen location is based on a display screen insertion priority level that authorizes the at least one
virtual pre-load program icon for insertion into a display screen location of the plurality of display screen locations comprising
at most a predetermined level of display frequency, and wherein the display frequency comprises the number of times that the
display screen location is viewed;

compares the virtual pre-load pack template with a current display screen template, wherein the current display screen template
provides the display screen location of the at least one previously inserted program icon;

identifies, based on the comparison of the virtual pre-load pack template with the current display screen template, that the
proposed display screen location of the at least one virtual pre-load program icon overlaps with the display screen location
of the at least one previously inserted program icon;

locates and selects, in response to identifying that the proposed display screen location of the at least one virtual pre-load
program icon overlaps with the display screen location of the at least one previously inserted program icon, an unoccupied
display screen location of the plurality of display screen locations for the insertion of the at least one virtual pre-load
program icon based on the comparison of the virtual pre-load pack template with the current display screen template, wherein
the unoccupied display screen location does not overlap with the display screen location of the at least one previously inserted
program icon, and wherein the unoccupied display screen location does not violate the display screen insertion priority level;
and

inserts the at least one virtual pre-load program icon in the unoccupied display screen location on the display screen without
overlapping the display of the at least one virtual pre-load program icon with the display of the at least one previously
inserted program icon and without violating the display screen insertion priority level.

US Pat. No. 9,591,434

VIRTUAL PRIVATE NETWORK (VPN) TUNNELING IN A USER EQUIPMENT (UE) BROKERED BY A RADIO FREQUENCY IDENTITY (RFID) CHIP COMMUNICATIVELY COUPLED TO THE USER EQUIPMENT

Sprint Communications Com...

1. A user equipment (UE), comprising:
a motherboard comprising a communication bus;
a cellular radio frequency transceiver connected to the communication bus of the motherboard;
a processor connected to the communication bus of the motherboard;
a radio frequency identity (RFID) chip connected to the communication bus of the motherboard, wherein the RFID chip comprises
an RFID near field communication (NFC) transceiver, an RFID internal processor, an RFID internal memory, and an RFID application
stored in the RFID internal memory, wherein the RFID chip provides wireless read access to the RFID internal memory and provides
write access to the RFID internal memory to the communication bus of the motherboard;

a memory connected to the communication bus of the motherboard; and
an application stored in the memory that, when executed by the processor, receives a request from the RFID chip to establish
a virtual private network (VPN) tunnel via the cellular radio frequency transceiver based on information encapsulated in the
request,

wherein the RFID application, when executed by the RFID internal processor,
receives a message from an NFC device via the RFID NFC transceiver, wherein the message comprises a command to open the VPN
tunnel and an authentication token, and

responsive to receiving the message from the RFID NFC transceiver, sends the request to establish the VPN tunnel to the application
executed on the processor, and

wherein the request sent from the RFID chip to the application executed on the processor further comprises the authentication
token, and the VPN tunnel is established based on the authentication token.

US Pat. No. 9,559,911

FORECASTING LINK UTILIZATION BETWEEN POINTS OF PRESENCE IN AN IP NETWORK

Sprint Communications Com...

1. One or more nontransitory computer-readable media for causing one or more computing devices to perform a method for forecasting
the deviation of future link utilization between a pair of points of presence in an IP network, the method comprising:
collecting prior link utilization information, the prior link utilization information identifying the aggregate link utilization
between the pair of points of presence as a function of time;

modeling the prior link utilization using wavelet multiresolution analysis;
identifying as a deviation approximation curve a curve from the wavelet multiresolution analysis that models the deviation
of prior link utilization around the long-term trend of the link utilization;

constructing at least one linear time series model of the deviation approximation curve; and
forecasting future deviation of link utilization using one of the at least one linear time series models of the deviation
approximation curve.

US Pat. No. 9,344,144

PASSIVE INTERMODULATION (PIM) COAXIL PROTECTION CIRCUIT

Sprint Communications Com...

1. A method for implementing a passive intermodulation (PIM) coaxial protection circuit, comprising:
implementing a coaxial cable in a wireless telecommunication operation, where the coaxial cable is connected to a radio source
at a first coaxial connector and the coaxial cable is connected to an antenna system at a second coaxial connector;

providing a direct current (DC) of at least fifty milliamps to a center core of the coaxial cable, where a delivery of the
direct current causes a DC voltage between a metallic shield of the coaxial cable and the center core of the coaxial cable;

forming the PIM coaxial protection circuit between the radio source, the coaxial cable, and the antenna system in the wireless
telecommunication operation with the direct current and the DC voltage; and

removing PIM with the PIM coaxial protection circuit.

US Pat. No. 9,319,379

METHODS AND SYSTEMS OF GENERATING A UNIQUE MOBILE DEVICE IDENTIFIER

Sprint Communications Com...

1. A method of generating a user identifier, the method comprising:
identifying, by a client stored in a memory of a device and executable by a processor of the device, that the client does
not have a device identifier associated with the device, wherein the device identifier is a device system identifier unique
to the device;

requesting, by the client, the device identifier from the device in response to identifying that the client does not have
the device identifier;

receiving, by the client, the device identifier;
masking, by the client, the device identifier with client logic; and
generating, by the client, the user identifier based on the masking, wherein the user identifier is unique to the device,
and wherein the user identifier is attached to one or more interactions with one or more applications used by the device.

US Pat. No. 9,319,407

AUTHENTICATION EXTENSION TO UNTRUSTED DEVICES ON AN UNTRUSTED NETWORK

Sprint Communications Com...

1. A method of an authentication server providing premium communications services via an untrusted network, comprising:
receiving a request from an untrusted communication device to access a premium communication service via the untrusted network,
wherein the request comprises an internet protocol (IP) address of a router; and

authenticating the untrusted communication device for a time period based on a time-to live value included in an earlier authentication
for a trusted mobile communication device, the authenticating comprising:

matching the IP address of the router from the request with a previously stored source IP address of the router associated
with a message received earlier from the trusted mobile communication device, wherein the trusted mobile communication device
is authorized to access the premium communication service via the untrusted network;

upon matching the IP address of the router from the request with the previously stored source IP address of the router associated
with the message sent by the trusted mobile communication device, obtaining a mobile directory number of the trusted mobile
communication device;

sending a message to the mobile directory number of the trusted mobile communication device via a cellular wireless communication
link, wherein the message requests a confirmation from the trusted mobile communication device before proceeding with authentication
of the untrusted communication device in accessing the premium communication service;

in response to the confirmation, determining whether the request is received within the time period indicated by the time-to-live
value included in the earlier authentication for the trusted mobile communication device;

upon determining that the request is received within the indicated time period, generating a cookie associated with the untrusted
communication device;

embedding a new time-to-live value associated with premium content access within the cookie, wherein the new time-to-live
value indicates a window of time for which extended authentication of the untrusted communication device is valid; and

sending the cookie to the untrusted communication device via the untrusted network, wherein the untrusted communication device
and the trusted mobile communication device are different devices.

US Pat. No. 9,307,400

SYSTEM AND METHOD OF EFFICIENT MOBILE DEVICE NETWORK BRAND CUSTOMIZATION

Sprint Communications Com...

1. A mobile communication device configured to initialize network brand startup animation, comprising:
a non-transitory memory comprising a pre-loaded static portion of a network brand startup animation, wherein the pre-loaded
static portion is common to a plurality of network brands compatible with the mobile communication device and comprises one
frame of a static background of the animation common to the plurality of network brands;

a processor; and
an application stored in the memory that, when executed by the processor at initial set-up of the mobile communication device,
determines whether a dynamic portion of the network brand startup animation exists on the mobile communication device based
on a network brand identity of the mobile communication device, and

in response to a determination that the mobile communication device does not have the dynamic portion, from a server through
an internet protocol (IP) address link stored in the non-transitory memory, wherein the dynamic portion is in the form of
scalable vector graphics (SVG) and comprises vector transformation information of changing portions of the animation from
frame to frame, and wherein the dynamic portion is associated with a particular network brand of the plurality of network
brands and comprises network brand specific objects of the animation and configuration parameters to change the background
of the pre-loaded static portion based on the network brand identity of the mobile communication device; and

a graphics processing application stored in the non-transitory memory that, when executed by the processor or by a graphics
processing unit;

rebuilds the animation at the mobile communication device by combining the dynamic portion and the pre-loaded static portion
in response to receiving a notification from the application.

US Pat. No. 9,183,606

TRUSTED PROCESSING LOCATION WITHIN A GRAPHICS PROCESSING UNIT

Sprint Communications Com...

1. A method of extending trust from a trusted processor to a graphics processing unit to expand trusted processing in an electronic
device, comprising:
inserting, from a trusted security zone of the electronic device, a trusted kernel into the graphics processing unit of the
electronic device, wherein the trusted security zone comprises a secure subsystem that is not accessible to hardware and software
components outside the secure subsystem, and wherein the graphics processing unit is outside of the secure subsystem;

monitoring, by the trusted kernel in the graphics processing unit, an activity level of the graphics processing unit;
suspending, via the trusted kernel in the graphics processing unit, graphics processing on at least a portion of the graphics
processing unit based on the monitoring;

repurposing, via the trusted kernel, at least the portion of the graphics processing unit to perform trusted processing by
bringing at least the portion of the graphics processing unit into the secure subsystem; and

releasing, by the trusted processor of the trusted security zone, at least the portion of the graphics processing unit from
trusted processing in the secure subsystem.

US Pat. No. 9,143,534

MANAGING MULTIMEDIA MESSAGES BEING TRANSMITTED TO RECIPIENT DEVICES OF FOREIGN NETWORKS

Sprint Communications Com...

1. One or more non-transitory computer-readable media having computer-executable instructions embodied thereon that, when
executed, perform a method for managing multimedia messages being transmitted to recipient devices of foreign networks, the
method comprising:
sending a multimedia message having a message size that exceeds a maximum allowable size supported or accepted by a foreign
telecommunications network of a recipient device;

receiving an indication that the sent multimedia message exceeded the maximum allowable size supported or accepted by the
foreign telecommunications network of the recipient device, wherein a determination that the sent multimedia message exceeded
the maximum allowable size supported or accepted by the foreign telecommunications network of the recipient device is performed
in a home network component of a home telecommunications network of a user device sending the multimedia message after the
computing component receives the multimedia message from the user device and prior to the multimedia message being communicated
from the home network component to the recipient device; and

receiving an error notification at the user device when a message type of the sent multimedia message does not match one or
more predetermined message types.

US Pat. No. 9,106,519

WIRELESS COMMUNICATION SYSTEM FOR DETERMINING USER EQUIPMENT QUALITY OF SERVICE

Sprint Communications Com...

1. A method of operating a wireless communication network to estimate a quality of service (QoS) for a user equipment (UE),
the method comprising:
processing a signal strength metric measured by the UE to select an RF coverage module;
processing the selected RF coverage module to determine an RF coverage score for the UE that represents an amount of overlapping
RF coverage and processing the RF coverage score to select an application module;

processing the selected application module to identify a service module;
processing the service module based on RF parameters measured by the wireless communication network to estimate the QoS for
the UE; and

transferring the estimated QoS for delivery to the UE.

US Pat. No. 9,072,016

CARE MESSAGING FOR MISSED OR DROPPED CALLS

Sprint Communications Com...

1. A method of processing a voice call from a mobile device to a customer care center, comprising:
placing, from a mobile device by a customer, a call to a customer care center;
ending the call;
after ending the call, displaying, on the mobile device, a customer query about whether the call was completed to the satisfaction
of the customer;

waiting, at the mobile device, for up to a predetermined time for the customer response to the customer query;
analyzing, on a processor at the customer care center, a status of a customer response by the customer to the customer query;
recording, by the mobile device, an undetermined status for the customer response if the predetermined time for a response
lapsed without a response by the customer to the customer query;

after ending the call, displaying, at the customer care center, a representative query to a representative about whether the
call was completed to the satisfaction of the representative;

receiving, at the customer care center, a representative response to the representative query from the representative;
determining that the call failed to complete successfully based on the customer response to the customer query and based on
the representative response to the representative query;

sending, by the customer care center, a customer care message to the mobile device in response to the status of the customer
response being undetermined and the representative response being negative; and

in response to the determination that the call failed to complete successfully, displaying, on the mobile device, the customer
care message.

US Pat. No. 9,066,201

CORRELATING MEDIA TYPES OF EMERGENCY COMMUNICATION REQUESTS

Sprint Communications Com...

1. A method of operating a wireless communication system which routes communications between user devices and emergency service
providers, the method comprising:
monitoring communication requests for emergency communication sessions between the user devices and service nodes of the emergency
service providers to determine which media types of the communication requests are supported by the service nodes receiving
the communication requests;

identifying geographic locations of the user devices for the communication requests;
identifying the service nodes receiving the communication requests;
creating a data structure correlating the geographic locations of the user devices and identifiers of the service nodes to
the media types supported by the service nodes;

receiving communication requests from further user devices for emergency communication sessions;
processing at least geographic locations of the further user devices and media types of the communication requests against
the data structure to determine which of the media types are supported by the geographic locations of the further user devices;
and

indicating to the further user devices which of the media types are supported for associated ones of the communication requests.

US Pat. No. 10,716,015

BROADCAST BEAM PROFILE ASSIGNMENT

Sprint Communications Com...

9. A method for assigning a broadcast beam profile to a particular cell site, the method comprising:determining an elevation associated with a cell site, a height associated with the cell site, and an elevation associated with one or more user devices that are positioned within a predetermined vicinity of the cell site, wherein antennas associated with the cell site are capable of beamforming;
based on the determining, assigning a broadcast beam profile to the cell site; and
based on the identified broadcast beam profile, adjusting a horizontal beam width and a vertical beam width of at least one antenna at the cell site.

US Pat. No. 10,643,234

PRE-LOADED NATIVE APPLICATION TRACKING SERVICE

Sprint Communications Com...

1. A method of communicating events generated by a mobile communication device, comprising:receiving a mobile advertisement by a mobile communication device, where the ad comprises a creative content associated with a mobile application, a uniform resource identifier (URI), and a tracking identity associated with the mobile application, where the URI references an event tracking client application that is installed as a pre-loaded native application on the mobile communication device and that executes on the mobile communication device;
presenting the creative content on a display of the mobile communication device;receiving a click input to the creative content by the mobile communication device;providing the tracking identity to the event tracking client application;
storing a log of the click input by the event tracking client application, where the log comprises the tracking identity;
transmitting a click message to an application store by the event tracking client application, where the click message comprises a uniform resource identifier (URI) identifying content associated with the mobile application stored by the application store;
establishing a reliable communication connection to an event tracking server by the event tracking client application;
transmitting the log of the click input by the event tracking client application via the reliable communication connection to the event tracking server;
receiving the log of the click input by the event tracking server;
accessing information in a data store by the event tracking server based on the tracking identity of the log of the click input, where the accessed information identifies a reference to a server; and
transmitting a notification of the click input and the tracking identity by the event tracking server to the server associated with the reference identified in the accessed information,
whereby the event of a click through on the mobile advertisement is communicated from the mobile communication device to stakeholders in a distribution chain of the mobile application and the mobile communication device is enabled to access information about the mobile application from the application store.

US Pat. No. 10,574,334

WIRELESS RELAY RADIO FREQUENCY (RF) INTERFERENCE MANAGEMENT

Sprint Communications Com...

1. A method of operating a wireless relay-comprising a wireless access point and a wireless network transceiver to manage Radio Frequency (RF) interference, the method comprising:the wireless access point wirelessly exchanging user data with wireless user devices using an amount of Carrier Aggregation Secondary Component Carriers (CA SCCs) in an RF band;
the wireless network transceiver exchanging the user data with a wireless communication network using a number of RF channels in the RF band;
the wireless access point determining when RF interference in the RF band exceeds an RF interference threshold and notifying the wireless network transceiver over an Ethernet switch when the RF interference in the RF band exceeds the RF interference threshold;
responsive to the excessive RF interference, the wireless access point wirelessly exchanging subsequent user data with the wireless user devices using a lower amount of the CA SCCs in the RF band;
responsive to the excessive RF interference, the wireless network transceiver wirelessly exchanging the subsequent user data with the wireless communication network using a lower number of RF channels in the RF band; and
the wireless network transceiver resetting when the RF interference stabilizes to an acceptable level.

US Pat. No. 10,546,222

UNIVERSAL INTEGRATED CIRCUIT CARD (UICC) TOOLKIT

Sprint Communications Com...

1. A universal integrated circuit card (UICC) smart card, comprising:a processor;
a non-transitory memory storing a plurality of instructions and associations between a plurality of short codes and the plurality of instructions, wherein at least some of the plurality of short codes and corresponding instructions enable downloading and installation of different features on a mobile communication device when one of the at least some of the plurality of short codes is input by a user;
a call control application stored in the non-transitory memory that, when executed by the processor,
receives dialed digits from a dialer application executing on the mobile communication device, wherein the UICC smart card is communicatively coupled to the mobile communication device and
distributes the dialed digits within the UICC smart card; and
an application stored in the non-transitory memory that, when executed by the processor,
receives the dialed digits distributed by the call control application,
identifies a short code included in the dialed digits,
selects instructions of the plurality of instructions stored in the non-transitory memory based on the identified short code, and
configures the UICC smart card by causing the processor to execute the selected instructions associated with the identified short code, wherein the selected instructions, when executed, launch a web browser on the mobile communication device and cause the web browser to access a uniform resource locator defined by the selected instructions and download and install a mobile application framework to the mobile communication device, and wherein the mobile application framework facilitates downloading and installing other mobile applications to the mobile communication device.

US Pat. No. 10,439,704

RELAY GATEWAY FOR WIRELESS RELAY SIGNALING IN A DATA COMMUNICATION NETWORK

Sprint Communications Com...

1. A method of operating a wireless data network to control wireless network relays that wirelessly exchange user signaling with user communication devices responsive to S1-MME signaling, the method comprising:the wireless relays wirelessly exchanging the user signaling with the wireless communication devices;
wireless access points wirelessly exchanging the user signaling and the S1-MME signaling with the wireless network relays;
the wireless access points exchanging the user signaling with data gateways and exchanging the S1-MME signaling with a relay signaling gateway;
a secure gateway exchanging the S1-MME signaling with the wireless network relays over a landline data communication network;
the secure gateway exchanging the S1-MME signaling with the relay signaling gateway;
the relay signaling gateway exchanging the S1-MME signaling with a Mobility Management Entity (MME); and
the MME controlling the wireless network relays over the S1-MME signaling.

US Pat. No. 10,397,182

METHOD AND PROCEDURE TO IDENTIFY A SOURCE ACROSS A NETWORK ADDRESS TRANSLATION DEVICE

Sprint Communications Com...

1. A computerized method carried out by at least one server having one or more processors for identifying, to an external device, a client device having an external IP address assigned by a Network Address Translation (NAT) device, the method comprising:receiving, at a NAT device, a request from a client device to access an external device;
providing, by the NAT device, an external IP address assigned to the client to access the external device;
communicating, by the NAT device, an internal IP address assigned to the client device and placed in an option field of the external IP address;
providing, by the NAT device, a second external IP address assigned to the client to access the external device;
communicating, by the NAT device, the internal IP address assigned to the client device in the option field of the external IP address;
receiving, at the NAT device, a second request from the external device to communicate with the client device, the second request including the internal IP address assigned to the client device;
receiving the second request, at the client mapping repository, for the identification of the client device; and
communicating, from the client mapping repository, the identification of the client device.

US Pat. No. 10,313,828

SYSTEMS AND METHODS FOR OPERATION OF NETWORK LOCATION SERVICES VIA TRANSLATION OF NETWORK TELEMETRY

Sprint Communications Com...

1. A system for maintaining location services, comprising:an application stored in a non-transitory memory of a telecommunications provider server and executable by a processor to:
receive a plurality of location information expressed as a plurality of network telemetry values from a plurality of user equipment (UEs);
store the plurality of location information;
receive a request for identification information of UE within a geographic location expressed using a plurality of latitudes and a plurality of longitudes;
translate the geographical location in the request from the plurality of latitudes and the plurality of longitudes into corresponding network telemetry values;
analyze the stored plurality of location information based on the translated geographical location in the request;
identify, based on the analysis, a portion of the plurality of location information that corresponds to the translated geographic location in the request and a subset of UEs of the plurality of UEs associated with the identified portion of the plurality of location information;
translate the identified portion of location information from network telemetry values into a corresponding plurality of latitudes and longitudes; and
transmit identification information of the subset of UEs associated with the identified portion of the plurality of location information to a party associated with the request.

US Pat. No. 10,292,037

MOBILE COMMUNICATION DEVICE AUTOMATED HOME LOCATION REGISTER (HLR) ASSIGNMENT ADAPTATION

Sprint Communications Com...

8. A user equipment (UE), comprising:a cellular radio transceiver;
a short-range radio transceiver;
a non-transitory memory;
a processor;
a display; and
an announcement application stored in the non-transitory memory that, when executed by the processor:
monitors and logs location information on the UE, where each location log entry comprises a location and a time-date value,
transmits a plurality of location log entries via the cellular radio transceiver to a computer system,
determines that the UE is communicating via the short-range radio transceiver to a wireless access point (AP),
after determining that the UE is communicating via the short-range radio transceiver to the AP, transmits an internet protocol (IP) address of the AP to the computer system in one of the plurality of location log entries, wherein the locations in the plurality of location log entries including the IP address of the AP are analyzed with reference to the time-date values in the plurality of location log entries, and wherein a plurality of location norms that capture location patterns for the UE over a period of time are determined based on the analysis,
receives an announcement responsive to the UE satisfying a geographical location constraint associated with the announcement based on one or more of the plurality of location norms for the UE, and
presents the announcement on the display.

US Pat. No. 10,117,073

NETWORK SOLUTIONS FOR BUILDING AND LEVERAGING CLUSTERS OF USER EQUIPMENT ASSOCIATED WITH A TELECOMMUNICATIONS SERVICE PROVIDER

Sprint Communications Com...

1. A system for determining clusters of telecommunications service provider subscribers, comprising:a plurality of enhanced node B (eNB) stations;
a server associated with a content provider;
a server comprising an application stored in a non-transitory memory and executable by a processor;
a data store in communication with the server and configured to receive pluralities of data at periodic intervals from a plurality of user equipments (UEs), wherein each UE of the plurality of UEs is in communication with at least one enhanced node B of the plurality of eNBs and the pluralities of data are associated with the plurality of UEs performance and activity;
wherein the application, when executed by the processor:
analyzes a first plurality of data from the data store based upon a UE location and a timestamp, wherein the timestamp is associated with a duration of time in the UE location;
forms, in response to the analysis, a plurality of clusters, wherein a first portion of the UEs of the plurality of UEs are members of a first formed cluster based on a determination that the first portion was associated with a first UE location and a first duration of time in the first UE location, wherein a second portion of UEs of the plurality of UEs are members of a second formed cluster based on a determination that the second portion of UEs of the plurality of UEs was associated with a second UE location for a second duration of time in the second UE location, wherein the first cluster further includes a third portion of UEs of the plurality of UEs when the third portion of UEs are determined to be outside of a first distance radius with respect to the first location, within a second distance radius with respect to the first location, and present outside of the first distance but within the second distance radius for a specified period of time with respect to a time threshold, and wherein the second distance radius is at least partially determined according to an error distance associated with determining the first location;
determines, subsequent to the parsing, a plurality of attributes of the members of the first formed cluster;
generates and stores a profile for the first formed cluster in the data store based on the determined plurality of attributes;
receives a request from the content provider server to transmit content to UEs of the plurality of UEs associated with a set of attributes;
analyzes, in response to receiving the request, at least some of the plurality of clusters based on a profile associated with each cluster;
determines a subset of clusters of the plurality of clusters associated with the set of attributes in the request; and
transmits the content to the UEs associated with the subset of clusters.

US Pat. No. 10,091,553

VIDEO CONTENT DISTRIBUTION SYSTEM AND METHOD

Sprint Communications Com...

1. A video content distribution method, comprising:transmitting, by a video content distribution server, an initial stream of a scalable video file associated with a video to a mobile communication device via a communication channel established using a cellular wireless communication protocol, wherein the initial stream of the scalable video file is associated with an initial resolution and initial frame rate, and wherein the initial stream of the scalable video file comprises data to enable playing of the video at the initial resolution and the initial frame rate;
playing, by the mobile communication device, at least a portion of the video at the initial resolution and the initial frame rate based on the initial stream of the scalable video file;
transmitting, by the video content distribution server, reconstruction data associated with the scalable video file to the mobile communication device, wherein the reconstruction data is data that is not a component of the scalable video file and indicates that other portions of the scalable video file are available and enables the mobile communication device to reconstruct the initial stream of the scalable video file and an additive stream of the scalable video file to form at least some of the scalable video file;
when the mobile communication device has established connectivity with a WiFi channel subsequent to the transmission of the initial stream of the scalable video file via the communication channel established using the cellular wireless communication protocol, transmitting, to the mobile communication device via the WiFi channel, the additive stream of the scalable video file that is associated with at least one of a second resolution and a second frame rate, wherein the additive stream is transmitted in a less secure manner than the initial stream, wherein the second resolution is a higher resolution relative to the initial resolution of the initial stream and the second frame rate is a higher frame rate relative to the initial frame rate of the initial stream, wherein the additive stream of the scalable video file comprises data to present the scalable video file at one or more of the second resolution and the second frame rate, wherein the additive stream of the scalable video file is unable to be played without the initial stream of the scalable video file, and wherein the initial stream and the additive stream are not playable together as the scalable video file at the one or more of the second resolution and the second frame rate after transmission of the initial stream and the additive stream without the reconstruction data;
reconstructing, by the mobile communication device, the entirety of the scalable video file based on the reconstruction data using the initial stream of the scalable video file and the additive stream of the scalable video file to enable playing the video at the at least one of the second resolution and the second frame rate; and
playing, by the mobile communication device via reliance on the initial stream and the additive stream of the scalable video file, at least a portion of the video at the at least one of the second resolution and the second frame rate based on the reconstructed at least some of the scalable video file, wherein the video is unable to be played at the at least one of the second resolution and the second frame rate without the initial stream and the additive stream of the scalable video file.

US Pat. No. 10,044,572

DYNAMIC ADDITION OF NETWORK FUNCTION SERVICES

Sprint Communications Com...

1. A method of dynamically adding a communication service function using network function virtualization during a communication session, the method comprising:receiving, at a first communication service function executing on a server that comprises a processor, a communication during a communication session on an active connection;
detecting, by the first communication service function, a communication service trigger in the communication;
determining a second communication service function based on the communication service trigger;
determining connection information for the second communication service function;
providing, by the first communication service function, the connection information to a controller, wherein the controller sets a session routing protocol for a communication flow for the communication session to include the second communication service function;
routing the communication from the first communication service function to the second communication service function; and
processing the communication with the second communication service function.

US Pat. No. 10,028,186

WIRELESS COMMUNICATION SYSTEM TO REDIRECT USE EQUIPMENT (UE) FROM A WIRELESS RELAY TO A DONOR BASE STATION

Sprint Communications Com...

1. A method of operating a wireless communication network to redirect User Equipment (UE) that is served by a wireless relay and that is located at a UE location, the method comprising:the wireless relay wirelessly exchanging user data with the UE using a Guaranteed Bit Rate (GBR) data bearer;
a Mobility Management Entity (MME) selecting donor base stations based on the UE location and transferring a list of the donor base stations and donor base station locations for delivery to the wireless relay;
the wireless relay wirelessly receiving the list of donor base stations and the donor base station locations;
the wireless relay detecting that the GBR data bearer has a delay measurement that exceeds a delay measurement threshold, and in response, the wireless relay selecting one of the donor base stations from the list of donor base stations based on the UE location and the donor base station locations; and
the wireless relay wirelessly transferring an instruction to the UE redirecting the UE to exchange additional user data with the selected one of the donor base stations.

US Pat. No. 10,021,250

LOCATION INFORMATION CONTROL FOR SESSION INITIATION PROTOCOL MESSAGES

Sprint Communications Com...

1. A method of operating a communication signaling processing system to handle Session Initiation Protocol (SIP) messaging, the method comprising:receiving a SIP INVITE message from a wireless communication device having a location information control value and a location value;
determining whether the location information control value indicates a first instruction value to correct the location value for the wireless communication device or a second instruction value to dummy the location value for the wireless communication device;
if the location information control value indicates the first instruction value to correct the location value for the wireless communication device, determining an abstracted-location value for the SIP INVITE message based on a current wireless access node servicing the wireless communication device, in the SIP INVITE message, replacing the location value with the abstracted-location value, and transferring the SIP INVITE message with the abstracted-location value to a SIP destination; and
if the location information control value indicates the second instruction value to dummy the location value for the wireless communication device, determining a dummy location value for the SIP INVITE message, wherein the dummy location value comprises a value unrelated to a location of the wireless communication device, in the SIP INVITE message, replacing the location value with the dummy location value, and transferring the SIP INVITE message with the dummy location value to a SIP destination.