• 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7
  • 40
Release ESPN 3
#61
(2015-07-21, 00:06)MetalChris Wrote: I think there's some additional authentication going on with the HLS streams that is failing for users without TV subscriptions.

My scenario doesn't confirm to this use case. WatchESPN (ESPN/ESPN2 etc) just works fine but I have to use IE on a different PC in my LAN. The generated cookie/SWID from IE is what I use in userdata.xml on the linux HTPC where I run Kodi.

Quote:I think locomot1f mentioned it might be a cookie issue, and I'm starting to agree.

Yes I think so too. Don't understand how NBC app authentication and authorization works, but maybe we can look to reuse that piece of code.
Reply
#62
Hi lads

hoping to catch EFC on ESPN 3 tonight but keeping getting error no matter what i click on, any ideas?
Reply
#63
Awfully tough to help without logs and a better description of the errors you are seeing
Reply
#64
@locomot1f , please check PM.
Reply
#65
I'm pretty new to Kodi but I installed your latest addon to my Amazon Fire HD box and I still get the SMIL URL Blank unable to play back video error... is there any fix for this?
Reply
#66
Hello, I have been trying to get this addon working for a while. I'm in Canada so I understand that there are issues with getting it to work up here. I subscribed to a DNS proxy from the states and also setup a Vpn from the same company that lists espn as one of the network available from the proxy. I uninstalled kodi from my android box and turned off my location access. I reinstalled kodi and the espn app but it still fails. I get the SMIL URL Blank Unable to playback video error. I'm not sure what to try next. I'm trying to watch NHRA drag racing as I only can get the final day up here and none of the qualifying rounds. Any help or input would be very appreciated.

Here is a link to a log of the error. http://goo.gl/pmrW58
Reply
#67
Code:
01:00:52 T:1691969952  NOTICE: URL: 2618046,,,185254663,HLS

I wonder what the URL looks like for the working HLS setups.
Reply
#68
(2015-08-10, 09:40)4xlguy Wrote: Hello, I have been trying to get this addon working for a while. I'm in Canada so I understand that there are issues with getting it to work up here. I subscribed to a DNS proxy from the states and also setup a Vpn from the same company that lists espn as one of the network available from the proxy. I uninstalled kodi from my android box and turned off my location access. I reinstalled kodi and the espn app but it still fails. I get the SMIL URL Blank Unable to playback video error. I'm not sure what to try next. I'm trying to watch NHRA drag racing as I only can get the final day up here and none of the qualifying rounds. Any help or input would be very appreciated.

Here is a link to a log of the error. http://goo.gl/pmrW58

Looking at the log you posted, I'm seeing this:

Code:
affiliate=invalid

inside the url for the stream. Who is your provider? It seems this info may be missing from your userdata.xml file.

This stream is an HLS formatted stream and they have been problematic for some users, including myself, and may not work for you either. Are you able to watch any events at all? Currently the Rogers Cup tennis matches and Little League World Series are streaming in the HDS format and are working fine for me. The Parapan American Games are streaming in HLS format, and I get the 'SMIL URL Blank' error if I try to watch that one.

(2015-08-10, 15:03)siuside Wrote:
Code:
01:00:52 T:1691969952  NOTICE: URL: 2618046,,,185254663,HLS

I wonder what the URL looks like for the working HLS setups.

The actual URL is in the log file, three lines below the line you've posted. Check line 138 in the log file posted by 4xlguy. Except for the invalid affiliate info, it's formatted correctly.
Kodi Nexus on Dell Optiplex 980 Lubuntu 20.04 | Kodi Nexus on HTPC Lubuntu 20.04 | My Add-ons | Legacy Repo | Matrix Repo
Reply
#69
I got that MetalChris

But my question is more along the lines of, what in the .py parses it to that "NOTICE" format with the three consecutive commas and does that have any meaning at all in the generated http URL which eventually contains the invalid_IP


Edit

Here is a sample one that we are able to play (HDS)

Code:
T:140642260875008  NOTICE: URL: 2618064,353189183,176-237128,184510013,HDS

This is the event

Code:
T:140642260875008  NOTICE: Name: [COLOR=FFf5f5f5]11:30 AM - 2015 Emirates Airline US Open Series - Rogers Cup (First Round)[/COLOR]
Reply
#70
Here is some more debugging.

The Notice URL parameters are : "event id", "bamContentId", "bamEventId","simulcastAiringId","desktopStreamSource"

When desktopStreamSource = HDS, all parameters are getting parsed properly because they are present in source.

Code:
<event id="2618064" type="live" bamContentId="353189183" bamEventId="176-237128" mediaState="MEDIA_ON">
<airingId>a18451001</airingId>
<gameId>null</gameId>
<ttl>0</ttl>
<name>
<![CDATA[
2015 Emirates Airline US Open Series - Rogers Cup (First Round)
]]>
</name>
<league>
<![CDATA[ Emirates Airline US Open Series ]]>
</league>
<sport code="TN">Tennis</sport>
<sportDisplayValue>Tennis</sportDisplayValue>
<showId>2701</showId>
<program code="TS"/>
<networkId>n360</networkId>
<desktopStreamSource>HDS</desktopStreamSource>
<caption/>
<site>Uniprix Stadium, Montreal, Canada</site>
<summary/>
<espnSportId>null</espnSportId>
<gameStatus/>
<startTime>201508101230</startTime>
<endTime>201508102230</endTime>
<startTimeGmtMs>1439224200000</startTimeGmtMs>
<endTimeGmtMs>1439260200000</endTimeGmtMs>
<broadcastStartTimeInMs>1439224260000</broadcastStartTimeInMs>
<checkBlackout>false</checkBlackout>
<thumbnail>
<large>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/tn/emirates_airline_us_open_series/2618064.jpg&w=640&h=360&1439208319671
]]>
</large>
<small>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/tn/emirates_airline_us_open_series/2618064.jpg&w=160&h=90&1439208319671
]]>
</small>
</thumbnail>
<aspectRatio>16:9</aspectRatio>
<language>English</language>
<cc>false</cc>
<ccPosition>bottomLeft</ccPosition>
<closedCaptionFileURL>
http://ak-replay-ttml-origin.espn.go.com/lfc/replay/ttml/2015/08/10/2618064_espn_100m.ttml
</closedCaptionFileURL>
<simulcastAiringId>184510013</simulcastAiringId>
<hasReplay>true</hasReplay>
<multilanguageEvents/>
<guid>
<![CDATA[
espn3/2015 Emirates Airline US Open Series - Rogers Cup (First Round)/2618064
]]>
</guid>
<parentalRating>G</parentalRating>
<adobeResource>espn3</adobeResource>
</event>


When desktopStreamSource = HLS, we are NOT parsing it because they are not there in the source to begin with. I don't see how this works for anyone at all.


Code:
<events>
<event id="2629101" type="live" bamContentId="" bamEventId="" mediaState="MEDIA_ON">
<airingId>a18557004</airingId>
<gameId>null</gameId>
<ttl>0</ttl>
<name>
<![CDATA[ 2015 Parapan American Games (Day 3) ]]>
</name>
<league>
<![CDATA[ Pan American Games ]]>
</league>
<sport code="OL">Olympics</sport>
<sportDisplayValue>International Games</sportDisplayValue>
<showId>813</showId>
<program code="PA"/>
<networkId>n360</networkId>
<desktopStreamSource>HLS</desktopStreamSource>
<caption/>
<site>Toronto, ON Canada</site>
<summary/>
<espnSportId>null</espnSportId>
<gameStatus/>
<startTime>201508101500</startTime>
<endTime>201508110030</endTime>
<startTimeGmtMs>1439233200000</startTimeGmtMs>
<endTimeGmtMs>1439267400000</endTimeGmtMs>
<broadcastStartTimeInMs>1439233201000</broadcastStartTimeInMs>
<checkBlackout>false</checkBlackout>
<thumbnail>
<large>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/ol/pan_american_games/2629101.jpg&w=640&h=360&1439236317003
]]>
</large>
<small>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/ol/pan_american_games/2629101.jpg&w=160&h=90&1439236317003
]]>
</small>
</thumbnail>
<aspectRatio>16:9</aspectRatio>
<language>English</language>
<cc>false</cc>
<ccPosition>bottomLeft</ccPosition>
<closedCaptionFileURL/>
<simulcastAiringId>185570043</simulcastAiringId>
<hasReplay>true</hasReplay>
<multilanguageEvents/>
<guid>
<![CDATA[ espn3/2015 Parapan American Games (Day 3)/2629101 ]]>
</guid>
<parentalRating>G</parentalRating>
<adobeResource>espn3</adobeResource>
</event>

This is the source XML : http://sports-ak.espn.go.com/watchespn/f...nnel=espn3
Reply
#71
Hello, thank you for the replies. I will do my best to provide you with the information you requested.

My ISP is Shaw cable that doesn't provide rights to ESPN3. I'm using SmartDNSProxy service at my router and their VPN at my MyGica 1200 Android box to hopefully get me ESPN3.

Here is what is in my userdata.xml file

<?xml version="1.0" encoding="UTF-8"?>
-<user>
-<affiliate>
<name>invalid</name>
-<imageUrl>
-<![CDATA[http://a.espncdn.com/espn360/images/affiliates/]]>
</imageUrl>
-<websiteUrl>
-<![CDATA[]]>
</websiteUrl>
<localAdAccountId/>
<filterESPN3>false</filterESPN3>
</affiliate>
-<location>
<ip>000.000.000.000</ip>
<country>united states</country>
<city>-----</city>
<state>utah</state>
<continent>na</continent>
<dma>---</dma>
<zipCode/>
<domain>------.com</domain>
<timeZone>America/Denver</timeZone>
<locationAuthorized>true</locationAuthorized>
</location>
-<personalization swid="" loginStatus="ANONYMOUS">
<username/>
<affinity/>
</personalization>
<domainAllowed>false</domainAllowed>
</user>

I tried multiple streams, none of them worked and ended up getting 2 different errors. Here is a new log file. http://xbmclogs.com/pkorjdgts

So to me it looks like the issue is in my userdata.xml file but I have no clue as to what to do to get it to work. It's recognizing the Proxy and/or the VPN as it looks to me it says I'm in Utah but must still be getting messed up by my ISP somehow as it still sees Canada.

Thanks again for the help!!
Reply
#72
Please edit your IP and other critical info even if it is VPN. In fact there is no point to posting that section.

One thing you can do is post what you see when you go to this URL http://sports-ak.espn.go.com/watchespn/f...nnel=espn3

Post in xbmclogs please.

Here is a list of ESPN3 affiliates http://espn.go.com/espn3/affList

All major ISPs are affiliates. I don't buy the theory that HLS streams not playing is somehow ISP dependent. I also read this in the wiki which is incorrect because I am able to access ESPN3 and successfully play HDS streams.

Quote:In order to discourage cord-cutting and accessing ESPN without paying, Time Warner Cable & RCN[12] do not allow internet-only and basic cable subscribers to access ESPN3; only those who subscribe to a standard cable tier or higher (and thus access ESPN's linear networks) can use the service. Thus, in these cases the cost of the service is bundled into the cable bill and not the Internet bill.

Actually the test is pretty simple here to see if we are really affected by ISP limitations

Everyone needs to go to this page http://sports-ak.espn.go.com/watchespn/f...e=20150801
and paste what they have for eventID = 2627166

I am with TWC and this is what I have. It is an HLS stream with blank bamContentId and bamEventId. I cannot play it. Even when I visit this URL on my phone (VzW) I see the blank IDs.

Code:
<event id="2627166" type="replay" bamContentId="" bamEventId="" mediaState="MEDIA_ARCHIVE">
<airingId>a18548113</airingId>
<gameId>null</gameId>
<ttl>0</ttl>
<name>
<![CDATA[ OTL Extra ]]>
</name>
<league>
<![CDATA[ ]]>
</league>
<sport code="SR">SportsCenter</sport>
<sportDisplayValue>SportsCenter</sportDisplayValue>
<showId>3882</showId>
<program code="ON"/>
<networkId>n360</networkId>
<desktopStreamSource>HLS</desktopStreamSource>
<caption>
Usually a two-topic show examining daily issues with an investigative piece followed by debate among authorities on the issue. Hosted by Bob Ley.
</caption>
<site>Studio, Bristol, CT USA</site>
<summary/>
<espnSportId>0</espnSportId>
<gameStatus/>
<startTime>201508101800</startTime>
<endTime>201508101815</endTime>
<startTimeGmtMs>1439244000000</startTimeGmtMs>
<endTimeGmtMs>1439244900000</endTimeGmtMs>
<broadcastStartTimeInMs>1439244059000</broadcastStartTimeInMs>
<checkBlackout>false</checkBlackout>
<thumbnail>
<large>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/sr/2627166.jpg&w=640&h=360&1438103391896
]]>
</large>
<small>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/sr/2627166.jpg&w=160&h=90&1438103391896
]]>
</small>
</thumbnail>
<aspectRatio>16:9</aspectRatio>
<language>English</language>
<cc>false</cc>
<ccPosition>bottomLeft</ccPosition>
<closedCaptionFileURL/>
<simulcastAiringId>185481133</simulcastAiringId>
<hasReplay>true</hasReplay>
<multilanguageEvents/>
<guid>
<![CDATA[ espn3/OTL Extra/2627166 ]]>
</guid>
<parentalRating>G</parentalRating>
<adobeResource>espn3</adobeResource>
</event>
<event id="2618073" type="replay" bamContentId="355208883" bamEventId="176-236865" mediaState="MEDIA_ARCHIVE">
<airingId>a18028623</airingId>
<gameId>null</gameId>
<ttl>0</ttl>
<name>
<![CDATA[
Coon Rapids, Minnesota vs. Des Moines, Iowa ( Midwest Regional)
]]>
</name>
<league>
<![CDATA[ Little League World Series ]]>
</league>
<sport code="BB">Baseball</sport>
<sportDisplayValue>Baseball</sportDisplayValue>
<showId>1425</showId>
<program code="LL"/>
<networkId>n360</networkId>
<desktopStreamSource>RTMP</desktopStreamSource>
<caption/>
<site>Indianapolis, IN USA</site>
<summary/>
<espnSportId>13</espnSportId>
<gameStatus/>
<startTime>201508101800</startTime>
<endTime>201508102000</endTime>
<startTimeGmtMs>1439244000000</startTimeGmtMs>
<endTimeGmtMs>1439251200000</endTimeGmtMs>
<broadcastStartTimeInMs>1439244008000</broadcastStartTimeInMs>
<checkBlackout>false</checkBlackout>
<thumbnail>
<large>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/showassets/BBLL.jpg&w=640&h=360&20150806070404
]]>
</large>
<small>
<![CDATA[
http://a.espncdn.com/combiner/i?img=/espn360/images/showassets/BBLL.jpg&w=160&h=90&20150806070405
]]>
</small>
</thumbnail>
<aspectRatio>16:9</aspectRatio>
<language>English</language>
<cc>false</cc>
<ccPosition>bottomLeft</ccPosition>
<closedCaptionFileURL>
http://ak-replay-ttml-origin.espn.go.com/lfc/replay/ttml/2015/08/10/2618073_espn_100m.ttml
</closedCaptionFileURL>
<simulcastAiringId>180286233</simulcastAiringId>
<hasReplay>true</hasReplay>
<multilanguageEvents/>
<guid>
<![CDATA[
espn3/ Coon Rapids, Minnesota vs. Des Moines, Iowa ( Midwest Regional)/2618073
]]>
</guid>
<parentalRating>G</parentalRating>
<adobeResource>espn3</adobeResource>
</event>
Reply
#73
(2015-08-11, 04:45)4xlguy Wrote: I tried multiple streams, none of them worked and ended up getting 2 different errors. Here is a new log file. http://xbmclogs.com/pkorjdgts

So to me it looks like the issue is in my userdata.xml file but I have no clue as to what to do to get it to work. It's recognizing the Proxy and/or the VPN as it looks to me it says I'm in Utah but must still be getting messed up by my ISP somehow as it still sees Canada.

Thanks again for the help!!

Your userdata.xml file is missing a valid affiliate name and the SWID.

The easiest way to get your userdata.xml info is to follow this link:

http://broadband.espn.go.com/espn3/auth/...format=xml

You can then save the page as userdata.xml (no caps) then edit it as suggested on this page. It's a little outdated now, only steps 2 and 4 are required to get your userdata.xml file setup. The only thing I had to edit was the affiliate name.

(2015-08-11, 04:51)siuside Wrote: One thing you can do is post what you see when you go to this URL http://sports-ak.espn.go.com/watchespn/f...nnel=espn3

That link is simply an .xml file with a list of events, and is accessible to anyone with or without a valid provider subscription.

(2015-08-11, 04:51)siuside Wrote: Actually the test is pretty simple here to see if we are really affected by ISP limitations

Everyone needs to go to this page http://sports-ak.espn.go.com/watchespn/f...e=20150801
and paste what they have for eventID = 2627166

I am with TWC and this is what I have. It is an HLS stream with blank bamContentId and bamEventId. I cannot play it. Even when I visit this URL on my phone (VzW) I see the blank IDs.

HLS streams do not use the bamContentId or bamEventId.
Kodi Nexus on Dell Optiplex 980 Lubuntu 20.04 | Kodi Nexus on HTPC Lubuntu 20.04 | My Add-ons | Legacy Repo | Matrix Repo
Reply
#74
MetalChris

Yes I figured that in the interim. Please see the updated posts above with the information about the IDs. I will take a look at how the HLS streams are being constructed.
Reply
#75
(2015-08-11, 04:54)MetalChris Wrote: HLS streams do not use the bamContentId or bamEventId.

Great, thanks for the info. Looking at the code, for HLS, it is pkan which is generating the URL. However I do not understand the bits that are doing the actual construct

These seem to the the relevant parts

Code:
swid = soup('personalization')[0]['swid']

where 'swid' comes from userdata.

Code:
# Split up the url so they can be used as needed
    url_split = url
    url_split = url.split(',')
    eventid = str(url_split[0])    
    contentId = str(url_split[1])
    eventId = str(url_split[2])
    simulcastAiringId = str(url_split[3])
    streamType = str(url_split[4])
    
    pk = ''.join([random.choice(string.ascii_letters + string.digits) for n in xrange(51)])
    pkan = pk + ('%3D')
    config = 'https://espn.go.com/watchespn/player/config'
    data = get_html(config)

Code:
if streamType == 'HLS':
               authurl += 'affiliate='+affiliateid
               authurl += '&cdnName='+cdnName
               authurl += '&channel='+channel
               authurl += '&playbackScenario=FMS_CLOUD'
               authurl += '&pkan='+pkan
               authurl += '&pkanType=SWID'
               authurl += '&eventid='+eventid
               authurl += '&simulcastAiringId='+simulcastAiringId
               authurl += '&rand='+str(random.randint(100000,999999))
               authurl += '&playerId='+playedId

What does a Confuseduccessful "pkan" construct look like?
Reply
  • 1
  • 3
  • 4
  • 5(current)
  • 6
  • 7
  • 40

Logout Mark Read Team Forum Stats Members Help
ESPN 32