SlideShare a Scribd company logo
Localization+
         Thomas Crenshaw
Dir, Technical Product Management
Agenda
By the conclusion of this webinar, my hope is that
you will have gained an understanding of the:
• data import process
• data sources used
• new algorithm
• API exploration and testing tools
Background
Why update PBS station localization? Our goal was
to provide a technical solution that satisfies the
basic viewer question:

What local PBS stations can I watch on my TV?

We built this web-service to be as flexible and
future-proof as possible and to meet the needs of
all PBS stations, despite differing station business
requirements.

Lesson learned: Without exception, every rule has
an exception!
Terms and Definitions
Localization
The process a site visitor goes through to determine which PBS stations are available in
his or her geographic area.

MSO
Technically only applies to a cable system operator, but we will include satellite companies
as well.
Example: Comcast, University of Wisconsin

Headend
Distribution network for television programming, serving a local community of variable size.
Example: Comcast - Sebastian, UW Madison - Madison

Flagship Call Sign
FCC-licensed owner and/or operator of one or more full-power transmission towers.
Example: WXEL, WPNE, KAID

Call Sign
Full-power transmission tower owned and/or operated by a flagship station.
Example: WXEL,WHA, KUID

Rovi Station Feeds
Rovi representation of a station‟s channels and sub-channels.
The Numbers
 The sheer volume of data necessary to provide
localization at the national level is astounding.
• 1,283 MSOs
• 11,322 Headends
• 515,742 Headend/ZIP code pairs
• 180 Flagship call signs
• 873 Call signs (full-power and translators)
• 1,412 Rovi station feeds
• ~42,000 ZIP codes

Data as of 2012-07-23
What‟s Different
   The Good           Legacy           Localization+

Sources              1 (Nielsen)   Multiple (Rovi,Nielsen)
Data Updates           Yearly              Daily
Troubleshooting        Difficult           Easy
Built for           TV Schedules       Localization
Architecture        Non-standard         RESTful
Technical Changes      Difficult           Easy
User Tools              None          Goliat, Bluebell
Import Logging          None          Customizable
Data Changes         Impossible          Possible
Transparency            None           Open Source
What‟s Different
   The New                        Localization+


Results                            More stations
Geolocation                    Not always accurate
IP Based Input                 Not always accurate
Proxy-based IP                 Not always accurate
Static Files     Used for lookups to match Rovi/Nielsen/PBS data
Get All Headends
           Get All
 ZIP      Headends



Step 1: Get All Headends
For a given ZIP code, retrieve all available headends from Rovi.
Update Confidence
           Get All
 ZIP      Headends
                         Update Confidence

Step 2: Update the “Confidence” Value
“Confidence” is a relative numeric value that represents how likely the
member station is available for a given ZIP code.

All headends are assigned an initial confidence of 100. This value is
lowered based on parameters associated with the headend listings.

The highest headend confidence is assigned to applicable stations at
end of the import process.

A static file with known bad headends and associated confidence is
used.

                                                                          1 of 3
Update Confidence
                Get All                       Compare
 ZIP           Headends                      to Blacklist
                                                 Update Confidence

Step 2a: Compare to Blacklist
Headends that contain stations that are obviously out of area.
•Confidence dropped to 80
•Currently this is only Dish Network, which lists KGTV, WTTW, KRMA in
almost all DMAs
  headend_id                headend_name                dma_rank   dma_code    headend_state   vendor_mso_id                 mso_name
   320591      Dish Network - Philadelphia                504         4       DE                  300264       Echostar Communications Corp.

Headends that have consistently bad channel line-up data.
•Confidence dropped to 0
  headend_id                headend_name                dma_rank   dma_code    headend_state   vendor_mso_id                 mso_name
   307250      Shaw Direct - Eastern Time Zone                                                    300513       Shaw Direct
   320209      C-Band Providers - C-Band Eastern Time                                             301530       Data Services Product
   321898      Eastern Time Zone - Eastern Time Zone      N/A                                     301530       Data Services Product
   322141      Bell TV - Eastern Time Zone                                                        300818       Data Services Product




                                                                                                                                               2 of 3
Update Confidence
                Get All                     Compare                 Check
 ZIP           Headends                    to Blacklist             DMA
                                               Update Confidence

Step 2b: Check DMA
Headends that do not have DMA Code or DMA Rank have their
confidence lowered to 40.
  headend_id                      headend_name                 dma_code   dma_rank   headend_state   vendor_mso_id         mso_name
   322924      Verizon FIOS TV of SE PA - Verizon FiOS-N. DE                         DE                 301762       Verizon Service Corp




                                                                                                                                     3 of 3
Get Feed(s) per Headend
           Get All     Compare       Check      Get Feed(s)
 ZIP      Headends    to Blacklist   DMA        per Headend
                        Update Confidence

Step 3: Get Feed(s) per Headend
Get all associated Rovi station feeds for a given headend.




                                                              1 of 2
headend_id
20547
            Get Feed(s) per Headend
                           headend_name
            Starview Cablevision - Forwood - Wilmington
                                                          station_id
                                                         2406
                                                                        call_letters
                                                                       NJTV
                                                                                        headend_id
                                                                                       307250
                                                                                                                   headend_name
                                                                                                   Shaw Direct - Eastern Time Zone
                                                                                                                                                            station_id
                                                                                                                                                           719
                                                                                                                                                                          call_letters
                                                                                                                                                                         KCTS
            Confidence: 100                              5964          PBS                         Confidence: 0                                           959           KSPS
317727      Comcast - New Castle                         247           WHYY                                                                                2273          WNED
            Confidence: 100                              1564          WNJS                                                                                2666          WTVS
                                                         9856          WHYYHD                                                                              10884         WTVSH
                                                         9856          WHYYHD          320209      C-Band Providers - C-Band Eastern Time                  5964          PBS
                                                         11892         NJTV                        Confidence: 0                                           10991         LINK
                                                         15985         Y Arts          321898      Eastern Time Zone - Eastern Time Zone                   5964          PBS
                                                         17699         Y Info                      Confidence: 0
320478      DirecTV - Philadelphia                       247           WHYY            322141      Bell TV - Eastern Time Zone                   206                     WGBH
            Confidence: 100                              304           WLVT                        Confidence: 0                                 719                     KCTS
                                                         1564          WNJS                                                                      719                     KCTS
                                                         5964          PBS                                                                       2666                    WTVS
                                                         9856          WHYYHD                                                                    9873                    KCTSD
                                                         10991         LINK                                                                      11815                   WGBHW
                                                         15866         WLVTD1          322924      Verizon FIOS TV of SE PA - Verizon FiOS-N. DE 247                     WHYY
320591      Dish Network - Philadelphia                  247           WHYY                        Confidence: 100                               304                     WLVT
            Confidence: 80                               304           WLVT                                                                      2378                    WNJT
                                                         548           WTTW                                                                      9856                    WHYYHD
                                                         927           KRMA                                                                      9857                    WLVTD4
                                                         1564          WNJS                                                                      13729                   WNJSDT
                                                         5964          PBS                                                                       15866                   WLVTD1
                                                         8643          WGTV                                                                      15868                   WLVTV
                                                         10991         LINK                                                                      15985                   Y Arts
321054      Broadcast TV - Philadelphia                  9856          WHYYHD                                                                    17699                   Y Info
            Confidence: 100                              9857          WLVTD4          323910      Eastern Time Zone - Eastern Time Zone         5964                    PBS
                                                         11892         NJTV                        Confidence: 0
                                                         11895         WNJT-DT         324883      Shaw Direct Advanced - Eastern Time Zone      719                     KCTS
                                                         13729         WNJSDT                      Confidence: 0                                 959                     KSPS
                                                         15866         WLVTD1                                                                    2273                    WNED
                                                         15868         WLVTV                                                                     2666                    WTVS
                                                         15985         Y Arts                                                                    10884                   WTVSH
                                                         17699         Y Info          325708      Armstrong Utilities - National/Eastern        5964                    PBS
322333      Verizon FIOS TV of SE PA - Verizon FIOS S NJ 247           WHYY            Key         Confidence: for the headend
                                                                                                   Valid station 0
            Confidence: 40                               304           WLVT                        Questionable station for the headend
                                                         1564          WNJS                        Invalid station for the headend
                                                         9856          WHYYHD                      Station that does not exist for localization purposes
                                                         9857          WLVTD4
                                                         13729         WNJSDT
                                                         15866         WLVTD1
                                                                                                                                                                           2 of 2
Map Feed(s) to Call Sign
                       Get All                 Compare               Check                    Get Feed(s)    Map Feed(s)
   ZIP                Headends                to Blacklist           DMA                      per Headend    to Call Sign
                                                   Update Confidence

Step 4: Map Rovi Station Feed(s) to PBS Call Sign
Use static CSV file to map Rovi station id to PBS call sign.


    rovi_station_id      rovi_station_short_name      pbs_callsign     pbs_station_flagship_callsign        confidence
247                                WHYY                 WHYY                      WHYY                         100
9856                             WHYYDT                 WHYY                      WHYY                         100
15985                           WHYYDT2                 WHYY                      WHYY                         100
17699                           WHYYDT3                 WHYY                      WHYY                         100
2378                               WNJT                 WNJT                      WNJT                         100
11895                            WNJTDT                 WNJT                      WNJT                         100
304                                WLVT                  WLVT                     WLVT                         100
9857                            WLVTDT4                  WLVT                     WLVT                         100
15866                            WLVTDT                  WLVT                     WLVT                         100
15868                           WLVTDT3                  WLVT                     WLVT                         100
1564                               WNJS                 WNJS                      WNJT                         100
13729                            WNJSDT                 WNJS                      WNJT                         100
2406                              WNJTV                 WNJN                      WNJT                         100
8643                               WGTV                 WGTV                      WGTV                          80
927                                KRMA                 KRMA                      KRMA                          80
548                                WTTW                 WTTW                      WTTW                          80
719                                KCTS                  KCTS                     KCTS                           0
206                                WGBH                 WGBH                      WGBH                           0
                                       stations.txt + hand curated == rovi_stations2callsign.csv
Apply Headend Confidence
                       Get All                 Compare               Check                   Get Feed(s)    Map Feed(s)
   ZIP                Headends                to Blacklist           DMA                     per Headend    to Call Sign
                                                   Update Confidence
                                                                                                            Apply Headend
Step 5: Apply Headend Confidence to Call Signs                                                               Confidence

Assign the highest headend confidence value to each call sign. This
allows the calling application to make a logical determination as to
validity of returned data.
    rovi_station_id      rovi_station_short_name      pbs_callsign    pbs_station_flagship_callsign        confidence
247                                WHYY                 WHYY                     WHYY                         100
9856                             WHYYDT                 WHYY                     WHYY                         100
15985                           WHYYDT2                 WHYY                     WHYY                         100
17699                           WHYYDT3                 WHYY                     WHYY                         100
2378                               WNJT                 WNJT                     WNJT                         100
11895                            WNJTDT                 WNJT                     WNJT                         100
304                                WLVT                  WLVT                    WLVT                         100
9857                            WLVTDT4                  WLVT                    WLVT                         100
15866                            WLVTDT                  WLVT                    WLVT                         100
15868                           WLVTDT3                  WLVT                    WLVT                         100
1564                               WNJS                 WNJS                     WNJT                         100
13729                            WNJSDT                 WNJS                     WNJT                         100
2406                              WNJTV                 WNJN                     WNJT                         100
8643                               WGTV                 WGTV                     WGTV                          80
927                                KRMA                 KRMA                     KRMA                          80
548                                WTTW                 WTTW                     WTTW                          80
719                                KCTS                  KCTS                    KCTS                           0
206                                WGBH                 WGBH                     WGBH                           0
                                                                                                                        1 of 2
Apply Headend Confidence
           Broadcast TV - Philadelphia
  321054    Broadcast TV - Philadelphia             9856    WHYYHD
            Confidence: 100                         9857    WLVTD4
                                                    11892   NJTV
                                                    11895   WNJT-DT
                                                    13729   WNJSDT        WHYY
                                                    15866   WLVTD1
                                                    15868   WLVTV     Confidence: 100
                                                    15985   Y Arts
                                                    17699   Y Info
                                                                           WLVT
           Dish Network - Philadelphia                                Confidence: 100
  320591    Dish Network - Philadelphia             247     WHYY
            Confidence: 80                          304     WLVT
                                                    548
                                                    927
                                                            WTTW
                                                            KRMA
                                                                           WNJS
                                                    1564
                                                    5964
                                                            WNJS
                                                            PBS
                                                                      Confidence: 100
                                                    8643    WGTV
                                                    10991   LINK
                                                                         KRMA
           Bell TV - Eastern Time Zone                                Confidence: 80
  322141    Bell TV - Eastern Time Zone             206     WGBH
            Confidence: 0                           719     KCTS
                                                    719     KCTS         WGBH
                                                    2666    WTVS
                                                    9873    KCTSD      Confidence: 0
                                                    11815   WGBHW


Eastern Time Zone - Eastern Time Zone
  323910    Eastern Time Zone - Eastern Time Zone   5964    PBS
            Confidence: 0
                                                                                        2 of 2
Map Call Sign to Flagship
                       Get All                 Compare               Check                   Get Feed(s)        Map Feed(s)
   ZIP                Headends                to Blacklist           DMA                     per Headend        to Call Sign
                                                   Update Confidence
                                                                                               Map Call Sign    Apply Headend
Step 6: Map Call Sign to Flagship                                                               to Flagship      Confidence

Every call sign is assigned a flagship for purposes of providing a single
entity to facilitate donation links, station logos, etc.

    rovi_station_id      rovi_station_short_name      pbs_callsign    pbs_station_flagship_callsign            confidence
247                                WHYY                 WHYY                     WHYY                             100
9856                             WHYYDT                 WHYY                     WHYY                             100
15985                           WHYYDT2                 WHYY                     WHYY                             100
17699                           WHYYDT3                 WHYY                     WHYY                             100
2378                               WNJT                 WNJT                     WNJT                             100
11895                            WNJTDT                 WNJT                     WNJT                             100
304                                WLVT                  WLVT                    WNJT                             100
9857                            WLVTDT4                  WLVT                    WNJT                             100
15866                            WLVTDT                  WLVT                    WNJT                             100
15868                           WLVTDT3                  WLVT                    WNJT                             100
1564                               WNJS                 WNJS                     WNJT                             100
13729                            WNJSDT                 WNJS                     WNJT                             100
2406                              WNJTV                 WNJN                     WNJT                             100
8643                               WGTV                 WGTV                     WGTV                              80
927                                KRMA                 KRMA                     KRMA                              80
548                                WTTW                 WTTW                     WTTW                              80
719                                KCTS                  KCTS                    KCTS                               0
206                                WGBH                 WGBH                     WGBH                               0
Assign Sorting Filter
           Get All      Compare         Check         Get Feed(s)     Map Feed(s)
 ZIP      Headends     to Blacklist     DMA           per Headend     to Call Sign
                         Update Confidence
                                      Apply Sorting   Map Call Sign   Apply Headend
Step 7: Assign Sorting Filter            Filter        to Flagship     Confidence

Currently, Nielsen data is used to sort applicable stations within a given
ZIP code.

The new architecture employed in the updated localization service
allows us to modify the import algorithm as business requirements
change.

An example of this could be the addition of a flagship station‟s home
DMA as a sorting filter.

Numeric rank is transformed from the absolute value Nielsen provides
to a relative value within the ZIP code.
API Output
"$items": [
     {
        "confidence": 100,
        "$class": "CallSign2ZipMapping",
        "rank": 1,
        "$self": "http://services-qa.pbs.org/callsigns/zip/19801/WHYY.json",
        "$links": [
            {
              "$links": [
                 {
                    "$links": [
                       {
                          "$accepts": [
                             {
                                "$type": "application/vnd.pbs-resource+json",
                                "$class": "Callsign"
                             }
                          ],
                          "$relationship": "children",
                          "$elements": "Callsign",
                          "$self": "http://services-qa.pbs.org/callsigns/station/119.json"
                      },
          {
                          "$type": "application/vnd.pbs-resource+json",
                          "$class": "Callsign",
                          "$relationship": "flagship",
                          "callsign": "WHYY",
                          "$self": "http://services-qa.pbs.org/callsign/WHYY.json"
                       }
],
                    "mailing_state": "PA",
                    "$type": "application/vnd.pbs-resource+json",
                    "$class": "Station",
                    "$relationship": "parent",
                    "$self": "http://services-qa.pbs.org/station/119.json",
                    "mailing_city": "Philadelphia",
                    "$created": "2012-06-28T04:24:59-04:00",
      "short_common_name": "WHYY",
Localization+ Data Flow
   ZIP Code
     Input

                       Apply HE       Map Call Sign
    Get All           Confidence       to Flagship
   Headends


                    Map Feed(s) to
                                      Apply Sorting
Compare to HE         Call Sign
                                         Filter
  „Blacklist‟


    Check           Get Feed(s) per
 Headend DMA           Headend         API Output

Update Confidence
Let‟s Look at Some ZIPs
Bluebell (test API client)
http://open.pbs.org/lookup/localize_stations/

Goliat (API Explorer)
http://open.pbs.org/explore/
Questions? Feedback?
Now is the time to ask questions and give your
feedback.
Fun ZIP Code
20505
More Information
Documentation (in-progress):
http://projects.pbs.org/confluence/display/localizatio
n/

Questions:
http://answers.open.pbs.org/

GitHub Project Access:
email: open@pbs.org

Comments and Suggestions:
email: pbsi_stationservices@pbs.org

More Related Content

PDF
System_Architecture_Whitepaper
PPTX
C3 Telecom Assessment Overview
PPTX
Voice & data assessment presentation8.22.12
PDF
Hosted VoIP by Jim Seibert-Brinjac Engineering
PDF
10 fn s43
PDF
New SuperNet Services JTC Presentation
PPTX
Cloud Telephone Service for Businesses
System_Architecture_Whitepaper
C3 Telecom Assessment Overview
Voice & data assessment presentation8.22.12
Hosted VoIP by Jim Seibert-Brinjac Engineering
10 fn s43
New SuperNet Services JTC Presentation
Cloud Telephone Service for Businesses

What's hot (19)

PDF
Comcast Business Class Trunks Pri Customer Presentation 0911 (2)
PPTX
Seserv workshop manos dramitinos - tussle analysis from etics project
PDF
Texas Telecommunications Assessment Report Forms-24-101 Texas Telecommunicati...
PDF
Cupria QOS for video over IP
PDF
Etherspeak 911 V3sw
PPTX
Transbeam Overview Presentation
PPTX
Transbeam EOC Service Overview
PDF
SAMSUNG Wireless Enterprise - Voice Optimization [White paper]
PPSX
Lesson 5: Configuring Name Resolution
PPT
Cube2012 scaling service provider backbone using bgp confederations for next ...
PPS
Globalinx Commercial0908
PDF
Gestión de órdenes en despacho a domicilio (Sterling Commerce)
PDF
Customized Dynamic Host Configuration Protocol
PPTX
Don't Lose Your Viewers: Keep Their Attention With High Performance Streaming
PPT
Burstable Enterprise Shared Trunks (Best)V2
PDF
virgin media.VMED_Q12008_presentation
PDF
Fusion Auto Failover/Redundant WAN Solutions
PDF
Ind twss-pdf
Comcast Business Class Trunks Pri Customer Presentation 0911 (2)
Seserv workshop manos dramitinos - tussle analysis from etics project
Texas Telecommunications Assessment Report Forms-24-101 Texas Telecommunicati...
Cupria QOS for video over IP
Etherspeak 911 V3sw
Transbeam Overview Presentation
Transbeam EOC Service Overview
SAMSUNG Wireless Enterprise - Voice Optimization [White paper]
Lesson 5: Configuring Name Resolution
Cube2012 scaling service provider backbone using bgp confederations for next ...
Globalinx Commercial0908
Gestión de órdenes en despacho a domicilio (Sterling Commerce)
Customized Dynamic Host Configuration Protocol
Don't Lose Your Viewers: Keep Their Attention With High Performance Streaming
Burstable Enterprise Shared Trunks (Best)V2
virgin media.VMED_Q12008_presentation
Fusion Auto Failover/Redundant WAN Solutions
Ind twss-pdf
Ad

Viewers also liked (7)

PPT
Fall2010 producer summit_openpbs_final
PDF
Thepresents.ru - Степан Чельцов. 24 января. ПрактикаDays
PDF
белоусова
PDF
Reworker предпочтовая подготовка
PPTX
Contract-Based Web Services API Deep Dive
PDF
Like dolina-3 контекстная реклама
ODP
Ccb1sandra mv
Fall2010 producer summit_openpbs_final
Thepresents.ru - Степан Чельцов. 24 января. ПрактикаDays
белоусова
Reworker предпочтовая подготовка
Contract-Based Web Services API Deep Dive
Like dolina-3 контекстная реклама
Ccb1sandra mv
Ad

Similar to PBS Localization+ API Webinar (20)

PDF
Tranzeo%20 %20 Wireless%20 Isp%20 Primer
PDF
VDSL Home Gateway Router - Copyright, all rights reserved.
PDF
Comtech - Methods to IncreaseTthroughput for Point-to-Point Links
PDF
Why would broadcasters transport their real time professional video over ip b...
PDF
E zcall all_spec_sheets
PDF
Manual completo
PDF
AirWave 8.2.10 User Guide
PDF
Rfs7000 series switch troubleshooting guide
PDF
Rfs7000 series switch troubleshooting guide
PDF
Ios zone based-firewall
PDF
Ios zone based-firewall
PDF
Installing motorola mc-802_wireless_wall_plate
PDF
Zd12xx release notes_9.9
PDF
Configuration of cisco switches
PPTX
Commercial TVWS Solutions Webinar
PDF
Motorola solutions ap622 access point installation guide (part no. 72 e 15780...
PDF
Motorola solutions ap622 access point installation guide (part no. 72 e 15780...
PDF
Ekahau
PDF
Argo Kivilo - EMT Location Based Services
PDF
Cisco 2960 Switch Configuration
Tranzeo%20 %20 Wireless%20 Isp%20 Primer
VDSL Home Gateway Router - Copyright, all rights reserved.
Comtech - Methods to IncreaseTthroughput for Point-to-Point Links
Why would broadcasters transport their real time professional video over ip b...
E zcall all_spec_sheets
Manual completo
AirWave 8.2.10 User Guide
Rfs7000 series switch troubleshooting guide
Rfs7000 series switch troubleshooting guide
Ios zone based-firewall
Ios zone based-firewall
Installing motorola mc-802_wireless_wall_plate
Zd12xx release notes_9.9
Configuration of cisco switches
Commercial TVWS Solutions Webinar
Motorola solutions ap622 access point installation guide (part no. 72 e 15780...
Motorola solutions ap622 access point installation guide (part no. 72 e 15780...
Ekahau
Argo Kivilo - EMT Location Based Services
Cisco 2960 Switch Configuration

More from Public Broadcasting Service (9)

PPTX
Cloud Orchestration is Broken
PPT
Simplified Localization+ Presentation
PPT
Mobile Presentation at PBS TECH CON 2011
PPTX
PBS Presentation at AWS Summit 2012
PPT
I've Got a Key to Your API, Now What? (Joint PBS and NPR API Presentation Giv...
PPTX
Architecture at PBS
PPTX
SQL Injection Defense in Python
PDF
PBS Tech Con 2011 API Workshop
Cloud Orchestration is Broken
Simplified Localization+ Presentation
Mobile Presentation at PBS TECH CON 2011
PBS Presentation at AWS Summit 2012
I've Got a Key to Your API, Now What? (Joint PBS and NPR API Presentation Giv...
Architecture at PBS
SQL Injection Defense in Python
PBS Tech Con 2011 API Workshop

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Approach and Philosophy of On baking technology
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Encapsulation theory and applications.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Cloud computing and distributed systems.
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Empathic Computing: Creating Shared Understanding
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Approach and Philosophy of On baking technology
Understanding_Digital_Forensics_Presentation.pptx
Encapsulation theory and applications.pdf
MYSQL Presentation for SQL database connectivity
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
NewMind AI Monthly Chronicles - July 2025
Digital-Transformation-Roadmap-for-Companies.pptx
Cloud computing and distributed systems.
Network Security Unit 5.pdf for BCA BBA.
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Big Data Technologies - Introduction.pptx
Review of recent advances in non-invasive hemoglobin estimation

PBS Localization+ API Webinar

  • 1. Localization+ Thomas Crenshaw Dir, Technical Product Management
  • 2. Agenda By the conclusion of this webinar, my hope is that you will have gained an understanding of the: • data import process • data sources used • new algorithm • API exploration and testing tools
  • 3. Background Why update PBS station localization? Our goal was to provide a technical solution that satisfies the basic viewer question: What local PBS stations can I watch on my TV? We built this web-service to be as flexible and future-proof as possible and to meet the needs of all PBS stations, despite differing station business requirements. Lesson learned: Without exception, every rule has an exception!
  • 4. Terms and Definitions Localization The process a site visitor goes through to determine which PBS stations are available in his or her geographic area. MSO Technically only applies to a cable system operator, but we will include satellite companies as well. Example: Comcast, University of Wisconsin Headend Distribution network for television programming, serving a local community of variable size. Example: Comcast - Sebastian, UW Madison - Madison Flagship Call Sign FCC-licensed owner and/or operator of one or more full-power transmission towers. Example: WXEL, WPNE, KAID Call Sign Full-power transmission tower owned and/or operated by a flagship station. Example: WXEL,WHA, KUID Rovi Station Feeds Rovi representation of a station‟s channels and sub-channels.
  • 5. The Numbers The sheer volume of data necessary to provide localization at the national level is astounding. • 1,283 MSOs • 11,322 Headends • 515,742 Headend/ZIP code pairs • 180 Flagship call signs • 873 Call signs (full-power and translators) • 1,412 Rovi station feeds • ~42,000 ZIP codes Data as of 2012-07-23
  • 6. What‟s Different The Good Legacy Localization+ Sources 1 (Nielsen) Multiple (Rovi,Nielsen) Data Updates Yearly Daily Troubleshooting Difficult Easy Built for TV Schedules Localization Architecture Non-standard RESTful Technical Changes Difficult Easy User Tools None Goliat, Bluebell Import Logging None Customizable Data Changes Impossible Possible Transparency None Open Source
  • 7. What‟s Different The New Localization+ Results More stations Geolocation Not always accurate IP Based Input Not always accurate Proxy-based IP Not always accurate Static Files Used for lookups to match Rovi/Nielsen/PBS data
  • 8. Get All Headends Get All ZIP Headends Step 1: Get All Headends For a given ZIP code, retrieve all available headends from Rovi.
  • 9. Update Confidence Get All ZIP Headends Update Confidence Step 2: Update the “Confidence” Value “Confidence” is a relative numeric value that represents how likely the member station is available for a given ZIP code. All headends are assigned an initial confidence of 100. This value is lowered based on parameters associated with the headend listings. The highest headend confidence is assigned to applicable stations at end of the import process. A static file with known bad headends and associated confidence is used. 1 of 3
  • 10. Update Confidence Get All Compare ZIP Headends to Blacklist Update Confidence Step 2a: Compare to Blacklist Headends that contain stations that are obviously out of area. •Confidence dropped to 80 •Currently this is only Dish Network, which lists KGTV, WTTW, KRMA in almost all DMAs headend_id headend_name dma_rank dma_code headend_state vendor_mso_id mso_name 320591 Dish Network - Philadelphia 504 4 DE 300264 Echostar Communications Corp. Headends that have consistently bad channel line-up data. •Confidence dropped to 0 headend_id headend_name dma_rank dma_code headend_state vendor_mso_id mso_name 307250 Shaw Direct - Eastern Time Zone 300513 Shaw Direct 320209 C-Band Providers - C-Band Eastern Time 301530 Data Services Product 321898 Eastern Time Zone - Eastern Time Zone N/A 301530 Data Services Product 322141 Bell TV - Eastern Time Zone 300818 Data Services Product 2 of 3
  • 11. Update Confidence Get All Compare Check ZIP Headends to Blacklist DMA Update Confidence Step 2b: Check DMA Headends that do not have DMA Code or DMA Rank have their confidence lowered to 40. headend_id headend_name dma_code dma_rank headend_state vendor_mso_id mso_name 322924 Verizon FIOS TV of SE PA - Verizon FiOS-N. DE DE 301762 Verizon Service Corp 3 of 3
  • 12. Get Feed(s) per Headend Get All Compare Check Get Feed(s) ZIP Headends to Blacklist DMA per Headend Update Confidence Step 3: Get Feed(s) per Headend Get all associated Rovi station feeds for a given headend. 1 of 2
  • 13. headend_id 20547 Get Feed(s) per Headend headend_name Starview Cablevision - Forwood - Wilmington station_id 2406 call_letters NJTV headend_id 307250 headend_name Shaw Direct - Eastern Time Zone station_id 719 call_letters KCTS Confidence: 100 5964 PBS Confidence: 0 959 KSPS 317727 Comcast - New Castle 247 WHYY 2273 WNED Confidence: 100 1564 WNJS 2666 WTVS 9856 WHYYHD 10884 WTVSH 9856 WHYYHD 320209 C-Band Providers - C-Band Eastern Time 5964 PBS 11892 NJTV Confidence: 0 10991 LINK 15985 Y Arts 321898 Eastern Time Zone - Eastern Time Zone 5964 PBS 17699 Y Info Confidence: 0 320478 DirecTV - Philadelphia 247 WHYY 322141 Bell TV - Eastern Time Zone 206 WGBH Confidence: 100 304 WLVT Confidence: 0 719 KCTS 1564 WNJS 719 KCTS 5964 PBS 2666 WTVS 9856 WHYYHD 9873 KCTSD 10991 LINK 11815 WGBHW 15866 WLVTD1 322924 Verizon FIOS TV of SE PA - Verizon FiOS-N. DE 247 WHYY 320591 Dish Network - Philadelphia 247 WHYY Confidence: 100 304 WLVT Confidence: 80 304 WLVT 2378 WNJT 548 WTTW 9856 WHYYHD 927 KRMA 9857 WLVTD4 1564 WNJS 13729 WNJSDT 5964 PBS 15866 WLVTD1 8643 WGTV 15868 WLVTV 10991 LINK 15985 Y Arts 321054 Broadcast TV - Philadelphia 9856 WHYYHD 17699 Y Info Confidence: 100 9857 WLVTD4 323910 Eastern Time Zone - Eastern Time Zone 5964 PBS 11892 NJTV Confidence: 0 11895 WNJT-DT 324883 Shaw Direct Advanced - Eastern Time Zone 719 KCTS 13729 WNJSDT Confidence: 0 959 KSPS 15866 WLVTD1 2273 WNED 15868 WLVTV 2666 WTVS 15985 Y Arts 10884 WTVSH 17699 Y Info 325708 Armstrong Utilities - National/Eastern 5964 PBS 322333 Verizon FIOS TV of SE PA - Verizon FIOS S NJ 247 WHYY Key Confidence: for the headend Valid station 0 Confidence: 40 304 WLVT Questionable station for the headend 1564 WNJS Invalid station for the headend 9856 WHYYHD Station that does not exist for localization purposes 9857 WLVTD4 13729 WNJSDT 15866 WLVTD1 2 of 2
  • 14. Map Feed(s) to Call Sign Get All Compare Check Get Feed(s) Map Feed(s) ZIP Headends to Blacklist DMA per Headend to Call Sign Update Confidence Step 4: Map Rovi Station Feed(s) to PBS Call Sign Use static CSV file to map Rovi station id to PBS call sign. rovi_station_id rovi_station_short_name pbs_callsign pbs_station_flagship_callsign confidence 247 WHYY WHYY WHYY 100 9856 WHYYDT WHYY WHYY 100 15985 WHYYDT2 WHYY WHYY 100 17699 WHYYDT3 WHYY WHYY 100 2378 WNJT WNJT WNJT 100 11895 WNJTDT WNJT WNJT 100 304 WLVT WLVT WLVT 100 9857 WLVTDT4 WLVT WLVT 100 15866 WLVTDT WLVT WLVT 100 15868 WLVTDT3 WLVT WLVT 100 1564 WNJS WNJS WNJT 100 13729 WNJSDT WNJS WNJT 100 2406 WNJTV WNJN WNJT 100 8643 WGTV WGTV WGTV 80 927 KRMA KRMA KRMA 80 548 WTTW WTTW WTTW 80 719 KCTS KCTS KCTS 0 206 WGBH WGBH WGBH 0 stations.txt + hand curated == rovi_stations2callsign.csv
  • 15. Apply Headend Confidence Get All Compare Check Get Feed(s) Map Feed(s) ZIP Headends to Blacklist DMA per Headend to Call Sign Update Confidence Apply Headend Step 5: Apply Headend Confidence to Call Signs Confidence Assign the highest headend confidence value to each call sign. This allows the calling application to make a logical determination as to validity of returned data. rovi_station_id rovi_station_short_name pbs_callsign pbs_station_flagship_callsign confidence 247 WHYY WHYY WHYY 100 9856 WHYYDT WHYY WHYY 100 15985 WHYYDT2 WHYY WHYY 100 17699 WHYYDT3 WHYY WHYY 100 2378 WNJT WNJT WNJT 100 11895 WNJTDT WNJT WNJT 100 304 WLVT WLVT WLVT 100 9857 WLVTDT4 WLVT WLVT 100 15866 WLVTDT WLVT WLVT 100 15868 WLVTDT3 WLVT WLVT 100 1564 WNJS WNJS WNJT 100 13729 WNJSDT WNJS WNJT 100 2406 WNJTV WNJN WNJT 100 8643 WGTV WGTV WGTV 80 927 KRMA KRMA KRMA 80 548 WTTW WTTW WTTW 80 719 KCTS KCTS KCTS 0 206 WGBH WGBH WGBH 0 1 of 2
  • 16. Apply Headend Confidence Broadcast TV - Philadelphia 321054 Broadcast TV - Philadelphia 9856 WHYYHD Confidence: 100 9857 WLVTD4 11892 NJTV 11895 WNJT-DT 13729 WNJSDT WHYY 15866 WLVTD1 15868 WLVTV Confidence: 100 15985 Y Arts 17699 Y Info WLVT Dish Network - Philadelphia Confidence: 100 320591 Dish Network - Philadelphia 247 WHYY Confidence: 80 304 WLVT 548 927 WTTW KRMA WNJS 1564 5964 WNJS PBS Confidence: 100 8643 WGTV 10991 LINK KRMA Bell TV - Eastern Time Zone Confidence: 80 322141 Bell TV - Eastern Time Zone 206 WGBH Confidence: 0 719 KCTS 719 KCTS WGBH 2666 WTVS 9873 KCTSD Confidence: 0 11815 WGBHW Eastern Time Zone - Eastern Time Zone 323910 Eastern Time Zone - Eastern Time Zone 5964 PBS Confidence: 0 2 of 2
  • 17. Map Call Sign to Flagship Get All Compare Check Get Feed(s) Map Feed(s) ZIP Headends to Blacklist DMA per Headend to Call Sign Update Confidence Map Call Sign Apply Headend Step 6: Map Call Sign to Flagship to Flagship Confidence Every call sign is assigned a flagship for purposes of providing a single entity to facilitate donation links, station logos, etc. rovi_station_id rovi_station_short_name pbs_callsign pbs_station_flagship_callsign confidence 247 WHYY WHYY WHYY 100 9856 WHYYDT WHYY WHYY 100 15985 WHYYDT2 WHYY WHYY 100 17699 WHYYDT3 WHYY WHYY 100 2378 WNJT WNJT WNJT 100 11895 WNJTDT WNJT WNJT 100 304 WLVT WLVT WNJT 100 9857 WLVTDT4 WLVT WNJT 100 15866 WLVTDT WLVT WNJT 100 15868 WLVTDT3 WLVT WNJT 100 1564 WNJS WNJS WNJT 100 13729 WNJSDT WNJS WNJT 100 2406 WNJTV WNJN WNJT 100 8643 WGTV WGTV WGTV 80 927 KRMA KRMA KRMA 80 548 WTTW WTTW WTTW 80 719 KCTS KCTS KCTS 0 206 WGBH WGBH WGBH 0
  • 18. Assign Sorting Filter Get All Compare Check Get Feed(s) Map Feed(s) ZIP Headends to Blacklist DMA per Headend to Call Sign Update Confidence Apply Sorting Map Call Sign Apply Headend Step 7: Assign Sorting Filter Filter to Flagship Confidence Currently, Nielsen data is used to sort applicable stations within a given ZIP code. The new architecture employed in the updated localization service allows us to modify the import algorithm as business requirements change. An example of this could be the addition of a flagship station‟s home DMA as a sorting filter. Numeric rank is transformed from the absolute value Nielsen provides to a relative value within the ZIP code.
  • 19. API Output "$items": [ { "confidence": 100, "$class": "CallSign2ZipMapping", "rank": 1, "$self": "http://services-qa.pbs.org/callsigns/zip/19801/WHYY.json", "$links": [ { "$links": [ { "$links": [ { "$accepts": [ { "$type": "application/vnd.pbs-resource+json", "$class": "Callsign" } ], "$relationship": "children", "$elements": "Callsign", "$self": "http://services-qa.pbs.org/callsigns/station/119.json" }, { "$type": "application/vnd.pbs-resource+json", "$class": "Callsign", "$relationship": "flagship", "callsign": "WHYY", "$self": "http://services-qa.pbs.org/callsign/WHYY.json" } ], "mailing_state": "PA", "$type": "application/vnd.pbs-resource+json", "$class": "Station", "$relationship": "parent", "$self": "http://services-qa.pbs.org/station/119.json", "mailing_city": "Philadelphia", "$created": "2012-06-28T04:24:59-04:00", "short_common_name": "WHYY",
  • 20. Localization+ Data Flow ZIP Code Input Apply HE Map Call Sign Get All Confidence to Flagship Headends Map Feed(s) to Apply Sorting Compare to HE Call Sign Filter „Blacklist‟ Check Get Feed(s) per Headend DMA Headend API Output Update Confidence
  • 21. Let‟s Look at Some ZIPs Bluebell (test API client) http://open.pbs.org/lookup/localize_stations/ Goliat (API Explorer) http://open.pbs.org/explore/
  • 22. Questions? Feedback? Now is the time to ask questions and give your feedback.