I've experimented a bit in order to create a script to sort my TV's channels. The results look promising, but I found a behaviour I don't understand.
I retrieved the channel list and I found entries which, when I try to activate that channel, result in "Channel not installed" (or something along that meaning. My TV is set to German).
For example this one:
"name": "arte HD"
While this one is okay:
"name": "\u0015arte HD"
How can I - except from trying to switch to such a channel - know which entries are real? Why are there entries which are "uninstalled"? What is the meaning of the "\u0015" in front of most (but not all) channel names?
when your script works, consider releasing it here or at the Philips forum - I guess a lot of people are waiting for something like this :-)
Maybe someone on the forum will even make a jqueryUI GUI or something like this based on your script. (I could imagine having something like jquery demos->sortable->display as grid).
The u0015 is a unicode control character (see www.marathon-studios.com/unicode/U0015/Control ), but I\\\'m not sure what it actually means or is even used for.
It could be as well introduced by a JSON bug and not mean anything.
The duplicate entries appear when the network provider changes the stream contents and the TV updates the channel list. It seems old entries are (sometimes?) not updated, but a new entry is created.
Determining which entries are the right ones is not straigt-forward:
I don\\\'t exactly know how the ID \\\"1-78-11494-92-1-1019-10302\\\" is built up, but it looks like the last 5 numbers are the DVB SID (service id).
The other numbers maybe contain ONID and TSID, maybe also frequency/channel number or signal type.
To find out, which entry is the right one, you need to find out, which SID is the most recent one.
No idea if there is a more easy way, but you probably would have to look up tables on the internet.
www.satindex.de/typ/astra/kult/0/]Satindex.de might help, or the Primacom Digital Transportstream overview
(compare 0612 and 0912) - the old one had for Arte HD SID=11120, the new one has for Arte HD SID=10302.
Though, no idea on how to automate this.
You could also try to reset the TV settings and do a new \\\"search for channels\\\" run.
Maybe then, the old entries disappear.
It would be really helpful, if the Jointspace channel list had some additional information, such as date/time added or any other info to find out that kind of information.
Please keep us updated what you find out.
Your assumptions are not too bad.
See what I found with jointspace:
"name": "\u0015arte HD",
So the "Fingerprint/ID" is: ?-??-FREQUENCY-??-ONID-TSID-SID
I think the 1-78 (or a part of it) could mean "Astra 19.2E" as this is the only Satellite I receive.
I give up.
This whole "input/key" API is much to unreliable.
What I've tried is sending these keys
Find Options 6*CursorUp CursorDown CursorRight CursorUp CursorRight
This should select on my TV the "All" List.
Then I send:
But here already it fails as often just 2 CursorDown receive the TV leaving the cursor on "Rename" instead of "Sort".
I think this approach is no use. :(
thanks for trying this!
Good find on the Jointspace info. Now as you mention it - I remember seeing this also for DVB-C channels.
Still it seems there is no information on whether this channel is still valid, or am I missing something? Maybe someone from Philips can explain the other parts of the ID?
Too bad, keys are lost sometimes. Sounds similar like the problem when pressing keys too quickly on the remote that the TV ignores them.
Can you try to increase the delay between each key press?
(as it's scripted in the end, it probably doesn't matter if doing the sorting takes a little longer, as long as it works without user interaction).
As alternative, could you try sending keys through DirectFB/Voodoo instead of JSON? Might be worth a try to check if this works better.
You could use JSTx ( https://sourceforge.net/projects/jstx/ ) as simple example command line interface on how to do this.
I just finished a small script to push a text-based channel list to my TV
Feel free to test and use it.