From adb034276732624465675d9fedbf77ac9d852efa Mon Sep 17 00:00:00 2001 From: Eric Legault Date: Mon, 25 Mar 2024 20:53:19 -0500 Subject: [PATCH] Outlook spam reporting sample (#675) * Create test.md * Initial commit * Removed unnecessary file * Made requested changes to README.md and manifest.xml. Moved source files from commands folder to src folder. Created new manifest-localhost.xml file. * Fix formatting * Fix screenshots --------- Co-authored-by: Sam Ramon <15154970+samantharamon@users.noreply.github.com> --- Samples/outlook-spam-reporting/README.md | 160 ++++++++++++++++++ .../assets/icon-128.png | Bin 0 -> 4693 bytes .../outlook-spam-reporting/assets/icon-16.png | Bin 0 -> 1596 bytes .../outlook-spam-reporting/assets/icon-32.png | Bin 0 -> 2386 bytes .../outlook-spam-reporting/assets/icon-64.png | Bin 0 -> 2112 bytes .../outlook-spam-reporting/assets/icon-80.png | Bin 0 -> 4836 bytes .../assets/logo-filled.png | Bin 0 -> 11915 bytes .../outlook-spam-post-processing-dialog.png | Bin 0 -> 7888 bytes .../readme/outlook-spam-processing-dialog.png | Bin 0 -> 12192 bytes .../readme/outlook-spam-ribbon-button.png | Bin 0 -> 4016 bytes .../manifest-localhost.xml | 132 +++++++++++++++ Samples/outlook-spam-reporting/manifest.xml | 132 +++++++++++++++ .../src/spamreporting.html | 15 ++ .../src/spamreporting.js | 42 +++++ 14 files changed, 481 insertions(+) create mode 100644 Samples/outlook-spam-reporting/README.md create mode 100644 Samples/outlook-spam-reporting/assets/icon-128.png create mode 100644 Samples/outlook-spam-reporting/assets/icon-16.png create mode 100644 Samples/outlook-spam-reporting/assets/icon-32.png create mode 100644 Samples/outlook-spam-reporting/assets/icon-64.png create mode 100644 Samples/outlook-spam-reporting/assets/icon-80.png create mode 100644 Samples/outlook-spam-reporting/assets/logo-filled.png create mode 100644 Samples/outlook-spam-reporting/assets/readme/outlook-spam-post-processing-dialog.png create mode 100644 Samples/outlook-spam-reporting/assets/readme/outlook-spam-processing-dialog.png create mode 100644 Samples/outlook-spam-reporting/assets/readme/outlook-spam-ribbon-button.png create mode 100644 Samples/outlook-spam-reporting/manifest-localhost.xml create mode 100644 Samples/outlook-spam-reporting/manifest.xml create mode 100644 Samples/outlook-spam-reporting/src/spamreporting.html create mode 100644 Samples/outlook-spam-reporting/src/spamreporting.js diff --git a/Samples/outlook-spam-reporting/README.md b/Samples/outlook-spam-reporting/README.md new file mode 100644 index 000000000..5799b8e8f --- /dev/null +++ b/Samples/outlook-spam-reporting/README.md @@ -0,0 +1,160 @@ +--- +title: "Report spam or phishing emails in Outlook (preview)" +page_type: sample +urlFragment: outlook-spam-reporting +products: +- office-add-ins +- office-outlook +- office +languages: +- javascript +extensions: + contentType: samples + technologies: + - Add-ins + createdDate: 03/26/2024 10:00:00 AM +description: "Learn how to create an integrated spam-reporting add-in in Outlook." +--- + +# Report spam or phishing emails in Outlook (preview) + +**Applies to**: Outlook on Windows (preview) + +![A sample spam-reporting dialog.](./assets/readme/outlook-spam-processing-dialog.png) + +## Summary + +This sample showcases how to build an integrated spam-reporting solution that: + +- Is easily discoverable in the Outlook client ribbon. +- Provides the user with a processing dialog to report an email. +- Facilitates saving a copy of the reported email to a file to submit it to your backend system for further processing. + +To learn about key components of this sample, see [Implement an integrated spam-reporting add-in (preview)](https://learn.microsoft.com/office/dev/add-ins/outlook/spam-reporting). + +> [!IMPORTANT] +> The integrated spam-reporting feature is currently in preview in Outlook on Windows. Features in preview shouldn't be used in production add-ins. We invite you to try out this feature in test or development environments and welcome feedback on your experience through [GitHub](https://github.com/OfficeDev/office-js/issues/new/choose). + +## Applies to + +Outlook on Windows starting in Version 2307 (Build 16626.10000). + +> [!NOTE] +> If you don't have a Microsoft 365 subscription, you might qualify for a free developer subscription that's renewable for 90 days and comes configured with sample data. For details, see the [Microsoft 365 Developer Program FAQ](https://learn.microsoft.com/office/developer-program/microsoft-365-developer-program-faq#who-qualifies-for-a-microsoft-365-e5-developer-subscription-). + +## Prerequisites +- Microsoft 365 subscription + +> [!TIP] +> If you're unable to choose a channel in your Outlook client, see [Let users choose which Microsoft 365 Insider channel to install on Windows devices](https://learn.microsoft.com/deployoffice/insider/deploy/user-choice). + +> [!IMPORTANT] +> To test the `getAsFileAsync` method while it's still in preview in Outlook on Windows, you must configure your computer's registry. +> +> Outlook on Windows includes a local copy of the production and beta versions of Office.js instead of loading from the content delivery network (CDN). By default, the local production copy of the API is referenced. To reference the local beta copy of the API, you must configure your computer's registry as follows: +> +> 1. In the registry, navigate to `HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Outlook\Options\WebExt\Developer`. If the key doesn't exist, create it. +> 1. Create an entry named `EnableBetaAPIsInJavaScript` and set its value to `1`. +> +> ![The EnableBetaAPIsInJavaScript registry value is set to 1.](https://learn.microsoft.com/office/dev/add-ins/images/outlook-beta-registry-key.png) + +## Run the sample + +--- + +Run this sample in Outlook on Windows using one of the following add-in file hosting options. + +### Run the sample from GitHub + +1. Download the **manifest.xml** file from this sample to a folder on your computer. +1. Sideload the add-in manifest in Outlook on Windows by following the manual instructions in [Sideload Outlook add-ins for testing](https://learn.microsoft.com/office/dev/add-ins/outlook/sideload-outlook-add-ins-for-testing?tabs=windows-web#sideload-manually). +1. Follow the steps in [Try it out](#try-it-out) to test the sample. + +### Run the sample from localhost + +If you prefer to host the web server for the sample on your computer, follow these steps. + +1. Install a recent version of [npm](https://www.npmjs.com/get-npm) and [Node.js](https://nodejs.org/) on your computer. To verify if you've already installed these tools, run the commands `node -v` and `npm -v` in your terminal. +1. You need http-server to run the local web server. If you haven't installed this yet, run the following command. + + ```console + npm install --global http-server + ``` +1. You need Office-Addin-dev-certs to generate self-signed certificates to run the local web server. If you haven't installed this yet, you can do this with the following command. + + ```console + npm install --global office-addin-dev-certs + ``` +1. Clone or download this sample to a folder on your computer, then go to that folder in a console or terminal window. +1. Run the following command to generate a self-signed certificate to use for the web server. + + ```console + npx office-addin-dev-certs install + ``` + + This command will display the folder location where it generated the certificate files. + +1. Go to the folder location where the certificate files were generated, then copy the **localhost.crt** and **localhost.key** files to the cloned or downloaded sample folder. +1. Run the following command. + + ```console + http-server -S -C localhost.crt -K localhost.key --cors . -p 3000 + ``` + + The http-server will run and host the current folder's files on localhost:3000. + +1. Now that your localhost web server is running, you can sideload the **manifest-localhost.xml** file provided in the sample folder. To sideload the manifest, follow the manual instructions in [Sideload Outlook add-ins for testing](https://learn.microsoft.com/office/dev/add-ins/outlook/sideload-outlook-add-ins-for-testing?tabs=windows-web#sideload-manually). +1. Follow the steps in [Try it out](#try-it-out) to test the sample. + +## Try it out + +Once the add-in is loaded in Outlook, use the following steps to try out its functionality. + +1. Choose a message from your inbox, then select the add-in's button from the ribbon. + + ![The spam-reporting add-in button is selected from the ribbon.](./assets//readme/outlook-spam-ribbon-button.png) +1. In the preprocessing dialog, choose a reason for reporting the message and add information about the message, if configured. Then, select **Report**. +1. (Optional) In the post-processing dialog, select **OK**. + + ![The post-processing dialog of the sample spam-reporting add-in.](./assets//readme/outlook-spam-post-processing-dialog.png) + +## References + +- [Implement an integrated spam-reporting add-in](https://learn.microsoft.com/en-us/office/dev/add-ins/outlook/spam-reporting) +- [ReportPhishingCommandSurface Extension Point](https://learn.microsoft.com/javascript/api/manifest/extensionpoint?view=outlook-js-preview&preserve-view=true#reportphishingcommandsurface-preview) +- [Office.MessageRead.getAsFileAsync() method](https://learn.microsoft.com/javascript/api/outlook/office.messageread?view=outlook-js-preview&preserve-view=true#outlook-office-messageread-getasfileasync-member(1)) +- [Troubleshoot event-based and spam-reporting add-ins](https://learn.microsoft.com/office/dev/add-ins/outlook/troubleshoot-event-based-and-spam-reporting-add-ins) +- [Debug your event-based or spam-reporting Outlook add-in](https://learn.microsoft.com/office/dev/add-ins/outlook/debug-autolaunch) +- [Microsoft Office Add-in Debugger Extension for Visual Studio Code](https://learn.microsoft.com/office/dev/add-ins/testing/debug-with-vs-extension) +- [Develop Office Add-ins with Visual Studio Code](https://learn.microsoft.com/office/dev/add-ins/develop/develop-add-ins-vscode) +- [Office Add-ins with Visual Studio Code](https://code.visualstudio.com/docs/other/office) +- [Debugging with Visual Studio Code](https://code.visualstudio.com/docs/editor/debugging) +- [Node.js debugging in VS Code](https://code.visualstudio.com/docs/nodejs/nodejs-debugging) +- [Office-Addin-Debugging](https://www.npmjs.com/package/office-addin-debugging) + +## Questions and feedback + +- Did you experience any problems with the sample? [Create an issue](https://github.com/OfficeDev/Office-Add-in-samples/issues/new/choose) and we'll help you out. +- We'd love to get your feedback about this sample. Go to our [Office samples survey](https://aka.ms/OfficeSamplesSurvey) to give feedback and suggest improvements. +- For general questions about developing Office Add-ins, go to [Microsoft Q&A](https://learn.microsoft.com/answers/topics/office-js-dev.html) using the office-js-dev tag. + +## Copyright + +Copyright (c) 2024 Microsoft Corporation. All rights reserved. + +This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. + +Run this sample in Outlook on Windows using one of the following add-in file hosting options. +Run this sample in Outlook on Windows using one of the following add-in file hosting options. + +## Solution + +| Solution | Author(s) | +| ----- | ----- | +| Report spam or phishing emails in Outlook (preview) | [Eric Legault](https://www.linkedin.com/in/ericlegault/) | + +## Version history + +| Version | Date | Comments | +| ----- | ----- | ----- | +| 1.0 | March 26, 2024 | Initial release | \ No newline at end of file diff --git a/Samples/outlook-spam-reporting/assets/icon-128.png b/Samples/outlook-spam-reporting/assets/icon-128.png new file mode 100644 index 0000000000000000000000000000000000000000..37dfcd77025e49f00ad33c41543f9f013cd94a83 GIT binary patch literal 4693 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 literal 0 HcmV?d00001 diff --git a/Samples/outlook-spam-reporting/assets/icon-32.png b/Samples/outlook-spam-reporting/assets/icon-32.png new file mode 100644 index 0000000000000000000000000000000000000000..dcf56db7089a10edc61a0914be2af6736c8c676c GIT binary patch literal 2386 zcmbVOX;2es8t#w~5{5vyBA3zx&_zkoImjg-fq(=FA_j;fD+x&>QF53B2?{%Mh=3@& z=&Inch^2TUIO72_Gs>}`Fs_c*Dkvg~sGuSWjvP*-;_eS?YHPcytH1B-=Xu}fy{f*# z=%|GROBYK300^RRVGQyGr(PTu08p5$h$Lj=Yz&nemui!Z>2f^`2$b3+7!;}HE8!Se zuFP0-3HAp7^jeifYLtp2`3kL?DxbnoO==y&1_1vBCY@Zd8a9GS@Jf{?fc*0O&ty=g z3?Rq*i6OBr1Wr+fuhYXz*F{Mb>sBjxO7en0(BH&I45(qF95ks@H3q&Zfc()eA6ZWw z)5zdQh;elQ`I9KAI2sJm>S552%BCpjOfJabQR#j>E`#L@G9Wse2JvWg76qd7As!#1 zgP$KV;!Uqi=En%bKKnv;0pt{;QOBpz($mwa=}f9tzmi7h@pv?dL1Qo|2!dkB&=}<= zipJnMZ9xbd6nd4;sM2b{DU0$XZJIHFj41sSf?6jQe=)2vd`=XSGMY)QqtU4lO|71a z>m%A=jDi0nqogF$*_8SZ>tnC0cFj zbQeUYXpLG!idF}PgiKYP1O6#qrBQ0r4L(z4`V_Sg)~nXS$}qiF4SvisU-cCY|6BZ@ z_{#q`e>6lCZK_%Rt9ho6kdB;Mei;R1^JSP|4KhJ`WKNU&xk(?p< zmLEpzf`USrMP&qsR8qPeME$1Q&*kAxx&K*hynCoXQDAaGNHAFRbmcq z17NnP>Hd%FdpsqU#*&XU==W=1`)9r1-ZT8e6?*289-@T6Z>%bzU^vJ8sK#m?#=QbCPbk~`Rkez-iyA63Aq zsM~-70XVj!)WacEJG6guH%;f5T9ooze%!%6?84n@mEPxY?TKqd3)ckiiym#4YCX0j zlskU=&Hf7Sb)#>q8%_p#+PD!jM+3XFp19r4?4Gm!gqdc7H)7}KKd-%XUP2?P_h!*s zo8tM!FIlebr+z8{?@d@7V4Uh9_3q~0E%WX4Mo*%vDqje#x2)flub?N~2kHpdhr$V4 zU!m+TK*a)o2Uo7F-kaw{U#Y^5N%Ar_ZQSMJv{mku^SoYGKHDJ_Renei8+&y$z;DT| zr@ojj?{-E(Wx*3ksaN!EzyA6whNd&>3|@M#eedkcX|>W<-8jB3@E;*W%!76#mg)~5aU+mhL#c4#Je4VMAooIGr zg*gR}Sz@xZDJP~u%ZRj`Y^<#yd*?X%>FGr?Y~mJxQ2mXTdL!Z4t;GK5y}28$BdV-} z&kAqV$HtLFFV{Ex4ZiC*H>I zOXcO{?~krHc`W(+BM}Gf=HT+pm$6+4nnhlAM-!;?TGvQU#4UYl{MOOZd|y*RMq^~S z@x#4=n=8WSZ;PsGI^VeUhn`?p;cPeSVf#TTu6M}#@0(ka22T11&T*JzKAKy+=S88A zoJHCc2|l>JW_!3<5%y`2`<_{)N&8YypR5fRtiM3}kD$?m@9?AT_4EiEs! z@z^D_dyLa2#iI>|Mz@|jC3rtVZ^u#3gm;lFQ~S1}(}kRx#k;@`yAfPTU~j`!FA07} zN3HlBy>&>P+j8Z}aIP<(H7=Fa7y0lglD_z>?=Pyy(Eg=@VXU>-GXhgJn6t E1JVSZtpET3 literal 0 HcmV?d00001 diff --git a/Samples/outlook-spam-reporting/assets/icon-64.png b/Samples/outlook-spam-reporting/assets/icon-64.png new file mode 100644 index 0000000000000000000000000000000000000000..41051fce805b62ae4b779516cb29f9e36e1a9652 GIT binary patch literal 2112 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 literal 0 HcmV?d00001 diff --git a/Samples/outlook-spam-reporting/assets/readme/outlook-spam-post-processing-dialog.png b/Samples/outlook-spam-reporting/assets/readme/outlook-spam-post-processing-dialog.png new file mode 100644 index 0000000000000000000000000000000000000000..2faa774b5f06508c73f87e1c16ad82cbc4c18a3d GIT binary patch literal 7888 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 WJl#Na#D4(*0000 + + + 942c5096-e075-4dd3-b5c8-dcaeee5c8e6a + + 1.0.0.0 + Eric Legault Consulting Inc. + en-US + + + + + + + https://officedev.github.io + + + + + + + + + + +
+ + + 250 + + +
+ + ReadItem + + + + false + + + + + + + + + + + + + + + + + + + + + + + +