Segunda-feira, 9 de Março de 2009

O SAPO disponibiliza um Web Service com a programação de TV (incluindo actualmente todos os canais da oferta MEO).

Para consultar a lista de canais incluidos no sistema basta invocar o serviço em http://services.sapo.pt/EPG/GetChannelList.

 

A resposta será semelhante a:

    <GetChannelListResponse xmlns="http://services.sapo.pt/Metadata/EPG">
      <GetChannelListResult>
        <Channel>
          <Name>RTP1</Name>
          <Sigla>RTP1</Sigla>
        </Channel>
        <Channel>
          <Name>RTP2</Name>
          <Sigla>RTP2</Sigla>
        </Channel>
        ...
      </GetChannelListResult>
    </GetChannelListResponse>

Após termos a lista de canais podemos aceder à programação para um canal específico dentro de um intervalo temporal.

 

Para acedermos à programação do canal RTP2, por exemplo, usamos o serviço em http://services.sapo.pt/EPG/GetChannelByDateInterval.

 

O resultado será algo como:

 

    <GetChannelByDateIntervalResponse xmlns="http://services.sapo.pt/Metadata/EPG">
      <GetChannelByDateIntervalResult>
        <Name>RTP2</Name>
        <Sigla>RTP2</Sigla>
        <Programs>
          <Program>
            <Id>1600303</Id>
            <Title>Os Simpsons T17</Title>
            <Description>Homer trabalha como inspector de segurança na fábrica nuclear local; Marge tenta manter a paz na família; Bart é um rapaz endiabrado de 10 anos; Lisa, com 8, é inteligente, toca saxofone e segue a dieta vegetariana; e a bebé Maggie manifesta as emoções sugando desesperadamente a chucha.</Description>
            ...
            <StartTime>2009-03-08 20:00:00</StartTime>
            <Duration>3600</Duration>
            <EndTime>2009-03-08 21:00:00</EndTime>
          </Program>
        </Programs>
      </GetChannelByDateIntervalResult>
    </GetChannelByDateIntervalResponse>

Também podemos aceder a informação mais detalhada sobre um programa acedendo directamente ao mesmo (usando o identificador Id dentro de Program): http://services.sapo.pt/EPG/GetProgramById?programId=1600303.

 

A descrição do serviço e dos seus métodos encontra-se disponível em http://services.sapo.pt/Metadata/Service/EPG.



publicado por jac às 10:00
link do post | comentar | adicionar aos favoritos |

4 comentários:
De João a 14 de Março de 2009 às 21:53
E para quem quiser da ZON, verdadeiro formato XMLTV a funcionar em todas as plataformas abertas e algumas fechadas que usam este DTD, tem aqui um recurso que existe faz anos http://zon.xmltv.tekever.eu/epg.xml


De Rua Direita a 18 de Março de 2009 às 18:52
Boas:

Ontem depois de jantar estive a testar este web service e gostei. Rápido, simples e com um xml bem formatado.

2 notas:
1-Seria interessante obter horário em que um determinado programa vai para o ar nos próximos dias. Por exemplo o Programa Fatima da SIC http://services.sapo.pt/EPG/GetProgramById?programId=1618919 só informa a próxima vez que o programa vai para o ar mas poderia informar nos próximos 7 dias todas as emissões do programa. Talvez aceitar limites de data na pesquisa so programa.

2-Penso existerem erros na programação. Por exemplo:
http://services.sapo.pt/EPG/GetChannelByDateInterval?channelSigla=sicr&startDate=2009-03-18+00%3A00%3A00&endDate=2009-03-18+23%3A59%3A59
aqui o programa do Zé Pedro começa às 10:00 e termina às 15:35 não me parece que seja real.

No geral gosto e parece-me bem mais prático que o formato xmltv mas também cria uma dependência grande do servidor do sapo.


De miguel a 30 de Novembro de 2009 às 00:55
Alguem me sabe dizer como uso o xml? tentei usar o index que eles dao, tirei o comment de "GetChannelByDateInterval" mas n sai nada :p

o index é este: http://services.sapo.pt/CodeGeneration/PHP?wsdlUrl=http://services.sapo.pt/Metadata/Contract/EPG

cumpts


De higuita a 7 de Dezembro de 2010 às 02:07
Criei um pedido no xmltv para criar um grabber usando este webservice para criar um ficheiro xmltv para usar em centenas de aplicações e dispositivos já existentes e este foi o resultado:
http ://wiki xmltv .org index.php /Portugal

tenho usado nas ultimas semanas e funciona bem, apenas detecto um bug , mas é do webservice ...

o grabber usa o http :/ services.sapo.pt EPG /GetChannelListByDateInterval
para listar a programação de todos os canais, mas o resultado e que vários canais nem
sequer aparecem listados, por exemplo:

http :/ services.sapo.pt EPG /GetChannelListByDateInterval?channelSiglas=RTP1%2CRTP2%2CSIC%2CTVI%2CSICN%2CRTPN%2CSICM%2CSICR%2CRTPM%2CRTPA%2CRTPAC%2CRTPMD%2CSPTV1%2CSPTV2%2CSPTV3%2CEURSP%2CEURS2%2CEURSN%2CSLB%2CESPN%2CCART%2CMOTOR%2CESPNA%2CSAIL%2CPFC%2CRMTV%2CBARCA%2CMUTV%2CCHELS%2CINTER%2CDISNY%2CPANDA%2CBABYT%2CJJAM%2CTVC1%2CTVC2%2CTVC3%2CHOLLW%2CTCM%2CMGM%2CSONY%2CAXN%2CFOX%2CFNEXT%2CFOXCR%2CMTV%2CFUEL%2CANIMX%2CZONER%2CGLOBO%2CEURCH%2CT%26L%2CTVREC%2CLUXSD%2CDISCV%2CODISS%2CNGC%2CNGWIL%2CHIST%2CBIOG%2CTRAV%2CMCM%20T%2CMCM%20P%2CTRACE%2CVH1%2CNGMUS%2CAFRO%2CC-MUS%2CMEZZO%2CEURN%2CCNN%2CSKYN%2CFNEWS%2CBBC%20W%2CALJAZ%2CFR24I%2CTVE24%2CARTV%2CM6%2CFR24F%2CCNBC%2CBLOOM%2CTVGAL%2CTVEI%2CCUBAV%2CTV5%2CBBC%20E%2CDW-TV%2CM%20NOV%2CM%20POR%2CM%20POP%2CM%20DIS%2CM%20FNK%2CM%20ALT%2CM%20BRA%2CM%20ROM%2CM%20J%26B%2CM%20CLS%2CM%20AMB%2CM%20INF%2CNGHD%2CLUXHD%2CEURHD%2CHUST%2CBLUE%2CJUKE%2CDEMO%2CPLAY%2CVENUS%2CSPORT%20TV1%2CWINE%2CCCLUB%2CSTYLE%2CAXNHD%2CSPTHD%2CPOKER%2CBVAHD%2CMAGZ%2CDVR%2CTRAIL%2CVKIDS%2CVMAGZ%2CVIDEO%2CJOGOS%2CCANAL%2CCMAGZ%2CFOXHD%2CFX%2CFLIFE%2CQ%2CRTP1HD%2CINTER%2B%2CKSIC%2CSPIHD%2CPORTO%2CTVI24%2CSportTV%2CFASH%2CSPTVG%2CTBRAV%2CCA%C7AV%2CSPGHD%2CTVC%2CSYFHD%2CSYFY%2CFTVHD%2CFLN%2CTPA%2C1RUSS%2CRUSST%2CPROTV%2CBNT%2CPHCNE%2CSETAS%2CMAX%2CSABTV%2CMEO3D%2CRTP%20H%2CSIC%20H%2CTVI%20H%2CSICNH&startDate=2010-12-13%2010:00:00&endDate=2010-12-13%2015:00:00

retorna um XML valido, mas a TVI24, SIFY,PORTO nem sequer aparecem
na lista. Se alterar as datas e horas, o mesmo resultado. Se reduzir
a lista de canais um pouco, começam a aparecer os canais em falta.

Ou seja, parece-me que este webservice está a atingir algum
limite no numero de canais pedidos. Dado que não existe nenhuma
indicação para qualquer limite, parece-me ser um bug .

dado que não preciso da lista total, acabei por reduzir a lista de canais e para a lista que uso, parece perfeito.

Obrigado


Comentar post

Autores
pesquisar
 
Janeiro 2012
Dom
Seg
Ter
Qua
Qui
Sex
Sab

1
2
3
4
5
6
7

8
9
10
11
12
13
14

15
16
17
18
19
20
21

22
23
24
25
26
27
28

29
30
31



follow saposessions at http://twitter.com
posts recentes

Integração do Blog de Dev...

Vídeos da LXMLS

Evento HTML5 PT - 3 de No...

Prémios SAPO 2011

Extensão de prazo de subm...

Candidaturas SAPO Labs

Portuguese Perl Workshop

16 anos

Fun with Dead Languages -...

CPA 2011

arquivos

Janeiro 2012

Dezembro 2011

Outubro 2011

Setembro 2011

Agosto 2011

Julho 2011

Junho 2011

Maio 2011

Abril 2011

Março 2011

Janeiro 2011

Outubro 2010

Setembro 2010

Agosto 2010

Julho 2010

Junho 2010

Maio 2010

Abril 2010

Março 2010

Fevereiro 2010

Janeiro 2010

Dezembro 2009

Novembro 2009

Outubro 2009

Setembro 2009

Agosto 2009

Julho 2009

Junho 2009

Maio 2009

Abril 2009

Março 2009

Fevereiro 2009

tags

todas as tags

últ. comentários
Boas, Apesar deste post já ser um pouco antigo gos...
Por sinal já foi desenvolvido e encontra-se neste ...
A informação que faltava está agora aqui: http://d...
A informação já está aqui: http://developers.blogs...
Boas,Onde é que isto vai ser? Há algum critério pa...
blogs SAPO
subscrever feeds