2017-05-12 1 views
0

전보를 통해 메시지를 보내려면 간단한 로봇이 필요합니다. 나는 텍스트 파일에서 $ URL을 넣어 .... 내가 file_get_contents를 사용하는 경우전보 봇 서버에서 메시지를 보내지 못했습니다 (PHP)

header('Content-Type: text/html; charset=utf-8'); 
$message= file_get_contents("php://input"); 
$arrayMessage= json_decode($message, true); 
$token= "*********"; 
$chat_id= $arrayMessage['message']['from']['id']; 
$command= $arrayMessage['message']['text']; 
    if($command == '/start'){ 
     $text= "Hello"; 
     $url= "https://api.telegram.org/bot".$token."/sendMessage?chat_id=".$chat_id."&text=".$text; 
     file_put_contents("message.txt", $url); 
     //file_get_contents ($url); 
     $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_URL, $url); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
     $output = curl_exec($ch); 
     curl_close($ch); 
     } 
  1. 내가 잘못된 요청 (400) HTTP를받을 컬 아무것도
  2. 변경 : 나는 이유는이 PHP 코드를 사용 그리고 나는 브라우저에서 그것을 사용하고 위대한 작품

어떤 제안?

ssl certificate에 cloudflare를 사용하면 webhook 메서드가 시작됩니다. 다음과 같이

답변

0

어쩌면 당신이 오류를 찾기 위해

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); 

및 기타 디버깅 코드를 추가해야합니다

var_dump (curl_getinfo ($ch)); 
if (curl_errno ($ch)) { 
    print curl_error ($ch); 
} else { 
    curl_close ($ch); 
} 
+0

https://api.telegram.org/bot****/sendMessage? chat_id = *** & text = hello 문제점을 발견했습니다. & ==> & 인코딩 방법을 시도했지만 작동하지 않습니다. – Mostafa

+0

문제가 해결되지 않았다면 어려울 수 있습니다. – Ravistm