Understanding logfile data from the GRE PSR-800
I have written a program that reads the logfiles from my PSR-800 and shows the RIDs using voice. One problem I've noticed is that the amount of data I'm actually keeping is only a very small amount compared to how much is actually provided in the logfiles themselves. The data is in plain text format, and I'd like to know how to differentiate when an RID changes channels, etc (joining and leaving talkgroups, affiliating, etc). I've pasted just the data for one RID below. Is there any way to understand these different functions using just the provided lines of text, or does the data have to be read in with binary format or something?
[User 2628225 (28 1A 81) switching from TG 13557 to 13558 and back to 13557]:
2012-04-02 16:27:50 P25:T00000001:S0000:CC07
25TSBK:2F 00 00 BE E0 02 77 28 1A 81 CE 2A
2012-04-02 16:27:50 P25:T00000001:S0000:CC07
25TSBK:2F 00 00 BE E0 02 77 28 1A 81 CE 2A
2012-04-02 16:40:20 P25:T00000001:S0000:CC07
25TSBK:80 00 04 21 1A 34 F5 28 1A 81 BA 21: TGID-13557 RId-281A81 VC- 453.762500
2012-04-02 16:40:22 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:40:22 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:40:23 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:40:23 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:40:23 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:41:45 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:41:46 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:41:47 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:41:47 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:41:48 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:03 P25:T00000001:S0000:CC07
25TSBK:00 00 04 25 3E 34 F5 28 1A 81 AC 7A: TGID-13557 RId-281A81 VC- 460.387500
2012-04-02 16:53:04 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:05 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:05 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:06 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:06 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:07 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:07 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:07 P25:T00000001:S0000:CC07
25LC:00 00 04 00 34 F5 28 1A 81
2012-04-02 16:53:17 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F6 28 1A 81 F7 46
2012-04-02 16:53:17 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F6 28 1A 81 F7 46
2012-04-02 16:54:03 P25:T00000001:S0000:CC07
25TSBK:80 00 44 25 0C 34 F6 28 1A 81 81 8E: TGID-13558 RId-281A81 VC- 460.075000
2012-04-02 16:54:18 P25:T00000001:S0000:CC07
25TSBK:80 00 44 21 1A 34 F6 28 1A 81 D7 2D: TGID-13558 RId-281A81 VC- 453.762500
2012-04-02 16:54:18 P25:T00000001:S0000:CC07
25TSBK:80 00 44 21 1A 34 F6 28 1A 81 D7 2D: TGID-13558 RId-281A81 VC- 453.762500
2012-04-02 16:55:07 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F5 28 1A 81 6C 9A
2012-04-02 16:55:07 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F5 28 1A 81 6C 9A
2012-04-02 17:09:44 P25:T00000001:S0000:CC07
25TSBK:2C 00 02 77 28 1A 81 28 1A 81 A0 4B
2012-04-02 17:09:44 P25:T00000001:S0000:CC07
25TSBK:2C 00 02 77 28 1A 81 28 1A 81 A0 4B
2012-04-02 17:09:44 P25:T00000001:S0000:CC07
25TSBK:A8 00 00 34 F8 34 F5 28 1A 81 88 AE
2012-04-02 17:09:44 P25:T00000001:S0000:CC07
25TSBK:A8 00 00 34 F8 34 F5 28 1A 81 88 AE
2012-04-02 17:31:54 P25:T00000001:S0000:CC07
25TSBK:AC 00 02 77 28 1A 81 28 1A 81 44 7F
2012-04-02 17:31:54 P25:T00000001:S0000:CC07
25TSBK:AC 00 02 77 28 1A 81 28 1A 81 44 7F
2012-04-02 17:31:54 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F5 28 1A 81 6C 9A
2012-04-02 17:31:54 P25:T00000001:S0000:CC07
25TSBK:28 00 00 34 F8 34 F5 28 1A 81 6C 9A
What I'd like to do is use this data to actually follow users through their channel setups as they change channels and affiliate with different groups, etc.
My program currently shows this (Of course, I have the RIDs & TGs run thru filters to label them):
HPD Patrol 8225 (2628225)
2012-04-02 16:40:20 HPD Dispatch
2012-04-02 16:53:03 HPD Dispatch
2012-04-02 16:54:03 HPD Ch 2
2012-04-02 16:54:18 HPD Ch 2
The end goal is to have something like this, similar to Unitrunker's output:
2628225 joins 13557
2628225 transmits 13557
2628225 leaves 13557
2628225 joins 13558
2628225 transmits 13558
2628225 leaves 13558
2628225 joins 13557
...and so on...
Any help?