<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 9/3/23 07:03, Philip Brady wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:AS8P193MB1464C27AF66EB2AE4C66A0A1CDEAA@AS8P193MB1464.EURP193.PROD.OUTLOOK.COM">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}.MsoChpDefault
        {mso-style-type:export-only;}div.WordSection1
        {page:WordSection1;}</style>
      <div class="WordSection1">
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Sent from <a
            href="https://go.microsoft.com/fwlink/?LinkId=550986"
            moz-do-not-send="true">
            Mail</a> for Windows</p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div
          style="mso-element:para-border-div;border:none;border-top:solid
          #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
          <p class="MsoNormal" style="border:none;padding:0cm"><b>From:
            </b><a href="mailto:pb.mythtv@gmail.com"
              moz-do-not-send="true">Peter Bennett</a><br>
            <b>Sent: </b>01 September 2023 21:34<br>
            <b>To: </b><a href="mailto:mythtv-users@mythtv.org"
              moz-do-not-send="true" class="moz-txt-link-freetext">mythtv-users@mythtv.org</a><br>
            <b>Subject: </b>Re: [mythtv-users] API call
            Guide/GetProgramList broken with port 6744.</p>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p><o:p> </o:p></p>
        <div>
          <p class="MsoNormal">On 9/1/23 09:46, Philip Brady wrote:<o:p></o:p></p>
        </div>
        <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
          <div>
            <p class="MsoNormal"><span
                style="font-size:12.0pt;color:black">The API call
                /Guide/GetProgramList is broken with port 6744.  It does
                not respect the Details=true parameter.
                <o:p></o:p></span></p>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">This breaks
                  portability of my 'split film' utility.<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">I know that the
                  right course of action for me is to submit a bug, but
                  can anyone point me at a tutorial for doing that
                  please?<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">mythbackend
                  --version<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">Please attach all
                  output as a file in bug reports.<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">MythTV Version :
                  v34.0~master.202306020720.ed409bfc02~ubuntu22.04.1<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">MythTV Branch :
                  master<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">Network Protocol
                  : 91<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">Library API :
                  34.20220913-1<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">QT Version :
                  5.15.3<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">Options compiled
                  in:<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"> linux profile
                  use_hidesyms using_alsa using_oss using_pulse
                  using_pulseoutput using_backend using_bindings_perl
                  using_bindings_python using_bindings_php using_dvb
                  using_firewire using_frontend using_hdhomerun
                  using_satip using_vbox using_ceton using_joystick_menu
                  using_libcec using_libcrypto using_gnutls
                  using_libdns_sd using_libxml2 using_lirc using_mheg
                  using_opengl using_egl using_qtwebkit using_qtscript
                  using_qtdbus using_taglib using_v4l2 using_v4l2prime
                  using_x11 using_system_libbluray
                  using_system_libudfread using_systemd_notify
                  using_systemd_journal using_drm using_bindings_perl
                  using_bindings_python using_bindings_php
                  using_freetype2 using_mythtranscode using_opengl
                  using_egl using_drm using_vaapi using_nvdec
                  using_vdpau using_ffmpeg_threads using_mheg
                  using_libass using_libxml2 using_libmp3lame<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">With port 6544 I
                  get this:<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><a
href="http://192.168.2.109:6544/Guide/GetProgramList?StartTime=2023-09-01T13:22:13Z&ChanId=11080&Count=6&Details=true"
                    moz-do-not-send="true">http://192.168.2.109:6544/Guide/GetProgramList?StartTime=2023-09-01T13:22:13Z&ChanId=11080&Count=6&Details=true</a><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">...<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><Recording><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><RecordedId>0</RecordedId><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><Status>Unknown</Status><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><Priority>0</Priority><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><StartTs
                  xsi:nil="true"/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><EndTs
                  xsi:nil="true"/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><FileSize>0</FileSize><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><FileName/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><HostName/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><LastModified
                  xsi:nil="true"/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><RecordId>0</RecordId><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><RecGroup/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><PlayGroup/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><StorageGroup/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><RecType>0</RecType><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><DupInType>1</DupInType><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><DupMethod>1</DupMethod><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><EncoderId>0</EncoderId><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><EncoderName/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><Profile/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"></Recording><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">but with port
                  6744 I get:<o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><a
href="http://192.168.2.109:6744/Guide/GetProgramList?StartTime=2023-09-01T13:22:13Z&ChanId=11080&Count=6&Details=true"
                    moz-do-not-send="true">http://192.168.2.109:6744/Guide/GetProgramList?StartTime=2023-09-01T13:22:13Z&ChanId=11080&Count=6&Details=true</a><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><Recording
                  xsi:nil="true"/><o:p></o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
            </div>
            <div>
              <p class="MsoNormal"><span
                  style="font-size:12.0pt;color:black">Phil<o:p></o:p></span></p>
            </div>
            <p class="MsoNormal"><span
                style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
          </div>
        </blockquote>
        <p>When there is a recording scheduled, the Recording tags is
          filled in. When there is no recording scheduled for that
          program, it is reported as nil.</p>
        <p><o:p> </o:p></p>
        <p><u>Recording scheduled</u>:</p>
        <p><Recording version="1.3"><br>
          <RecordedId>0</RecordedId><br>
          <Status>10</Status><br>
          <StatusName>Inactive</StatusName><br>
          <Priority>0</Priority><br>
          <StartTs>2023-09-01T20:01:00Z</StartTs><br>
          <EndTs>2023-09-01T21:00:00Z</EndTs><br>
          <FileSize>0</FileSize><br>
          <FileName xsi:nil="true"/><br>
          <HostName>rocinante</HostName><br>
          <LastModified>2023-09-01T20:00:00Z</LastModified><br>
          <RecordId>178</RecordId><br>
          <RecGroup>Default</RecGroup><br>
          <StorageGroup>Default</StorageGroup><br>
          <PlayGroup>Default</PlayGroup><br>
          <RecType>4</RecType><br>
          <DupInType>15</DupInType><br>
          <DupMethod>6</DupMethod><br>
          <EncoderId>0</EncoderId><br>
          <EncoderName xsi:nil="true"/><br>
          <Profile>Default</Profile><br>
          </Recording></p>
        <p class="MsoNormal"><br>
          <u>Not scheduled</u>:<br>
          <Recording xsi:nil="true"/><o:p></o:p></p>
        <p><o:p> </o:p></p>
        <p>The old API would return a tag full of default, null and
          invalid values when no recording was scheduled. This, in my
          opinion, was a bug in the old code that is now fixed.</p>
        <p><o:p> </o:p></p>
        <p><u>OLD Result for no schedule</u>:</p>
        <p><Recording><br>
          <RecordedId>0</RecordedId><br>
          <Status>Unknown</Status><br>
          <Priority>0</Priority><br>
          <StartTs xsi:nil="true"/><br>
          <EndTs xsi:nil="true"/><br>
          <FileSize>0</FileSize><br>
          <FileName/><br>
          <HostName/><br>
          <LastModified xsi:nil="true"/><br>
          <RecordId>0</RecordId><br>
          <RecGroup/><br>
          <PlayGroup/><br>
          <StorageGroup/><br>
          <RecType>0</RecType><br>
          <DupInType>1</DupInType><br>
          <DupMethod>1</DupMethod><br>
          <EncoderId>0</EncoderId><br>
          <EncoderName/><br>
          <Profile/><br>
          </Recording></p>
        <p><o:p> </o:p></p>
        <p>Can you handle this in your utility?</p>
        <p><o:p> </o:p></p>
        <p>Peter</p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Thanks Peter.<o:p></o:p></p>
        <p class="MsoNormal">Yes, should be able to handle that and I’ll
          update the documentation accordingly.<o:p></o:p></p>
        <p class="MsoNormal">Would you clarify though – is it only the
          ‘Guide’ APIs or is it applied to the ‘Dvr’ ones too?<o:p></o:p></p>
        <p class="MsoNormal">Regards<o:p></o:p></p>
        <p class="MsoNormal">Phil.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
      </div>
    </blockquote>
    <p>The infrastructure that gets the requests and formats the results
      was rewritten and all of the methods were converted. There are
      minor changes throughout.</p>
    <p>I checked Dvr/GetRecordedList. Artwork is one structure that is
      optional. <br>
    </p>
    <p>In the old API an empty Artwork shows like this</p>
    <p><Artwork><br>
      <ArtworkInfos/><br>
      </Artwork><br>
    </p>
    <p>In the new API an empty Artwork shows like this:</p>
    <p><Artwork xsi:nil="true"/></p>
    <p>In case you want to run comparisons:<br>
    </p>
    <p>In master, versions before v34-Pre-408-gdd35e85329 use port 6744
      for the new api and 6544 for the old.</p>
    <p>Versions after v34-Pre-408-gdd35e85329 use port 6544 for the new
      API and have the old api on port 6550. This old API will not be
      updated and will be removed at some point. Port 6744 is also still
      available and runs the new API.<br>
    </p>
    <p>I hope this helps.</p>
    <p>Peter<br>
    </p>
    <p><br>
    </p>
  </body>
</html>