merged in LBRY-Process-Killer module
parent
aa1110a780
commit
adeb7a9df1
@ -0,0 +1,135 @@
|
||||
;---ENVIRONMENT---------------------------------------------------------------------
|
||||
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
|
||||
;#Warn ; Enable warnings to assist with detecting common errors.
|
||||
;DetectHiddenWindows, On
|
||||
#SingleInstance, Force
|
||||
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
|
||||
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
|
||||
;SetKeyDelay, 500
|
||||
CoordMode, ToolTip, Screen
|
||||
CoordMode, Mouse, Screen
|
||||
;#NoTrayIcon
|
||||
|
||||
|
||||
; Menu, Tray, Icon, %A_scriptDir%\Assets\LBRY-Process-Killer.ico
|
||||
|
||||
;---Notes/Extra Info/#Includes------------------------------------------------------
|
||||
|
||||
|
||||
;---VARIABLES-----------------------------------------------------------------------
|
||||
global DiscordWebhookBotURL
|
||||
|
||||
PassedParameter = %1%
|
||||
if(PassedParameter = "Kill")
|
||||
ExitApp
|
||||
|
||||
IniRead, DiscordWebhookBotURL, %A_scriptDir%\..\Settings.ini, General, DiscordWebhookBotURL, %A_Space%
|
||||
if(DiscordWebhookBotURL = ""){
|
||||
; msgbox, Unable to Read Settings.ini for DiscordWebhookBotURL.`nProgram will not be able to post seed status to Discord
|
||||
; ExitApp
|
||||
}
|
||||
|
||||
|
||||
;---MAIN SCRIPT---------------------------------------------------------------------
|
||||
lbrynetlog_FP = C:\Users\%A_Username%\AppData\Local\lbry\lbrynet\lbrynet.log
|
||||
if(!FileExist(lbrynetlog_FP)){
|
||||
Message = lbrynet.log not found in the usual location. `nPlease submit issue on gitea to add functionality for custom locations.`nClick OK to open gitea page.
|
||||
msgbox % Message
|
||||
run, https://git.zinchuk.xyz/yuriy/LBRY-Process-Killer
|
||||
ExitApp
|
||||
}
|
||||
|
||||
|
||||
FileRead, lbrynetlogContents, C:\Users\%A_Username%\AppData\Local\lbry\lbrynet\lbrynet.log
|
||||
if(lbrynetlogContents = ""){
|
||||
Message = LBRYNet.log exists at normal location, but is currently empty. `nPlease submit issue on gitea about this error message `nClick OK to open gitea page and exit.
|
||||
msgbox % Message
|
||||
run, https://git.zinchuk.xyz/yuriy/LBRY-Process-Killer
|
||||
ExitApp
|
||||
}
|
||||
|
||||
; Msgbox % "lbrynetlogContents: " lbrynetlogContents
|
||||
|
||||
LogContentsArray := StrSplit(lbrynetlogContents, "`n")
|
||||
OriginalArrayLenght := LogContentsArray.Length() ; Save total number of items in the array
|
||||
|
||||
Loop, 45 { ; 3.75 hours, if not complete by this time then exit
|
||||
sleep, 300000 ; 5 minutes
|
||||
; sleep, 60000
|
||||
if(A_index = 6 OR A_index = 12 OR A_index = 24 OR A_index = 36 OR A_index = 48){ ; 30, 60, 120 minutes
|
||||
Message = LBRY: Still waiting for Video to finish Uploading to Reflectors
|
||||
PostProgressToDiscord(Message)
|
||||
}
|
||||
|
||||
FileRead, lbrynetlogContents, C:\Users\%A_username%\AppData\Local\lbry\lbrynet\lbrynet.log
|
||||
UpdatedLogContentsArray := StrSplit(lbrynetlogContents, "`n")
|
||||
ArrayLenght := UpdatedLogContentsArray.Length() ; Count number of individual rows
|
||||
|
||||
Loop, %ArrayLenght% {
|
||||
if(A_index < %OriginalArrayLenght%)
|
||||
Continue ; Skip all lines that that were present in the original .log
|
||||
|
||||
CurrentLineContents := UpdatedLogContentsArray[A_index]
|
||||
|
||||
if(InStr(CurrentLineContents, "Finished sending reflector")){ ; Upload Complete Text on lbrylog
|
||||
SeedingComplete := 1 ; mark seeding as complete and go to next loop
|
||||
OriginalArrayLenght := A_index ; set variable to equal this loop number. So all lines up to this one get skipped next loop round
|
||||
Continue
|
||||
}
|
||||
|
||||
if(InStr(CurrentLineContents, "Sent reflector blob")){ ; Means "Still Uploading" in LBRY API
|
||||
SeedingComplete := 0 ; mark seeding as incomplete as there is still an upload in progress
|
||||
Continue
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(SeedingComplete){
|
||||
Process, Close, LBRY.exe ; terminate LBRY if it's running
|
||||
|
||||
if(DiscordWebhookBotURL){
|
||||
Message = LBRY: Video Finished Seeding to Reflectors. LBRY Process Killed.
|
||||
PostProgressToDiscord(Message)
|
||||
}
|
||||
|
||||
ExitApp
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
;---FUNCTIONS-----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
PostProgressToDiscord(Message){
|
||||
; Need to transform the message into a json string:
|
||||
FormatTime, CurrentTime, YYYYMMDDHH24MISS, hh:mm
|
||||
; Message := "-----------" . CurrentTime . "-----------" . "`n" . Message ; add a ------- to the top of the message to help split them up visually on discord
|
||||
|
||||
; Escape Backslashes
|
||||
Message := StrReplace(Message, "", "\/")
|
||||
|
||||
; Escape quotation marks
|
||||
SingleQuotationmark = "
|
||||
ReplacedQuote = \"
|
||||
Message := StrReplace(Message, SingleQuotationmark, ReplacedQuote)
|
||||
|
||||
; Escape New Character
|
||||
Message := StrReplace(Message, "`n", "\n")
|
||||
|
||||
; Convert into json string
|
||||
JsonString=
|
||||
(
|
||||
{
|
||||
"content": "%Message%"
|
||||
}
|
||||
)
|
||||
try WebRequest := ComObjCreate("WinHttp.WinHttpRequest.5.1")
|
||||
try WebRequest.Open("POST", DiscordWebhookBotURL, false)
|
||||
try WebRequest.SetRequestHeader("Content-Type", "application/json")
|
||||
try WebRequest.Send(JsonString)
|
||||
}
|
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 319 KiB |
Loading…
Reference in New Issue