When Virtual Agent generates an image, it will put the image in sys_attachment table and simultaneously create a record in sys_cs_media table for the image. Platform provides a URL by which we can access this image. We use this URL to build the JSON payload which we send to Microsoft Teams. Generally this URL looks like: <Customer Instance URL>/api/now/v1/cs/media/<MediaId>
When Microsoft Teams renders the payload, ideally it should render the image using the URL in payload. But some of our customers are restricting the access within the company network only due to which Microsoft Teams is not able to access the image. For any image which Microsoft Teams is not able to access, they will show a broken image.
When we see a broken image in Microsoft Teams:
The best way to check this is by accessing the URL from Mobile data or personal home network without connecting to company's VPN. We are doing this to check if the image URL is publicly accessible or not. If the image is not accessible, it would imply that Microsoft Teams also would not be able to access it and that is why it will show a broken image.
Below are the documentation for inclusion listing and Microsoft Teams IPs: