Добрый день, есть вот такой простенький скрипт по отправке команды на сайт. Выдает ошибку Unterminated string. Нашла что это из за того что $sPD = не в одну строчку, подскажите пожалуйста как правильно изменить скрипт что бы команда отправлялась. Спасибо
Код:
Global $hColor = 0x2962FF
_Loop()
Func _Loop()
Local $iSearch
Do
$iSearch = PixelSearch (660, 159, 892, 638, $hColor)
if @error <> 1 Then
oHTTP ()
EndIf
Sleep (1000)
Until 1 <> 1
EndFunc
Func _oHTTP
; The data to be sent
$sPD = '{
"name": "Test",
"secret": "vc3i425ljfdho",
"side": "{{strategy.order.action}}",
"symbol": "{{usd/rur}}",
"positionSide": "{{strategy.market_position}}",
"open": {
"amountType": "balance",
"amount": "33"
},
"sl": {
"ofs": "1"
},
"tp": {
"orders": {
"0": {
"ofs": "1",
"piece": "25.0"
},
"1": {
"ofs": "2.2",
"piece": "25.0"
},
"2": {
"ofs": "3.5",
"piece": "25.0"
},
"3": {
"ofs": "5",
"piece": "25.0"
}
}
}
}
'
; Creating the object
$oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
$oHTTP.Open("POST", "[URL]https://hook.finandy.com/Bkuk4Of05ZfnKjIhqdxqlUK[/URL]", False)
$oHTTP.SetRequestHeader("Content-Type", "application/json")
; Performing the Request
$oHTTP.Send($sPD)
; Download the body response if any, and get the server status response code.
$oReceived = $oHTTP.ResponseText
$oStatusCode = $oHTTP.Status
If $oStatusCode <> 200 then
MsgBox(4096, "Response code", $oStatusCode)
EndIf
; Saves the body response regardless of the Response code
$file = FileOpen("Received.html", 2) ; The value of 2 overwrites the file if it already exists
FileWrite($file, $oReceived)
FileClose($file)
EndFunc
Последнее редактирование модератором: