Channel Service
What is this?
See Services API
Channel Service API List
| API Command | POST Required? | Description |
| GetChannelInfoList | No | Get a list of configured channels. |
| GetChannelInfo | No | Get info on a specific channel. |
| UpdateDBChannel | Yes | Update a specific channel's database information. |
| AddDBChannel | Yes | Add a new channel to the database. |
| RemoveDBChannel | Yes | Remove a particular channel from the database. |
| GetVideoSourceList | No | Get all video sources. Note, usernames/passwords are included. |
| GetVideoSource | No | Get individual video source. |
| UpdateVideoSource | Yes | Change a specific setting value for a specific video source. |
| AddVideoSource | Yes | Add a new video source. |
| RemoveVideoSource | Yes | Remove a specific video source. |
| GetDDLineupList | No | Get Data Direct lineup. |
| FetchChannelsFromSource | No | Get a list of channels for a specific source. |
| GetVideoMultiplexList | No | Get a list of all video multiplexes. |
| GetVideoMultiplex | No | Get the video multiplexes for a specific multiplex ID. |
| GetXMLTVIdList | No | Get a list of XMLTVIDs for a given source ID. |
Channel APIs
GetChannelInfoList
The GetChannelInfoList API takes the following arguments:
- SourceID (Required)
- Parameter Type: Integer
- The source ID of the channel of interest.
- StartIndex (Optional)
- Parameter Type: Integer
- Value of the first index to retrieve (zero based.)
- Count (Optional)
- Parameter Type: Integer
- Total number of channels to retrieve.
- OnlyVisible (Optional)
- Parameter Type: Bool
- Only show visible channels?
- This parameter is introduced with 0.28. Presume set false to preserve 0.27 behaviour. Its presence does not break 0.27.
- Details (Optional)
- Parameter Type: Bool
- This parameter is introduced with 0.28.
- If false it only displays a subset of parameters. ChanId, ChanNum, Callsign, IconURL and ChannelName.
- Set true to preserve 0.27 behaviour. Its presence does not break 0.27.
- ChannelGroupId (Optional)
- Parameter Type: Integer
- This parameter is introduced with 30.0.
- If set the channel list will only contain channels in the given channel group.
- OrderByName (Optional)
- Parameter Type: Bool
- This parameter is introduced with 30.0.
- If true the channel list will be sorted by channel name. The default is to sort by channel number
- GroupByCallsign (Optional)
- Parameter Type: Bool
- This parameter is introduced with 30.0.
- If true the channel list will be grouped by CallSign. The default is to group by ChanId.
Example Query:
Example Return:
<ChannelInfoList version="1.0" serializerVersion="1.1">
<StartIndex>1</StartIndex>
<Count>1</Count>
<CurrentPage>2</CurrentPage>
<TotalPages>32</TotalPages>
<TotalAvailable>32</TotalAvailable>
<AsOf>2013-02-04T03:02:13Z</AsOf>
<Version>0.27.20130130-1</Version>
<ProtoVer>77</ProtoVer>
<ChannelInfos>
<ChannelInfo>
<ChanId>1053</ChanId>
<ChanNum>5_3</ChanNum>
<CallSign>NBC5-US</CallSign>
<IconURL/>
<ChannelName>NBC5-US</ChannelName>
<MplexId>5</MplexId>
<TransportId>1001</TransportId>
<ServiceId>7</ServiceId>
<NetworkId>0</NetworkId>
<ATSCMajorChan>5</ATSCMajorChan>
<ATSCMinorChan>3</ATSCMinorChan>
<Format>ATSC</Format>
<Modulation>8vsb</Modulation>
<Frequency>563000000</Frequency>
<FrequencyId>29</FrequencyId>
<FrequencyTable>default</FrequencyTable>
<FineTune>0</FineTune>
<SIStandard>atsc</SIStandard>
<ChanFilters/>
<SourceId>1</SourceId>
<InputId>0</InputId>
<CommFree>0</CommFree>
<UseEIT>false</UseEIT>
<Visible>false</Visible>
<XMLTVID/><DefaultAuth/>
<Programs/>
</ChannelInfo>
</ChannelInfos>
</ChannelInfoList>
Note that 0.28pre returns true or false rather than 1 or 0 for CommFree.
Note 30.0 added 'ChannelGroups' to the output if Details is true which is a comma separated list of ChannelGroupIds a channel belongs to.
Note 30.0 added 'Inputs' to the output if Details is true which is a comma separated list of InputIds (encoders) a channel can be received on.
Note: version 31 introduced a new field <ExtraVisible> with values 'Not Visible' or 'Visible'
GetChannelInfo
The GetChannelInfo API takes the following arguments:
- ChanID (Required)
- Parameter Type: Integer
- Specific channel ID, e.g. 1021.
Example Query:
http://BackendServerIP:6544/Channel/GetChannelInfo?ChanID=1002
Example Return:
<?xml version="1.0" encoding="UTF-8"?>
<ChannelInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.06" serializerVersion="1.1">
<ChanId>1002</ChanId>
<ChanNum>2</ChanNum>
<CallSign>BBC TWO</CallSign>
<IconURL></IconURL>
<ChannelName>BBC TWO</ChannelName>
<MplexId>1</MplexId>
<TransportId>4164</TransportId>
<ServiceId>4287</ServiceId>
<NetworkId>9018</NetworkId>
<ATSCMajorChan>0</ATSCMajorChan>
<ATSCMinorChan>0</ATSCMinorChan>
<Format></Format>
<Modulation></Modulation>
<Frequency>490000000</Frequency>
<FrequencyId>23</FrequencyId>
<FrequencyTable>default</FrequencyTable>
<FineTune>0</FineTune>
<SIStandard>dvb</SIStandard>
<ChanFilters></ChanFilters>
<SourceId>1</SourceId>
<InputId>0</InputId>
<CommFree>0</CommFree>
<UseEIT>true</UseEIT>
<Visible>true</Visible>
<XMLTVID></XMLTVID>
<DefaultAuth>fp.bbc.co.uk</DefaultAuth>
<Programs/>
</ChannelInfo>
Note: version 31 introduced a new field <ExtraVisible> with values 'Not Visible' or 'Visible'
UpdateDBChannel
The UpdateDBChannel API is a POST operation which requires a form with the following arguments:
- ATSCMajorChannel
- ATSCMinorChannel
- CallSign
- ChannelID
- ChannelName
- ChannelNumber
- DefaultAuthority
- ExtraVisible (introduced with version 31)
- Format
- FrequencyID
- Icon
- MplexID
- ServiceID
- SourceID
- UseEIT
- XMLTVID
- Visible
Missing values may take unintended default values.
Example Return:
<?xml version="1.0" encoding="UTF-8"?><bool>true</bool>
AddDBChannel
The AddDBChannel API is a POST operation:
Arguments and response are as per UpdateDBChannel.
RemoveDBChannel
The RemoveDBChannel API is a POST operation which requires a form with only one argument:
- ChannelID
GetVideoSourceList
The GetVideoSourceList API takes the following arguments:
None.
Example Query:
http://192.168.1.67:6544/Channel/GetVideoSourceList
Example Return:
<?xml version="1.0" encoding="UTF-8"?>
<VideoSourceList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1">
<AsOf>2015-05-26T20:06:49Z</AsOf>
<Version>0.27.20141016-1</Version>
<ProtoVer>77</ProtoVer>
<VideoSources>
<VideoSource>
<Id>1</Id>
<SourceName>EIT</SourceName>
<Grabber>eitonly</Grabber>
<UserId></UserId>
<FreqTable>default</FreqTable>
<LineupId></LineupId>
<Password></Password>
<UseEIT>true</UseEIT>
<ConfigPath></ConfigPath>
<NITId>-1</NITId>
</VideoSource>
</VideoSources>
</VideoSourceList>
GetVideoSource
The GetVideoSource API takes the following arguments:
SourceID
Example Query:
http://192.168.1.67:6544/Channel/GetVideoSource?SourceID=1
Example return:
<<?xml version="1.0" encoding="UTF-8"?>
<VideoSource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1">
<Id>1</Id>
<SourceName>EIT</SourceName>
<Grabber>eitonly</Grabber>
<UserId></UserId>
<FreqTable>default</FreqTable>
<LineupId></LineupId>
<Password></Password>
<UseEIT>true</UseEIT>
<ConfigPath></ConfigPath>
<NITId>-1</NITId>
</VideoSource>
UpdateVideoSource
The UpdateVideoSource API takes the following arguments:
AddVideoSource
The AddVideoSource API takes the following arguments:
RemoveVideoSource
The RemoveVideoSource API takes the following arguments:
GetDDLineupList
The GetDDLineupList API takes the following arguments:
FetchChannelsFromSource
The FetchChannelsFromSource API takes the following arguments:
GetVideoMultiplexList
The GetVideoMultiplexList API takes the following arguments:
SourceID (mandatory) StartIndex, Count (optional).
Example query: http://192.168.1.67:6544/Channel/GetVideoMultiplexList?SourceID=1&StartIndex=1&Count=1
Example response:
<?xml version="1.0" encoding="UTF-8"?>
<VideoMultiplexList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" serializerVersion="1.1">
<StartIndex>1</StartIndex>
<Count>1</Count>
<CurrentPage>2</CurrentPage>
<TotalPages>6</TotalPages>
<TotalAvailable>6</TotalAvailable>
<AsOf>2015-07-23T09:35:03Z</AsOf>
<Version>0.27.20141016-1</Version>
<ProtoVer>77</ProtoVer>
<VideoMultiplexes>
<VideoMultiplex>
<MplexId>2</MplexId>
<SourceId>1</SourceId>
<TransportId>8197</TransportId>
<NetworkId>9018</NetworkId>
<Frequency>514000000</Frequency>
<Inversion>a</Inversion>
<SymbolRate>0</SymbolRate>
<FEC></FEC>
<Polarity></Polarity>
<Modulation></Modulation>
<Bandwidth>8</Bandwidth>
<LPCodeRate>1/2</LPCodeRate>
<HPCodeRate>2/3</HPCodeRate>
<TransmissionMode>8</TransmissionMode>
<GuardInterval>1/32</GuardInterval>
<Visible>false</Visible>
<Constellation>qam_64</Constellation>
<Hierarchy>n</Hierarchy>
<ModulationSystem>1</ModulationSystem>
<RollOff></RollOff>
<SIStandard>dvb</SIStandard>
<ServiceVersion>21</ServiceVersion>
<UpdateTimeStamp>2012-04-18T07:50:51Z</UpdateTimeStamp>
<DefaultAuthority></DefaultAuthority>
</VideoMultiplex>
</VideoMultiplexes>
</VideoMultiplexList>
GetVideoMultiplex
The GetVideoMultiplex API takes the following arguments:
MplexID
Example query: http://192.168.1.67:6544/Channel/GetVideoMultiplex?MplexID=1
Example response:
<?xml version="1.0" encoding="UTF-8"?>
<VideoMultiplex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" serializerVersion="1.1">
<MplexId>1</MplexId>
<SourceId>1</SourceId>
<TransportId>4164</TransportId>
<NetworkId>9018</NetworkId>
<Frequency>490000000</Frequency>
<Inversion>a</Inversion>
<SymbolRate>0</SymbolRate>
<FEC></FEC>
<Polarity></Polarity>
<Modulation></Modulation>
<Bandwidth>8</Bandwidth>
<LPCodeRate>1/2</LPCodeRate>
<HPCodeRate>2/3</HPCodeRate>
<TransmissionMode>8</TransmissionMode>
<GuardInterval>1/32</GuardInterval>
<Visible>false</Visible>
<Constellation>qam_64</Constellation>
<Hierarchy>n</Hierarchy>
<ModulationSystem>1</ModulationSystem>
<RollOff></RollOff>
<SIStandard>dvb</SIStandard>
<ServiceVersion>11</ServiceVersion>
<UpdateTimeStamp>2012-04-18T07:47:54Z</UpdateTimeStamp>
<DefaultAuthority></DefaultAuthority>
</VideoMultiplex>
GetXMLTVIdList
The GetXMLTVIdList API takes the following arguments:
SourceID (Required)
Parameter Type: Integer
videosource ID number.
Example Query:
http://BE:6544/Channel/GetXMLTVIdList?SourceID=2
Example Return:
<StringList>
<String>value0</String>
<String>valueN</String>
</StringList>