Kiinnitetty keskustelu

Elisa Viihde API Devaus

  • 18 syyskuu 2018
  • 42 kommenttia
  • 11145 katselukerrat

Käyttäjätaso 7
Kunniamerkki +3
Tämä keskustelu on tarkoitettu API kehityksen teknisemmälle tiedonjaolle, eli lähinnä devaajille foorumiksi missä jakaa osaamista ja vinkkejä toisilleen.

Tänne voi myös ilmoitella API rajapinnassa ilmenevistä ongelmista ja bugeista.

API Info sisältää tietoa niille, jotka ovat kiinnostuneita liittymään devaajiin ja ohjeet API keyn hankkimiseen (sisältää myös sopimusten tulkinnasta paljon tietoa)
API Julkaisut ja bugiraportit on keskustelu, missä devaajat voivat julkaista omia sovelluksiaan ja infota näiden päivityksistä, tuolla voi myös ilmoitella bugeista mitä käyttäjäpuolelta havaitaan

API devauksen dokumentaatiot löytyy jatkossa GitHubista

42 kommenttia

Käyttäjätaso 3
Kovasti on yritetty korjata isommallakin porukalla mutta valitettavasti ongelmaa ei ole saatu ratkaisua.
Käyttäjätaso 7
Kunniamerkki +3
Mahdollinen ongelmakohta paikannettu ja toimenpide suoritettu, testatkaas @asmandos ja @st72 josko taas toimisi ja jos viitsitte niin kuitatkaa tänne myös niin tiedetään auttoiko 🙂
Käyttäjätaso 7
Kunniamerkki +3
Korjaus työn alla, jatkuu aamusta kun maiharimiehet ja -naiset saapuu taas hommiin. Pahoittelut häiriöstä! Eka ongelma saatiin jo niitattua mutta toinen sielllä vielä 403 errorin muodossa vaivaa
Tiukasti keskustelua seuranneena päätin tänään ottaa asiakseni saada nuo ohjelmat kuntoon.
Ajattelin, että tein jotain väärin kun ensin tosiaan tuo autentikointi ei toiminut ja sitten kun se alkoi toimimaan, niin heitti tuota erroria jatkuvasti.
Hienoa että @Patomiäs on ollut nyt hyvin aktiivinen asian suhteen. Kiitokset siitä. *thumps up*
Toivottavasti pääsisi huomenna jo testaamaan miten hommat toimii, mikäli asia saadaan korjattua.

Suurkiitokset @asmandos, @ssulti ja @Qotscha vaivannäöstänne.
Te olette todellisia sankareita. *nöyrä kumarrus*
Käyttäjätaso 4
Yritän muotoilla kysymykseni selvemmin. Voisiko vaikka @Patomiäs tai @error404 ottaa asiaan kantaa.

APIn dokumentaation mukaan tallenteen (id 1234) URL saadaan pyynnöllä
code:
GET https://api-viihde-gateway.dc1.elisa.fi/rest/npvr/recordings/url/1234?v=2.1&protocol=hls&platform=external&appVersion=1.0 HTTP/1.1

Kuten @asmandos ja @ssulti ovat todenneet, vastauksena tulee kyllä URL, mutta se ei toimi (403 Forbidden).

Toimivan URLin kuitenkin saa pyynnöllä
code:
GET https://x.y.z/rest/npvr/recordings/url/1234?v=2.1&protocol=hls&platform=external&appVersion=1.0 HTTP/1.1

missä y.z on Elisan omistama domain. Asian sain selville tutkimalla digiboksin verkkoliikennettä, kun ohjelmatekstitys (hollanti) oli asetuksista valittuna.

Nyt se itse KYSYMYS: Onko tuota alla mainittua pyyntöä suotavaa käyttää sovelluksissa, jotka mahdollistavat tallenteiden katselun ja latauksen tietokoneella? (Vai palauttaako tuo ylempänä mainitulla pyynnöllä haettu URL 403:n nimenomaan siksi, että .ts-palvelimilla ei tällä hetkellä riitä kapasiteettiä kuin digiboksilla ääni- tai ohjelmatekstityksiä tarvitseville tms.?)
Käyttäjätaso 5
Näin devaajan asemassa näkisin mielelläni, että nämä "yleiset purnaukset ja muut jupinat" menisi tuonne https://yhteiso.elisa.fi/elisa-viihde-sovellus-ja-nettipalvelu-16/elisa-viihde-api-julkaisut-ja-bugiraportit-512104/index4.html puolelle ja tämä ketju jäisi enemmän itse rajapinnan tekniseen keskusteluun. Ehdotinkin tätä jo aikanaan, mutta ilmeisesti kyseistä rajausta ei saada tehtyä sovelluksessa?

Näin saataisiin tiedonjako toimimaan paremmin devaajat elisa välillä, ilman että ketjussa olisi tarpeetonta tai muualle kuuluvaa kohinaa ja pälinää, joka hukkaa herkästi tarpeelliset tiedot.

Pyyntö vain, kun kerran on kaksi ketjua asian tiimoilta. Vai onko edes mahdollista @Patomiäs @error404 ja muut Palstan Isopomot?
Käyttäjätaso 7
Kunniamerkki +3
Aikataulua ei tässä kohtaa ole vielä kuulunut, huutelin aiheen perään josko sitä saataisiin tai muuta tietoa että missä mennään.

Itse mietin tätä kahtia jaottelua tähän tyyliin:
API-rajapinta --- Devaajan koodaama softa --- Käyttäjä

Eli tämä Devaus-lanka tippuu tuohon ensimmäiseen --- slottiin ja tuo toinen lanka tuonne toiseen. Lähinnä siis hain jakoa keskusteluun teknisesti katsellen, eli tänne keskustelut siitä mitä tapahtuu meidän rajapinnan ja devaajien softan välillä, tuonne toiseen taas sitten softan ja end-userin väliset jutut 🙂
Käyttäjätaso 7
Kunniamerkki +3
Pistin jatkokyssää tuosta eteenpäin, katotaan pitääkö potkia toista purkkia vai tarviiko teräskärkisiä seuraaviin potkimisiin mukaan
Käyttäjätaso 4
Mahdollinen ongelmakohta paikannettu ja toimenpide suoritettu, testatkaas @asmandos ja @st72 josko taas toimisi ja jos viitsitte niin kuitatkaa tänne myös niin tiedetään auttoiko :)

Näyttäisi toimivan. Kiitos 🙂
Käyttäjätaso 3
Mahdollinen ongelmakohta paikannettu ja toimenpide suoritettu, testatkaas @asmandos ja @st72 josko taas toimisi ja jos viitsitte niin kuitatkaa tänne myös niin tiedetään auttoiko :)

Toimii. Nyt oli ripeät korjaavat toimenpiteet, kiitoksia!
Käyttäjätaso 4
Adaptiivisten tallenteiden lataus onnistuu ainakin seuraavilla sovelluksilla:
ffmpeg (ios, android)
youtube-dl (ios, android, online_wv, online (osa tallenteista antaa erroria))
  • tarvitsee ffmpeg:tä äänen ja kuvan yhdistämiseen
  • monipuoliset optiot formaatin valintaan (saa varmasti haluamansa)
streamlink (ios, android)
  • latausvauhdin saa moninkertaistettua --hls-segment-threads --optiolla
  • en ole varma saako haluamansa ääniraidan (ec-3-224 / aac1-192) varmasti valittua
HLS-striimien toisto (ios, android) onnistuu ainakin DirectShow-soittimilla LAV Splitter Sourcea käyttäen sekä Kodilla inputstream.adaptivea hyödyntäen.

Ja jouduin kirjoittamaan samat asiat kolmesti näköjään siksi, että viesti katkesi koodi-tagien kohdalta 😣

EDIT: Jos noita formaatteja halua ihmetellä, tuota voi halutessaan käyttää apuna.
Käyttäjätaso 4
Bäk in topic: Onhan nyt kaikki valtakunnassa taas mallillaan? :)

Näyttäisi toimivan vanhalla API URLilla taas.

Tiistaina kuulemma ongelma löytyi, ja korjaus meni tuotantoon eilen, eli tiedotus on toiminut erinomaisesti 🙂
Käyttäjätaso 7
Kunniamerkki +3
Lisäilin aloitukseen GitHub linkin, minkä takaa jatkossa voi käydä tsekkaileen noita ajantasaisia dokkareita
Käyttäjätaso 4
Käyttäjän @st72 kommentti toisesta ketjusta innosti hieman tutkimaan, kuinka nuo ääni- ja ohjelmatekstitykset oikein toimivat digiboksilla. Näköjään käytetään alkuperäistä DVB-tallennetta, jonka URL noudetaan lähes samalla tavalla kuin APIa käyttäen. Pyyntö tehdään eri palvelimelle ja käytetään eri platform-optiota (https://api-viihde-gateway.dc1.elisa.fi/ palauttaa URLin, joka ei toimi).

Nyt kysyisinkin, että miten Elisa suhtautuu tämän URLin hakuun sovelluksissa (vaatii siis oikeastaan vain yhden rivin muutoksen) ja sitä kautta tallenteiden katseluun tai lataukseen? Periaatteessa tuota ei voine eri palvelimen käytöstä johtuen pitää minään APIn piilotettuna ominaisuutena. Ja toisaalta, jos tallenteita aletaan tuota kautta latailemaan, aiheuttaako se kuulo- ja näkövammaisille tai muuten ohjelma- tai äänitekstityksiä tarvitseville ongelmia tallenteiden toiston pätkimisen muodossa?
Käyttäjätaso 3
Ollaanko tätä korjaamassa vai jäikö taas ettei tallenteita saa omalle koneelle
Käyttäjätaso 4
Hmm... voisin ehkä tehdä vastaava "launcheri" kuten ViihdeVLCLauncher, mutta joka käynnistäisi yt-downloader sen sijaan. Voisi ehkä helpottaa elämää toistaiseksi.

Jos opiskelisin vähän pyhtonia nyt 🙂
Käyttäjätaso 7
Kunniamerkki +3
Vähän nyt menee poliittisen vastauksen puolelle, mutta noita muita mitä keksii tuollain saa käytellä jos tahtoo ja toimii jos toimii. Muutoksia toimivuuteen voi siis tulla ja mikäli ominaisuus ei ole esiteltynä tuolla API:n dokumentaatiossa, ei sille pysyvää toimivuutta myöskään taata. Toivottavasti tämä nyt edes vähän selvensi 😃
Käyttäjätaso 3
[quote user="Patomiäs"]Vähän nyt menee poliittisen vastauksen puolelle, mutta noita muita mitä keksii tuollain saa käytellä jos tahtoo ja toimii jos toimii. Muutoksia toimivuuteen voi siis tulla ja mikäli ominaisuus ei ole esiteltynä tuolla API:n dokumentaatiossa, ei sille pysyvää toimivuutta myöskään taata. Toivottavasti tämä nyt edes vähän selvensi :D

Pakko vähän kommentoida: ts-videon urlin haku oli esitelty ainakin minulle lähetetyssä API-paketissa eikä se silti enää toimi. Yleensä kun APIn kuuluisi olla vakaa jotta sen päälle voi tehdä softaa. En ole nähnyt mitään arvioitua aikataulua Elisan puolelta fiksata tuota vikaa.

Jos olette siirtäneet tiedostot toiseen domainiin, muutatte tietysti API:n palauttamaa urlia vastaavasti. Ei pitäisi olla mitään rakettitiedettä.
Käyttäjätaso 4
Vähän nyt menee poliittisen vastauksen puolelle, mutta noita muita mitä keksii tuollain saa käytellä jos tahtoo ja toimii jos toimii. Muutoksia toimivuuteen voi siis tulla ja mikäli ominaisuus ei ole esiteltynä tuolla API:n dokumentaatiossa, ei sille pysyvää toimivuutta myöskään taata. Toivottavasti tämä nyt edes vähän selvensi :D
Kiitos vastauksesta, mietin vain, missä vaalipiirissä olet ehdolla... 😀Kerrottakoon nyt sitten, että toimivan URLin .ts:ään saa pyynnöllä
code:
GET https://rest-api.elisaviihde.fi/rest/npvr/recordings/url/1234?v=2.1&protocol=hls&platform=external&appVersion=1.0 HTTP/1.1

(Toisin kun tuossa ylempänä annoin ymmärtää, myös platform=external toimii, boksilla platform=agnes_impaired).

Ja jos joku erityisesti tykkää hls-striimeistä, niin platform=agnes, antaa sellaisen, jossa ääni (DD+ YLEllä) ja kuva ovat samassa striimissä. Tämä siis toimii myös https://api-viihde-gateway.dc1.elisa.fi:n kautta.

EDIT: Ja lainaukset ei vieläkään näemmä toimi kunnolla.
Moi,

Handbrake aina pakkaa videota. Jos haluat nopeasti .ts kontainerin .mp4 muotoon niin ffmpeg:illä onnistuu pakkaamatta.
Käyttäjätaso 4
Nyt saan koko ajan vain Error 500 kun yritän kutsua mitä apia tahansa? Onko mun apikey lukittu jostain syystä, vai onko yleinen ongelma tällä hetkellä?

Esim access-code endpoint herjaa:

{
"message": "An unexpected error occurred"
}

Jos olette siirtäneet tiedostot toiseen domainiin, muutatte tietysti API:n palauttamaa urlia vastaavasti. Ei pitäisi olla mitään rakettitiedettä.


Olenko ymmärtänyt oikein, että Elisa melkeinpä haluaa pimittää tätä a) tekijänoikeudellisista syistä (.ts:n "liian hyvä" kuvanlaatu) ja/tai b) säästääkseen kaistaa "pakottamalla" käyttäjät huono(mpi)laatuiseen adaptiiviseen striimiin?

Ehkä foliohattu on vedetty liian syvälle päähäni, mutta rivikäyttäjänä en oikein pysy perässä tässä api-mystiikassa.
Käyttäjätaso 3
Nyt saan koko ajan vain Error 500 kun yritän kutsua mitä apia tahansa? Onko mun apikey lukittu jostain syystä, vai onko yleinen ongelma tällä hetkellä?

Esim access-code endpoint herjaa:

{
"message": "An unexpected error occurred"
}


Sama vika. Ei näyttäisi siis olevan apikey.
Käyttäjätaso 7
Kunniamerkki +3
@asmandos ja @st72 pistin kyselyä että onko meillä ongelmia, vastausta odotellessa 🙂
Käyttäjätaso 1
Hienoa, että saatiin korjaus näin nopeasti! 🙂

Osallistu keskusteluun