La generación de respuesta de correo electrónico a través de MSGraph PHP SDK

DinosaurHunter :

Estoy reconstruyendo un sistema basado en el sistema de alerta temprana para utilizar la API de Microsoft Graph REST y tengo problemas para reproducir la respuesta de correo electrónico funcionalidad que tuve en la implementación de EWS.


Con EWS me gustaría crear una ReplyToItemType, especificar el correo electrónico original y adjuntar el NewBodyContentmodo:

$reply = new ReplyToItemType();

$reply->ReferenceItemId = new ItemIdType();
$reply->ReferenceItemId->Id = $this->message->ItemId->Id;
$reply->ReferenceItemId->ChangeKey = $this->message->ItemId->ChangeKey;

$reply->NewBodyContent = new BodyType();
$reply->NewBodyContent->BodyType = BodyTypeType::HTML;
$reply->NewBodyContent->_ = $this->body;

Esto crearía un nuevo mensaje con el contenido del correo electrónico anterior ya unida y establecer el sujeto (es decir "RE: original subject")


Con MSGraph, no parecen ser capaces de replicar esta funcionalidad ...

Estoy utilizando el POST /users/{id | userPrincipalName}/messages/{id}/replypunto final (por lo especifica el mensaje para responder en la URL):

$this->graph = new Graph();
$this->graph->setAccessToken($token);

$graphRequest = $this->graph->createRequest(
    'POST', '/users/' . $mailbox . '/messages/' . $exchange_id . '/reply'
);

$graphRequest->attachBody($body)->execute();

El cuerpo de la petición, $body, se ve así:

array:1 [
  "Message" => array:6 [
    "sender" => array:1 [
      "emailAddress" => array:1 [
        "address" => "[email protected]"
      ]
    ]
    "toRecipients" => array:1 [
      0 => array:1 [
        "emailAddress" => array:1 [
          "address" => "[email protected]"
        ]
      ]
    ]
    "ccRecipients" => []
    "attachments" => []
    "body" => array:2 [
      "contentType" => "html"
      "content" => "<p>Test</p>"
    ]
    "subject" => "null"
  ]
]

Pero eso envía un correo electrónico con un tema "nulo" y con el contenido:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
    </head>
    <body>
        <p>test</p>
    </body>
</html>

¿Hay alguna forma de replicar la funcionalidad de EWS que el anterior, sin tener que sujetar el contenido del correo electrónico anterior y sujeto de forma manual?

Josh:

En lugar de construir un objeto de mensaje, que va a querer utilizar la propiedad de comentario en su lugar. Configurarlo para una cadena de texto y se convertirá en la parte superior del mensaje de respuesta, con el texto citado del mensaje original que aparece debajo, como era de esperar.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=294664&siteId=1
Recomendado
Clasificación