Estoy escribiendo el conversacional para facebook utilizando php. La consulta de facebook está procesando a través del archivo php. Y es simlar a que la lógica:
//got request from facebook
foreach ($data['entry'][0]['messaging'] as $message){
if (checkAnswer($message['sender']['id'], $command)){
$command = ;
$command = empty($message['postback']) ? $message['message']['text'] : $message['postback']['payload'];
$bot->send(new Message($message['sender']['id'], 'Thank you very much for participation!'));
}
}
function checkAnswer($id, $text){
//some logic;
}
Si dos mensajes de diferentes personas se envían en un momento estoy observando siguiente. la llamada de la función checkAnswer no está en la cola (lo entendí registrando el proceso de ejecución con el registro a archivo). Por ejemplo, se le puede llamar por la petición 2 (solicitud de facebook), mientras que la solicitud 1 no se ha completado. Y a causa de ella (no estoy seguro al 100%), la variable $ id no siempre es lo mismo y tengo la ejecución del algoritmo mal ... El archivo de registro de inicio y parada está aquí:
///////start////////////////////////
01:0:21 PM ID: 250 Text: 2
///////start////////////////////////
01:0:21 PM ID: 352 Text: 1
01:0:22 PM ID: 250 Text: 2
////////stop////////////////////////
01:0:22 PM ID: 352 Text: 1
////////stop////////////////////////
Estoy trabajando con apache2 y php7 y es mi primera aplicación con servicios web. Podría dar alguna idea de cómo es posible para solucionarlo?













