我用来发送消息的代码工作正常。我已经正确配置了 web-hooks,因为 clickatell 服务器给出了 200 响应,这意味着我的系统收到了回调,但它没有捕获回调的信息。我还是新手,所以我可能做错了什么。 clickatell 库
CONTROLER--通过电子邮件发送回拨结果(我正在收到电子邮件但没有回拨结果)
public function callback(){
$this->load->library('clickatell_rest'); //Load Clickatell library
$this->clickatell_rest->parseStatusCallback(function ($result){
$callbackRunDate = date('Y-m-d H:i:s');
$from_email = 'admin@aaa.co.za';
$to = 'sebakets@gmail.com';
$message = $callbackRunDate.' '.print_r($result);
$subject = 'Callback Results';
$this->email->set_mailtype('html');
$this->email->from($from_email, 'Clickatell');
$this->email->to($to);
$this->email->subject($subject);
$this->email->message($message);
$this->email->send();
});
}
Clickatell 库函数
public static function parseStatusCallback($callback, $file = STDIN){
$body = file_get_contents($file);
$body = json_decode($body, true);
$keys = [
'apiKey',
'messageId',
'requestId',
'clientMessageId',
'to',
'from',
'status',
'statusDescription',
'timestamp'
];
if (!array_diff($keys, array_keys($body))) {
$callback($body);
}
return;
}