Jump to content
sir drake

API-Tasks-Command-Reflection

Recommended Posts

sir drake

Hello Griga,

 

maybe somthing for further versions.

 

by using the Tasks-command ( api/tasks.html?action=.... ) 
i did not know, when a started process is finished.
(also not if start has happen successfully. no feedback given ) 

should it be possible to implement this as a feedback
once in the existing status2-request or in a sep. new tasks-status-request ? 

in a very specific case i need to know if a process has ended 

prior i fire the next command to dms.

 

every suggestion is welcome

 

brgds

sir drake
 

Share this post


Link to post
sir drake

similar but not exactly what i want to know.
 

thanks for spending time to this topic

brgds

sir drake

Share this post


Link to post
Griga

The requirements are the same. What you want needs

  1. An ID as reference allowing to specify exactly for which task you want to get feedback. The ID may for example include the task trigger (timer, API, web interface...), task name and time of execution.
  2. Objects that are able to monitor internal tasks (as already existing for external process tasks) and to indicate their running state.

Without this basis a "task feedback API" is impossible and the question "is my task finished?" cannot be answered. Since such a system does not exist in the DMS, it must be designed and implemented first. You can't do the second step before the first one.

 

Share this post


Link to post
sir drake

Hi Griga,
yes, your are right.

Maybe in future, one day..... :)

 

meanwhile a simple sleep(1000) does the job as well.

but uncontrolled.

 

so what..

 

thanks again

Share this post


Link to post
majstang
On 5/5/2018 at 1:13 PM, Griga said:

The requirements are the same. What you want needs

  1. An ID as reference allowing to specify exactly for which task you want to get feedback. The ID may for example include the task trigger (timer, API, web interface...), task name and time of execution.
  2. Objects that are able to monitor internal tasks (as already existing for external process tasks) and to indicate their running state.

Without this basis a "task feedback API" is impossible and the question "is my task finished?" cannot be answered. Since such a system does not exist in the DMS, it must be designed and implemented first. You can't do the second step before the first one.

 

 

It's truly great this in-detail-analysis has begun. A task feedback API would be awesome and something at least i have missed for a decade now. The new webinterface task notifications is nice, although in current state they leave the user wanting more. One idea is maybe if splitting the webinterface "Tasks" page in two windows, where one contains the tasks as is now and the other a task in-progress list which displays both auto activated (by script or timer) and manually activated tasks. Possibly also an other tab (or sub-window) with task deployment history, timings and error description if failed/aborted. That way the need to plow the logs to see if a task did run ok gets unnecessary.   

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • AnBad
      By AnBad
      Hallo,
      weiß jemand eine Möglichkeit wie man von FHEM aus EPG_Daten des Mediaservers aufrufen bzw. nach FHEM importieren kann? Also z.B. einmal am Tag für bestimmte Sender das Programm für z.B. die nächsten drei Tage.
       
      Ich weiß es gibt eine API-Schnittstelle im Mediaserver. Aber ich habe da keine Ahnung. Könnte man mit "http://[user]:[password]@[IP]:[port]/api/" Daten im Browser anzeigen lassen, die man dann mit Parsing abgreift? Wobei ich nicht einmal weiß, welchen User und Passwort ich in das Link eintragen müsste.
       
      Danke
      Michael
    • sir drake
      By sir drake
      Hallo Griga,
      ich möchte ein meinem Programm neben dem CHANNEL-NAME auch die Quelle( SAT/Internet...HLS Deutsch....)  einer Aufnahme anzeigen.
      In einem TIMER-RECORD habe kann ich hierfür den Node  <CHANNEL ID> zerlegen und benutzen.
      In einem RECORDING-RECORD habe ich nur den Node >CHANNEL>xxxx</CHANNEL>
      Das reicht leider für meine Zwecke nicht aus.

      <recording id="98" charset="255" start="20181021195500" duration="001000">
      <channel>Das Erste</channel>
      <channel ID>1234567890</channel ID>
      <file>
      d:\_aufnahmen\2018-10-21_19-59-23_das erste_tagesschau.ts
      </file>
      <title>Tagesschau</title>
      <image>2706243175_SM.jpg</image>
      </recording>
       
      Vielleicht kannst du diesen Node optional beim Aufruf hinzufügen:
       
      ....://localhost:8089/api/recordings.html?utf8=1&amp;images=1;channel_id=1
       
       
      vg & Dank 
      Sir Drake
    • mani tehrani
      By mani tehrani
      hi
      how can i reduce size of  recorded files with ffmpeg tasks? for example how can i change bitrate and convert "mpg" recorded files to MP4?
      i know some channels are HD and others are SD, is there different?
    • Siox
      By Siox
      Hallo zusammen,
       
      Dear english Reader,
      see below the german text.
       
      ich wollte euch gerne ein Projekt vorstellen, welches ich schon ewig vor hatte. Leider ist erst jetzt etwas daraus geworden.
       
      Im Prinzip geht es bei meinem Projekt darum, die Media Server API in die objektorientierte .Net Welt zu holen. Mein Projekt ist also ein Wrapper der nicht viel Wissen um die API mitbringen soll. Der Wrapper soll sich um alles selbst kümmern. Also um die Kommunikation mit dem Media Server und mit dem Aufbereiten der Daten.
       
      Was der Wrapper leisten soll:
      Der Wrapper soll es ermöglichen z.B. Massenänderungen an Aufnahmen vorzunehmen. Er soll es ferner ermöglichen leicht nach Inhalten zu suchen und diese auf dem Player seiner Wahl abzuspielen. Den Player selbst muss man entweder selbst erstellen oder man greift auf die integrierte DVBViewer Kontrollfunktionen zurück. Er soll auch eine komplette Ferndiagnose möglich machen. So denke ich darüber nach, den Wrapper auch nach .Net Core zu portieren, damit ich ein Überwachungstool des Servers auf einem Raspberry PI umsetzen kann. Auch ein Port nach UWP ist möglich, damit lassen sich Windows Store Apps umsetzen.
       
      Ich dachte mir nun: Wenn ich ihn weiter entwickele, dann darf er ruhig auf die Bedürfnisse anderer zugeschnitten werden.
       
      Den Sourcecode des Projektes habe ich auf Github online gestellt. Getestet wird der Wrapper von mir aktuell in einer CLI Anwendung.
       
      English Version:
      I wanted to introduce you to a project that I had planned for ages. Unfortunately, only now has something come of it.

      In principle, my project is about getting the Media Server API into the object-oriented .Net world. My project is a wrapper that does not have much knowledge about the API. The wrapper should take care of everything. So to the communication with the Media Server and the preparation of the data.

      What the wrapper should do:

      The wrapper should allow e.g. Make mass changes to recordings. He should also make it easy to search for content and play it on the player of his choice. You either have to create the player yourself or you can access the integrated DVBViewer control functions. He should also make a complete remote diagnosis possible. So I'm thinking about porting the wrapper to .Net Core so I can implement a server monitoring tool on a Raspberry PI. A port to UWP is possible, so that can be implemented Windows Store Apps.

      I thought to myself: If I continue to develop it, then it can be tailored to the needs of others.

      I put the source code of the project online on Github. The wrapper is currently being tested by me in a CLI application.
       

       
      German:
      Eine Demo CLI-Anwendung ist in der Beschreibung des Git. Sowie auch der Stand des Projektes.
       
      Um selbst damit zu starten, brauchst du nichts weiter über den MediaServer wissen, außer die IP-Adresse, den Benutzernamen und das Passwort.
      So hat man das Wichtigste mit den folgenden Zeilen Code schon erledigt.
       
      English:
      A demo CLI application is in the description of Git. As well as the state of the project.

      To start it yourself, you do not need to know anything about the MediaServer except the IP address, username and password.
      So you have already done the important thing with the following lines code.
      var dvbServ = new DVBViewerServerApi { IpAddress = "Name-of-PC or IpAddress", //Password is now a SecureString, read the readme on Github //Password = "password for guest or admin", User = "username for guest or admin", Port = 8089 }; German:
      Ich freue mich auf Reaktionen und Kommentare dazu.
       
      Hinzugekommen ist eine Demo-Applikation, welche in WPF geschrieben ist. Diese App funktioniert ab Windows 7. Einen Download findest du am Ende dieses Beitrages.
      Diese App unterstützt die Sprachen Deutsch und Englisch.
       
      English:
      I look forward to reactions and comments.
        Added is a demo application written in WPF. This app works from Windows 7. You will find a download at the end of this article.
      This app supports the languages German and English.  

       
      Link zur Source: Projekt auf Github.com
      Link zur Demo mit grafischer Oberfläche - Sourcecode: Projekt auf Github.com
      Link zur Demo Release - Ausführbare Datei: Release auf Github.com
    • sir drake
      By sir drake
      Hallo Griga,
      ich habe heute den DMS über den RS installiert und viele Funktionen meines Programmes arbeiten ohne Änderungen.

      Eine Funktion will aber nicht so richtig:
       
      http://localhost:8089/api/tasks.html?task=EPGStart

      liefert zwar einen http-result = 200 aber es ist die komplette param-liste der tasks die möglich sind.
      ich sehe auch auf der StatusSeite des web-interface, das der EPGstart nicht statt gefunden hat.
      Das geht mir auch mit dem Task CleanupDB so, den ich im Grunde benötige.

      User und PW werden wie in allen anderen Befehlen korrekt gesetzt.
      Das ist eine zentrale Routine, die alle Kommandos in Richtung RS/DMS ausführt.
      Abrufen der Sender,  EPGs, Timer, aktivieren/deaktivieren funzt alles.
       
      Ging unter der letzten RS-Version einwandfrei.
       
      Hast du eine Idee ? 
       
      vg 
      Sir Drake
×
×
  • Create New...