Added extra fields to RECORDING_END trigger:
- time of connection start - time of connection end - duration of media - first media timestamp - last media timestamp
This commit is contained in:
parent
9bdc6fd7c3
commit
422caafde2
2 changed files with 19 additions and 1 deletions
|
@ -58,6 +58,8 @@ namespace Mist{
|
|||
Output::Output(Socket::Connection & conn) : myConn(conn){
|
||||
pushing = false;
|
||||
firstTime = 0;
|
||||
firstPacketTime = 0xFFFFFFFFFFFFFFFFull;
|
||||
lastPacketTime = 0;
|
||||
crc = getpid();
|
||||
parseData = false;
|
||||
wantRequest = true;
|
||||
|
@ -839,6 +841,10 @@ namespace Mist{
|
|||
}
|
||||
if (prepareNext()){
|
||||
if (thisPacket){
|
||||
lastPacketTime = thisPacket.getTime();
|
||||
if (firstPacketTime == 0xFFFFFFFFFFFFFFFFull){
|
||||
firstPacketTime = lastPacketTime;
|
||||
}
|
||||
|
||||
|
||||
//slow down processing, if real time speed is wanted
|
||||
|
@ -904,12 +910,22 @@ namespace Mist{
|
|||
Triggers::doTrigger("CONN_CLOSE", payload, streamName);
|
||||
}
|
||||
if (isRecordingToFile && config->hasOption("target") && Triggers::shouldTrigger("RECORDING_END", streamName)){
|
||||
uint64_t rightNow = Util::epoch();
|
||||
std::stringstream payl;
|
||||
payl << streamName << '\n';
|
||||
payl << config->getString("target") << '\n';
|
||||
payl << capa["name"].asStringRef() << '\n';
|
||||
payl << myConn.dataUp() << '\n';
|
||||
payl << (Util::epoch() - myConn.connTime()) << '\n';
|
||||
payl << (rightNow - myConn.connTime()) << '\n';
|
||||
payl << myConn.connTime() << '\n';
|
||||
payl << rightNow << '\n';
|
||||
if (firstPacketTime != 0xFFFFFFFFFFFFFFFFull){
|
||||
payl << (lastPacketTime - firstPacketTime) << '\n';
|
||||
}else{
|
||||
payl << 0 << '\n';
|
||||
}
|
||||
payl << firstPacketTime << '\n';
|
||||
payl << lastPacketTime << '\n';
|
||||
Triggers::doTrigger("RECORDING_END", payl.str(), streamName);
|
||||
}
|
||||
/*LTS-END*/
|
||||
|
|
|
@ -133,6 +133,8 @@ namespace Mist {
|
|||
virtual bool isPushing(){return pushing;};
|
||||
bool allowPush(const std::string & passwd);
|
||||
void bufferLivePacket(DTSC::Packet & packet);
|
||||
uint64_t firstPacketTime;
|
||||
uint64_t lastPacketTime;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue