{
    "meta": {
        "lookup": "10370.7610.7a0.fm.radiodns.org",
        "bearer": "fm:7a0.7610.10370",
        "gcc": "7a0",
        "pi": "7610",
        "mhz": 103.7,
        "station": {
            "call": "WMQY-LP",
            "pi": "7610",
            "mhz": "103.70",
            "facility": "785856",
            "city": "SMYRNA",
            "state": "TN",
            "kind": "full-service"
        },
        "checked_at": "2026-10-23T00:55:55+00:00",
        "fqdn": "rdns.mylpfm.com",
        "name": "Smyrna's Gospel Harmony"
    },
    "verdict": {
        "level": "fail",
        "headline": "1 problem found"
    },
    "counts": {
        "pass": 13,
        "warn": 4,
        "fail": 1,
        "info": 9
    },
    "sections": [
        {
            "title": "What is being checked",
            "steps": [
                {
                    "status": "info",
                    "title": "WMQY-LP - SMYRNA, TN",
                    "detail": "From the NRSC list: 103.70 MHz, PI code 7610, FCC facility 785856.",
                    "fix": ""
                },
                {
                    "status": "info",
                    "title": "RadioDNS lookup name",
                    "detail": "10370.7610.7a0.fm.radiodns.org  (frequency 103.70 MHz, PI 7610, country code 7a0)",
                    "fix": ""
                }
            ],
            "extra": []
        },
        {
            "title": "1. RadioDNS registration",
            "steps": [
                {
                    "status": "pass",
                    "title": "Registered",
                    "detail": "10370.7610.7a0.fm.radiodns.org points to the station's authoritative domain: rdns.mylpfm.com",
                    "fix": ""
                }
            ],
            "extra": []
        },
        {
            "title": "2. Service discovery (SRV records)",
            "steps": [
                {
                    "status": "info",
                    "title": "_radiospi._tcp.rdns.mylpfm.com: not published",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "_radioepg._tcp.rdns.mylpfm.com published",
                    "detail": "priority 10, weight 100, port 80 -> rdns.mylpfm.com",
                    "fix": ""
                },
                {
                    "status": "warn",
                    "title": "Only the older _radioepg record is published",
                    "detail": "",
                    "fix": "Add _radiospi._tcp.rdns.mylpfm.com on port 443 as well, so receivers that use HTTPS can find the SI file."
                },
                {
                    "status": "info",
                    "title": "_radiovis._tcp: not published",
                    "detail": "Slideshow/visuals (STOMP) - optional, only needed for a live slideshow service.",
                    "fix": ""
                },
                {
                    "status": "info",
                    "title": "_radiopush._tcp: not published",
                    "detail": "Slideshow/visuals (Server-Sent Events) - optional, only needed for a live slideshow service.",
                    "fix": ""
                },
                {
                    "status": "info",
                    "title": "_radiovis-http._tcp: not published",
                    "detail": "Slideshow/visuals (HTTP) - optional, only needed for a live slideshow service.",
                    "fix": ""
                }
            ],
            "extra": []
        },
        {
            "title": "3. Service Information file (SI.xml)",
            "steps": [
                {
                    "status": "pass",
                    "title": "HTTP endpoint http://rdns.mylpfm.com/radiodns/spi/3.1/SI.xml answered",
                    "detail": "86 ms, 49,624 bytes",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Content type is application/xml",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "warn",
                    "title": "SI file has no caching headers",
                    "detail": "",
                    "fix": "Add Cache-Control: max-age (for example 86400 for 24 hours). Without it, receivers guess - and some ignore the content."
                },
                {
                    "status": "warn",
                    "title": "The file does not strictly follow the official SI schema (3.1)",
                    "detail": "line 23: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 58: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 91: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 127: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 169: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 205: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 239: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 274: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 314: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 347: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 385: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\nline 421: Element 'mediaDescription': This element is not expected. Expected is one of ( keywords, link, bearer, radiodns, geolocation, serviceGroupMember, ##other* ).\n(12 more not shown)",
                    "fix": "Many receivers are forgiving, but strict ones may ignore a file that does not match the schema. RadioDNS's SI tool (si.radiodns.org) can rebuild a correct file."
                }
            ],
            "extra": {
                "links": [
                    [
                        "Make an SI file accessible (PDF)",
                        "https://radiodns.org/wp-content/uploads/2014/02/HOWTO-MakeSIandXSIfilesaccessibletoRadioDNSHybridRadiodevices.pdf"
                    ],
                    [
                        "Build an SI file with RadioDNS's tool",
                        "https://si.radiodns.org/"
                    ]
                ]
            }
        },
        {
            "title": "4. Your station in the file",
            "steps": [
                {
                    "status": "info",
                    "title": "24 services in the file",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Station found: WMQY 103.7",
                    "detail": "Matched on bearer fm:7a0.7610.10370",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Short name: WMQY",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Medium name: WMQY 103.7",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Long name: Smyrna's Gospel Harmony",
                    "detail": "",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Short description present",
                    "detail": "Smyrna's Gospel Harmony",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "Long description present",
                    "detail": "Smyrna's Gospel Harmony",
                    "fix": ""
                },
                {
                    "status": "info",
                    "title": "No keywords",
                    "detail": "Optional.",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "1 link",
                    "detail": "Official Website https://wmqy.org",
                    "fix": ""
                },
                {
                    "status": "pass",
                    "title": "The <radiodns> element matches the registration",
                    "detail": "fqdn rdns.mylpfm.com, service identifier 785856-1",
                    "fix": ""
                }
            ],
            "extra": []
        },
        {
            "title": "5. Logos",
            "steps": [
                {
                    "status": "warn",
                    "title": "Not all five standard logo sizes are listed",
                    "detail": "Missing: 32x32, 112x32",
                    "fix": "RadioDNS asks for either no logos or at least the five standard sizes, so every receiver finds one that fits."
                },
                {
                    "status": "fail",
                    "title": "5 of 5 logos have problems",
                    "detail": "See the table below.",
                    "fix": "Every logo URL must return a real PNG or JPEG of the declared size."
                }
            ],
            "extra": {
                "logos": [
                    {
                        "url": "https://rdns.mylpfm.com/images/785/785856-1-32-32.png",
                        "declared": "?",
                        "actual": "",
                        "bytes": 0,
                        "ok": false,
                        "note": "HTTP 404",
                        "preview": null
                    },
                    {
                        "url": "https://rdns.mylpfm.com/images/785/785856-1-112-32.png",
                        "declared": "?",
                        "actual": "",
                        "bytes": 0,
                        "ok": false,
                        "note": "HTTP 404",
                        "preview": null
                    },
                    {
                        "url": "https://rdns.mylpfm.com/images/785/785856-1-128-128.png",
                        "declared": "128x128",
                        "actual": "",
                        "bytes": 0,
                        "ok": false,
                        "note": "HTTP 404",
                        "preview": null
                    },
                    {
                        "url": "https://rdns.mylpfm.com/images/785/785856-1-320-240.png",
                        "declared": "320x240",
                        "actual": "",
                        "bytes": 0,
                        "ok": false,
                        "note": "HTTP 404",
                        "preview": null
                    },
                    {
                        "url": "https://rdns.mylpfm.com/images/785/785856-1-600-600.png",
                        "declared": "600x600",
                        "actual": "",
                        "bytes": 0,
                        "ok": false,
                        "note": "HTTP 404",
                        "preview": null
                    }
                ]
            }
        },
        {
            "title": "6. Transmitters and streams",
            "steps": [
                {
                    "status": "pass",
                    "title": "FM bearer fm:7a0.7610.10370",
                    "detail": "cost 2, offset 0 ms",
                    "fix": ""
                },
                {
                    "status": "info",
                    "title": "No internet stream listed",
                    "detail": "Optional, but without one receivers cannot switch from FM to an online stream.",
                    "fix": ""
                }
            ],
            "extra": []
        }
    ]
}