mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-26 23:13:00 +02:00
Merge branch 'master' of https://github.com/tuxbox-neutrino/gui-neutrino into ni/tuxbox
Origin commit data
------------------
Branch: ni/coolstream
Commit: 62498909da
Author: gixxpunk <thomas.harfmann@gmail.com>
Date: 2017-06-15 (Thu, 15 Jun 2017)
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
@@ -217,6 +217,7 @@ const CControlAPI::TyCgiCall CControlAPI::yCgiCallList[]=
|
||||
{"crypt", &CControlAPI::CryptCGI, "text/plain"},
|
||||
// timer
|
||||
{"timer", &CControlAPI::TimerCGI, "text/plain"},
|
||||
{"sendalltimers", &CControlAPI::TimerSendCGI, "text/plain"},
|
||||
// bouquet editing
|
||||
{"setbouquet", &CControlAPI::setBouquetCGI, "text/plain"},
|
||||
{"savebouquet", &CControlAPI::saveBouquetCGI, "text/plain"},
|
||||
@@ -346,7 +347,34 @@ void CControlAPI::TimerCGI(CyhookHandler *hh)
|
||||
hh->SendError();
|
||||
}
|
||||
|
||||
void CControlAPI::TimerSendCGI(CyhookHandler *hh)
|
||||
{
|
||||
hh->outStart();
|
||||
|
||||
if (NeutrinoAPI->Timerd->isTimerdAvailable())
|
||||
{
|
||||
if (!hh->ParamList.empty())
|
||||
{
|
||||
bool force = (hh->ParamList["force"] == "1") || (hh->ParamList["force"] == "true");
|
||||
if(!hh->ParamList["ip"].empty())
|
||||
{
|
||||
NeutrinoAPI->SendAllTimers(hh->ParamList["ip"],force);
|
||||
hh->SendOk();
|
||||
}
|
||||
else if(!hh->ParamList["name"].empty())
|
||||
{
|
||||
NeutrinoAPI->SendAllTimers(NeutrinoAPI->GetRemoteBoxIP(decodeString(hh->ParamList["name"])),force);
|
||||
hh->SendOk();
|
||||
}
|
||||
else
|
||||
hh->SendError();
|
||||
}
|
||||
}
|
||||
else
|
||||
hh->SendError();
|
||||
}
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
void CControlAPI::SetModeCGI(CyhookHandler *hh)
|
||||
{
|
||||
if (!(hh->ParamList.empty()))
|
||||
|
@@ -73,6 +73,7 @@ private:
|
||||
|
||||
// CGI functions for ExecuteCGI
|
||||
void TimerCGI(CyhookHandler *hh);
|
||||
void TimerSendCGI(CyhookHandler *hh);
|
||||
void SetModeCGI(CyhookHandler *hh);
|
||||
void GetModeCGI(CyhookHandler *hh);
|
||||
void ExecCGI(CyhookHandler *hh);
|
||||
|
@@ -27,6 +27,7 @@
|
||||
#include <driver/rcinput.h>
|
||||
#include <driver/screen_max.h>
|
||||
#include <driver/pictureviewer/pictureviewer.h>
|
||||
#include <system/httptool.h>
|
||||
#include <gui/color.h>
|
||||
#include <gui/widget/icons.h>
|
||||
#include <gui/movieplayer.h>
|
||||
@@ -530,3 +531,54 @@ std::string CNeutrinoAPI::getLogoFile(t_channel_id channelId)
|
||||
return logoString;
|
||||
return "";
|
||||
}
|
||||
|
||||
std::string CNeutrinoAPI::GetRemoteBoxIP(std::string _rbname)
|
||||
{
|
||||
std::string c_url = "";
|
||||
for (std::vector<timer_remotebox_item>::iterator it = g_settings.timer_remotebox_ip.begin(); it != g_settings.timer_remotebox_ip.end(); ++it)
|
||||
{
|
||||
if (it->rbname == _rbname)
|
||||
{
|
||||
if (!it->user.empty() && !it->pass.empty())
|
||||
c_url += it->user + ":" + it->pass +"@";
|
||||
c_url += it->rbaddress;
|
||||
c_url += ":" + to_string(it->port);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return c_url;
|
||||
}
|
||||
|
||||
void CNeutrinoAPI::SendAllTimers(std::string url, bool force)
|
||||
{
|
||||
CTimerd::TimerList timerlist;
|
||||
timerlist.clear();
|
||||
Timerd->getTimerList(timerlist);
|
||||
sort(timerlist.begin(), timerlist.end());
|
||||
CTimerd::TimerList::iterator timer = timerlist.begin();
|
||||
|
||||
int pre,post;
|
||||
Timerd->getRecordingSafety(pre,post);
|
||||
CHTTPTool httpTool;
|
||||
std::string r_url;
|
||||
|
||||
for(int i = 0; timer != timerlist.end(); ++timer)
|
||||
{
|
||||
if (timer->eventType == CTimerd::TIMER_RECORD) {
|
||||
r_url = "http://";
|
||||
r_url += url;
|
||||
r_url += "/control/timer?action=new";
|
||||
r_url += "&alarm=" + to_string((int)timer->alarmTime + pre);
|
||||
r_url += "&stop=" + to_string((int)timer->stopTime - post);
|
||||
r_url += "&announce=" + to_string((int)timer->announceTime + pre);
|
||||
r_url += "&channel_id=" + string_printf(PRINTF_CHANNEL_ID_TYPE_NO_LEADING_ZEROS, timer->channel_id);
|
||||
r_url += "&aj=on";
|
||||
r_url += "&rs=on";
|
||||
|
||||
r_url = httpTool.downloadString(r_url, -1, 300);
|
||||
|
||||
if ((r_url=="ok") || force)
|
||||
Timerd->removeTimerEvent(timer->eventID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -84,6 +84,8 @@ public:
|
||||
std::string getAudioInfoAsString(void);
|
||||
std::string getCryptInfoAsString(void);
|
||||
std::string getLogoFile(t_channel_id channelId);
|
||||
std::string GetRemoteBoxIP(std::string _rbname);
|
||||
void SendAllTimers(std::string url, bool force = false);
|
||||
public:
|
||||
CNeutrinoAPI();
|
||||
~CNeutrinoAPI(void);
|
||||
|
Reference in New Issue
Block a user