2017-04-06 3 views
1

이런 식으로 물어 보는 것은 이상한 일이지만, PHP로 텔레 그램 봇을 프로그래밍하려고합니다.메시지 보내기 Telegram bot (PHP)

봇이 채널 (예 : 채널 A)에 있고 그 채널에서 메시지를 보내려고하므로 봇은 개의 메시지를 다른 채널 (채널 B)에 복사합니다. 매분 Y 분. 그래서

Example: 

X = 5 
Y = 60 
Channel A = ID ..... 
Channel B = ID ..... 

는 매 시간마다 A와 B에서 5 메시지를 복사합니다 ...

아무도 나에게 템플릿을하시기 바랍니다 쓸 수 있습니까? 나는 VPS와 webhook stuff (SSL 등)을 설정할 수 있다고 생각한다.

+2

스택 오버플로에 오신 것을 환영합니다! 우리는 특정 업무에 종사하는 프로그래머를 돕는 자원 봉사자 커뮤니티입니다. 우리는 무료 코드를 작성하는 서비스가 아닙니다 ** **입니다. [여기에 대해 나는 어떤 주제를 물을 수 있습니까?] (http://stackoverflow.com/help/on-topic)와 [어떻게 좋은 질문을합니까?] (http://stackoverflow.com/help/how - ~ ask) –

+0

@AlexHowansky 당신 말이 맞아요. 나는 몇 줄을 시험해 봤지만 처음부터 물어보기로했습니다. 미안 해요 –

+0

제 생각에 만약 당신이 "저에게 템플릿을 써주세요"라고 바꾸시겠습니까? "어떻게 할 수 있습니까?", 그것은 stackoverflow에 존재할 수 있습니다 –

답변

1

분당 메시지를 보내고 전보 콜백에서 메시지를 받으려면 대기열 (zmq, redis, gearman 등)에 대한 정보가 필요합니다.

  1. 데몬을 만듭니다. 이들은 당신의 봇입니다. 그들은 대기열에서 메시지를 읽고 콜백을 보낼 수 있습니다.
  2. 컨트롤러를 써서 텔레 그램에서 콜백을받습니다. 그것은 메시지를 취하고 대기열로 푸시 할 수 있습니다.
  3. PHP에 Ev 또는 이벤트 확장을 설치하십시오. (당신은 reactphp을 사용할 수 있습니다, 그것은 타이머를 만드는 간단한 해결책입니다)
  4. Bot1은 타이머를 만들고 듣습니다. 더 많은 메시지가 5 개있는 경우 타이머는 Bot2의 대기열에 메시지를 푸시 할 수 있습니다.

당신은

추신 : 귀하의 작업에 도움을 reactphp/zmq, NRK/predis - 비동기을 사용할 수 있습니다 가장 간단한 해결책입니다. 그러나 pthreads (대신에 데몬 프로세스 생성)를 사용하거나 간단한 소켓을 사용하여 bot에서 메시지를 보낼 수 있습니다.

+0

tnx 버디! 나는 스톱워치 예를 발견했고 그것을하려고했습니다! tnx :) –