Partilhar via


Resolver problemas de suplementos baseados em eventos e relatórios de spam

À medida que desenvolve o seu suplemento baseado em eventos ou relatórios de spam , pode deparar-se com problemas, como o suplemento não estar a carregar ou um evento não estar a ocorrer. As secções seguintes fornecem orientações sobre como resolver problemas com o seu suplemento.

Rever os pré-requisitos das funcionalidades

Verificar os requisitos do manifesto e do JavaScript

  • Certifique-se de que as seguintes condições são cumpridas no manifesto do suplemento.

    • Verifique se o URL de localização do ficheiro de origem do suplemento está disponível publicamente e não está bloqueado por uma firewall. Este URL é especificado no elemento SourceLocation do manifesto apenas do suplemento ou na propriedade "extensions.runtimes.code.page" do manifesto unificado para o Microsoft 365.

    • Verifique se o <elemento Runtimes> (manifesto apenas de suplemento) ou a propriedade "extensions.runtimes.code" (manifesto unificado) referencia corretamente o ficheiro HTML ou JavaScript que contém os processadores de eventos. O Outlook clássico no Windows utiliza o ficheiro JavaScript durante o runtime, enquanto Outlook na Web, na nova IU do Mac e o novo Outlook no Windows utilizam o ficheiro HTML. Para obter um exemplo de como isto é configurado no manifesto, veja a secção "Configurar o manifesto" de Definir automaticamente o assunto de uma nova mensagem ou compromisso.

      Para o Outlook clássico no Windows, tem de agrupar todo o código JavaScript de processamento de eventos neste ficheiro JavaScript referenciado no manifesto. Tenha em atenção que um pacote JavaScript grande pode causar problemas com o desempenho do suplemento. Recomendamos o pré-processamento de operações pesadas, para que não sejam incluídas no código de processamento de eventos.

  • Verifique se o ficheiro JavaScript de processamento de eventos chama Office.actions.associate. Isto garante que o nome do processador de eventos especificado no manifesto está mapeado para o seu equivalente JavaScript. O código a seguir é um exemplo.

    Office.actions.associate("onNewMessageComposeHandler", onNewMessageComposeHandler);
    
  • O código JavaScript de suplementos baseados em eventos e relatórios de spam que são executados no Outlook clássico no Windows só suporta especificações ECMAScript 2016 e anteriores. Alguns exemplos de sintaxe de programação a evitar são os seguintes.

    • Evite utilizar async instruções e await no seu código. Incluir estes no código JavaScript fará com que o suplemento exceda o tempo limite.
    • Evite utilizar o operador condicional (ternary), uma vez que impedirá o carregamento do suplemento.

    Se o seu suplemento tiver apenas um ficheiro JavaScript referenciado por Outlook na Web, no Windows (novo e clássico) e no Mac, tem de limitar o código ao ECMAScript 2016 para garantir que o suplemento é executado no Outlook clássico no Windows. No entanto, se tiver um ficheiro JavaScript separado referenciado por Outlook na Web, mac e novo Outlook no Windows, pode implementar uma especificação ECMAScript posterior nesse ficheiro.

Depurar o suplemento

  • À medida que efetua alterações ao seu suplemento, tenha em atenção que:

    • Se atualizar o manifesto, remova o suplemento e, em seguida, carregue-o em sideload novamente. Se estiver a utilizar o Outlook no Windows, também tem de fechar e reabrir o Outlook.
    • Se efetuar alterações a ficheiros que não o manifesto, feche e reabra o cliente do Outlook no Windows ou no Mac ou atualize o separador do browser em execução Outlook na Web.
    • Se ainda não conseguir ver as suas alterações depois de efetuar estes passos, limpe a cache do Office.
  • À medida que testa o seu suplemento no Outlook clássico no Windows:

    • Para suplementos baseados em eventos, marcar Visualizador de Eventos para quaisquer erros de suplemento reportados.

      1. No Visualizador de Eventos, selecioneAplicaçãode Registos> do Windows.
      2. No painel Ações , selecione Filtrar Registo Atual.
      3. No menu pendente Registado , selecione o seu período de tempo de registo preferido.
      4. Selecione a caixa de verificação Erro .
      5. No campo IDs de Evento, introduza 63.
      6. Selecione OK para aplicar os filtros.

      Um exemplo das definições Filtrar Registo Atual do Visualizador de Eventos configurado para mostrar apenas erros do Outlook com o ID de evento 63 que ocorreram na última hora.

    • Verifique se o ficheiro bundle.js é transferido para a seguinte pasta no Explorador de Arquivos. O texto incluído no [] representa as suas informações aplicáveis do Outlook e do suplemento.

      %LOCALAPPDATA%\Microsoft\Office\16.0\Wef\{[Outlook profile GUID]}\[Outlook mail account encoding]\Javascript\[Add-in ID]_[Add-in Version]_[locale]
      

      Dica

      • Não existe nenhum método direto para determinar o GUID do perfil do Outlook e a codificação da conta de correio utilizada no caminho do ficheiro bundle.js . A abordagem mais eficaz para localizar o ficheiro debundle.js do suplemento é inspecionar manualmente cada pasta até localizar a pasta Javascript que contém o ID do suplemento.

      • Se o ficheiro bundle.js não aparecer na pasta Wef e o seu suplemento estiver instalado ou sideload, reinicie o Outlook. Em alternativa, remova o suplemento do Outlook e, em seguida, carregue-o novamente.

  • À medida que testa o seu suplemento no Outlook no Windows (clássico) ou Mac, ative o registo de runtime para identificar possíveis problemas de instalação de manifestos e suplementos. Para obter orientações sobre como utilizar o registo de runtime, veja Depurar o suplemento com o registo de runtime.

  • Defina pontos de interrupção no código para depurar o suplemento. Para obter instruções específicas da plataforma, veja Depurar suplementos baseados em eventos e relatórios de spam.

Procurar ajuda adicional

Se ainda precisar de ajuda depois de executar os passos de resolução de problemas recomendados, abra um problema do GitHub. Inclua capturas de ecrã, gravações de vídeo ou registos de runtime para complementar o relatório.

Confira também