У меня проблема с отправкой сообщения в Microsoft Teams. Я следовал Документам Microsoft - https://docs.microsoft.com/en-us/graph/api/channel-post-messages?view=graph-rest-beta&tabs=http и что-то не работает.
Я написал следующий код:
$aToken = getAccessToken();
$dataArray = [
"body" => [
"content" => 'Hello World!'
]
];
$dataJSON = json_encode($dataArray, true);
$CURLHeaders = [
'Content-Type: application/json',
'Content-Length: ' . strlen($dataJSON),
'Authorization: ' . $aToken,
];
$ch = curl_init($postURL);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_setopt($ch, CURLOPT_KEEP_SENDING_ON_ERROR, true);
curl_setopt($ch, CURLOPT_HTTPGET, false);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $dataJSON);
curl_setopt($ch, CURLOPT_HTTPHEADER, $CURLHeaders);
$result = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
и мой $ CURLHeader:
(
[0] => Content-Type: application/json
[1] => Content-Length: 35
[2] => Authorization: Bearer eyJ0eXAiO...
)
и $ data JSON: {"body":{"content":"Hello World!"}}
После отправки я получаю сообщение:
{
"error": {
"code": "UnknownError",
"message": "",
"innerError": {
"request-id": "88094f5d-1bcb-4875-9d49-880db19a146b",
"date": "2020-04-14T16:00:28"
}
}
}
Что-то не так, но я не знаю что ...