<?xml version="1.0" encoding="utf-8"?>
<HmsProcessMediaConfig version="2.33">
  <ProcessMediaItemList>
    <ProcessMediaItem>
      <HotKey>0</HotKey>
      <Description>Создание плейлиста m3u из ссылок подкаста</Description>
      <Name>Создать плейлист</Name>
      <ButtonName>Создать плейлист</ButtonName>
      <Button>-1</Button>
      <Script>string gsPlaylistName = "DomRu";            // Название плейлиста
string gsPlaylistFile = "D:\\domru.m3u";    // Путь и имя файла m3u-плейлиста, который будет создан
string gsPodcastPath  = "https://movix.ru"; // Значение поля "Ссылка" подкаста, по которому будет создан плейлист
string gsContent      = "";

///////////////////////////////////////////////////////////////////////////////
// Добавление ссылок из указанной папки в содержимое плейлиста
void AddLinksFromFolder(THmsScriptMediaItem Folder, string sGrp="") {
  for (int i=0; i &lt; Folder.ChildCount; i++) {
    THmsScriptMediaItem Item = Folder.ChildItems[i];
    if (Item.IsFolder) {
      AddLinksFromFolder(Item, Item[mpiTitle]);
    } else {
      gsContent += Format(&apos;#EXTINF:-1 logo=%s group-title="%s" ,%s\r\n&apos;, [Item[mpiThumbnail], sGrp, Item[mpiTitle]]);
      gsContent += Item[mpiMediaResourceSource]+&apos;\r\n&apos;;
    }
  }
}

///////////////////////////////////////////////////////////////////////////////
//                     Г Л А В Н А Я   П Р О Ц Е Д У Р А                     //
{
  THmsScriptMediaItem Podcast = HmsFindMediaFolder(mfVideoPodcastsFolderItemID, gsPodcastPath);
  
  if (Podcast != nil) {
    HmsLogMessage(1, &apos;Начало обнолвения плейлиста &apos;+gsPlaylistFile+&apos; ...&apos;);
    gsContent = &apos;#EXTM3U\r\n&apos;;
    gsContent += &apos;#PLAYLIST: &apos;+gsPlaylistName+&apos; &apos;+DateTimeToStr(Now)+&apos;\r\n&apos;;
    AddLinksFromFolder(Podcast);
    HmsStringToFile(gsContent, gsPlaylistFile);
    HmsLogMessage(1, &apos;Плейлист &apos;+gsPlaylistFile+&apos; обновлён.&apos;);
    
  } else {
    HmsLogMessage(2, &apos;Подкаст со ссылкой "&apos;+gsPodcastPath+&apos;" не найден!&apos;);

  }
}</Script>
      <ScriptSyntaxType>C++Script</ScriptSyntaxType>
      <ScheduleActive>0</ScheduleActive>
      <Schedule>
        <TaskName></TaskName>
        <TaskParams></TaskParams>
        <Occurs>0</Occurs>
        <DailyMode>0</DailyMode>
        <DailyDaysInterval>1</DailyDaysInterval>
        <WeeklyDaysOfWeek>127</WeeklyDaysOfWeek>
        <WeeklyWeekInterval>1</WeeklyWeekInterval>
        <MonthlyMode>0</MonthlyMode>
        <MonthlyDayOfMonth>1</MonthlyDayOfMonth>
        <MonthlyWeekOfMonth>0</MonthlyWeekOfMonth>
        <MonthlyDayOfWeek>0</MonthlyDayOfWeek>
        <MonthlyMonths>4095</MonthlyMonths>
        <DailyFrequency>0</DailyFrequency>
        <OnceAtTime>0</OnceAtTime>
        <ExecuteTimeList></ExecuteTimeList>
        <TimeUnit>0</TimeUnit>
        <TimeInterval>3600</TimeInterval>
        <TimeStart>0</TimeStart>
        <TimeEnd>86399</TimeEnd>
        <DateStart>43990</DateStart>
        <NoEndDate>-1</NoEndDate>
      </Schedule>
    </ProcessMediaItem>
  </ProcessMediaItemList>
</HmsProcessMediaConfig>
