A method and server for broadcasting a data file to talk groups. The method includes fragmenting the data file into data blocks and broadcasting the data blocks to the talk groups. The method also includes detecting a voice call start event based on a first change is a received voice call status. The method further includes detecting a voice call end event based on a second change in the received voice call status. The method also includes generating a backlog item. The backlog item includes a subset of data blocks of the plurality of data blocks. The subset of data blocks were broadcasted on the broadcast data channel after the voice call start event and prior to the voice call end event. The method further includes broadcasting the subset of data blocks on the broadcast data channel upon detection of the voice call end event.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of broadcasting a data file to a plurality of talk groups, the method comprising: fragmenting the data file into a plurality of data blocks; broadcasting the plurality of data blocks to the plurality of talk groups on a broadcast data channel; detecting a voice call start event based on a first change in a received voice call status, wherein the voice call start event identifies a beginning of a voice call including at least one talk group of the plurality of talk groups; detecting a voice call start event based on a second change in the received voice call status, wherein the voice call end event identifies a completion of the voice call including the at least one talk group; generating a backlog item, wherein the backlog item includes a subset of data blocks of the plurality of data blocks, wherein the subset of data blocks were broadcast on the broadcast data channel after the voice call start event and prior to the voice call end event; and broadcasting the subset of data blocks on the broadcast data channel upon detection of the voice call end event.
2. The method of claim 1 , further comprising: detecting a plurality of voice call start events based on a first plurality of changes of the received voice call status; detecting a plurality of voice call end events based on a second plurality of changes of the received voice call status; and generating a plurality of backlog items.
3. The method of claim 2 , further comprising: tracking a quantity of talk groups for each of the plurality of backlog items; and prioritizing rebroadcast, on the broadcast data channel, of the subset of data blocks for each of the plurality of backlog items based on the quantity of talk groups.
4. The method of claim 2 , further comprising: tracking a quantity of data blocks for each of the plurality of backlog items; and prioritizing rebroadcast on the broadcast data channel, of the subset of data blocks for each of the plurality of backlog items based on the quantity of data blocks.
5. The method of claim 2 , further comprising: tracking a quantity of talk groups for each of the plurality of backlog items; tracking a quantity of data blocks for each of the plurality of backlog items; and prioritizing rebroadcast, on the broadcast data channel, of the subset of data blocks for each of the plurality of backlog items based first on the quantity of talk groups and based second on the quantity of data blocks.
6. The method of claim 2 , wherein each of the plurality of backlog items includes a mutually exclusive subset of data blocks of the plurality of data blocks.
7. The method of claim 1 , further comprising broadcasting a backlog item page packet on a control channel while broadcasting the subset of data blocks on the broadcast data channel.
8. The method of claim 7 , wherein the backlog item page packet includes a data file identifier and a data block index.
9. The method of claim 7 , further comprising broadcasting the backlog item page packet on a voice channel while broadcasting the subset of data blocks on the broadcast data channel.
10. A data broadcast server configured to: fragment a data file into a plurality of data blocks; broadcast the plurality of data blocks to a plurality of talk groups on a broadcast data channel; detect a voice call start event based on a first change in a received voice call status, wherein the voice call start event identities a beginning of a voice call including at least one talk group of the plurality of talk groups; detect a voice call end event based on a second change in the received voice call status, wherein the voice call end event identifies a completion of the voice call including the at least one talk group; generate a backlog item, wherein the backlog item includes a subset of data blocks of the plurality of data blocks, wherein the subset of data blocks were broadcast on the broadcast data channel after the voice call start event and prior to the voice call end event; and broadcast the subset of data blocks on the broadcast data channel upon detection of the voice call end event.
11. The data broadcast server of claim 10 , wherein the data broadcast server is further configured to detect a plurality of voice call start events based on a first plurality of changes of the received voice call status; detect a plurality of voice call end events based on a second plurality of changes of the received voice call status; and generate a plurality of backlog items.
12. The data broadcast server of claim 11 , wherein the data broadcast server is further configured to track a quantity of data blocks for each of the plurality of backlog items; and prioritize rebroadcast, on the broadcast data channel, of the subset of data blocks for each of the plurality of backlog items based on the quantity of data blocks.
13. The data broadcast server of claim 11 , wherein the data broadcast server is further configured to track a quantity of data blocks for each of the plurality of backlog items; and prioritize rebroadcast, on the broadcast data channel, of the subset of data blocks for each of the plurality of backlog items based on the quantity of data blocks.
14. The data broadcast server of claim 11 , wherein the data broadcast server is further configured to track a quantity of talk groups for each of the plurality of backlog items; track a quantity of data blocks for each of the plurality of backlog items; and prioritize rebroadcast of the subset of data blocks on the broadcast data channel, for each of the plurality of backlog items based first on the quantity of talk groups and based second on the quantity of data blocks.
15. The data broadcast server of claim 11 , wherein each of the plurality of backlog items includes a mutually exclusive subset of data blocks of the plurality of data blocks.
16. The data broadcast server of claim 10 , wherein the data broadcast server is further configured to broadcast a backlog item page packet on a control channel while broadcasting the subset of data blocks on the broadcast data channel.
17. The data broadcast server of claim 16 , wherein the backlog item page packet includes a data file identifier and a data block index.
18. The data broadcast server of claim 16 , wherein the data broadcast server is further configured to broadcast the backlog item page packet on a voice channel while broadcasting the subset of data blocks on the broadcast data channel.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
June 12, 2015
August 22, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.