SOLVED

Workflow Messages are Empty when Posting to Mobile App Private Channel

Copper Contributor

Hi,

 

I have a workflow setup on my teams private channel. I modified the workflow to post as "User" (otherwise it does not work). I am able to post message to the private channel successfully but the message is empty only on mobile private channels. The messages contain an adaptive card.

 

I am able to see the message on my desktop application private channels, but not on my Teams mobile app private channels. There is just an empty message display on the mobile app.

 

Is there any settings that I need to change to fix this? Or should be the payload be different in this case?

 

This payloads works for desktop private and public channel and mobile public channel. The issue seems to be on mobile app private channel.

 

 

 

 

 

 

{
  "attachments": [
    {
      "contentType": "application/vnd.microsoft.card.adaptive",
      "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
      "version": "1.4",
      "content": {
        "msteams": { "width": "full" },
        "type": "AdaptiveCard",
        "body": [
          {
            "type": "Container",
            "style": "warning",
            "bleed": true,
            "items": [
              {
                "type": "TextBlock",
                "size": "medium",
                "weight": "bolder",
                "text": "Test title",
                "style": "heading",
                "wrap": true
              }
            ]
          },
          {
            "type": "TextBlock",
            "size": null,
            "weight": null,
            "text": "Test description",
            "style": null,
            "wrap": true
          },
          {
            "type": "FactSet",
            "facts": [
              { "title": "custom:stringKey", "value": "value-string" },
              { "title": "custom:stringSetSingleton", "value": "singleton" },
              {
                "title": "custom:stringSet",
                "value": "forth item, third item, tenth item, sixth item, eighth item, eleventh item, eighteenth item, second item, twentieth item, ninth item, seventeenth item, first item, nineteenth item, seventh item, fo..."
              }
            ]
          }
        ],
        "actions": [
          {
            "type": "Action.OpenUrl",
            "title": "View Item",
            "url": "https://example.com"
          }
        ]
      }
    }
  ]
}

 

 

 

 

 

 

12 Replies

@nevilk , Thanks for raising your issue. We will check this at our end and will update you accordingly.

@nevilk , we tried to repro this issue using Workflow and the same card JSON provided, however it sends empty card irrespective of private or public channel in both Teams desktop/web and mobile client.

Prasad_DasMSFT_0-1726479279095.pngPrasad_DasMSFT_1-1726479351169.png

 



 

Hi @Prasad_Das-MSFT, thanks for taking a look. I believe you are seeing that because of the payload you are using for that workflow. The payload contains a list on adaptiveCards inside the attachments field.

 

For the action that you are using Post a card in a chat or channel, you need to pass a specific adaptiveCard and not a list of adaptiveCards. 

 

I was using the workflow called Post to a channel when a webhook request is received. This workflow will iterate through each adaptiveCard in the payload and then post each card to the channel. 

 

May you please retry with this workflow? Here are the some screenshots from my end.

 

Please note that this exact payload is working for public channels on mobile teams and both public/private on macOS teams.

 

MacOS Teams version: Version 24215.1002.3039.5089 (24215.1002.3039.5089)

iOS Teams version: Version 6.16.2 Build 6.16.77.20241629011/0903 (general)

Screenshot 2024-09-16 at 9.23.14 AM.png

Screenshot 2024-09-16 at 9.23.35 AM.png

IMG_5564.jpg

Hi @Prasad_Das-MSFT, thanks for looking into this issue. I believe you are seeing that behavior due to the payload you are using. The payload provided contains a list of adaptiveCards in the attachments field.

 

The action you are using here Post card in a chat or channel requires a single adpativeCard.

 

I was using the default workflow called Post to a channel when a webhook request is received, which iterates through each of the adpativeCard in the list and posts it to a channel using the action you used seaprately.

 

May you try again with this workflow? I am attaching few screenshots from my end.

 

Please note that this is working on public channels in mobile teams and on public/private channels on macOS teams.

 

For some reason, the first time I replied it was posted and now its removed. Hence this post.

 

MacOS teams version: Version 24215.1002.3039.5089 

iOS teams version: Version: 6.16.2  Build: 6.16.77.2024162901/0903

 

Screenshot 2024-09-16 at 9.23.14 AM.png

Screenshot 2024-09-16 at 9.23.35 AM.png

IMG_5564.jpg

@nevilk , how are you triggering the flow, are you using cURL command? Could you please explain?

Hi @Prasad_Das-MSFT, yes I either use a cURL command or POST the payload to the workflow URL using Postman.

@nevilk, we are able to repro this issue now. The card renders perfectly in Teams desktop/web client, however in mobile devices (irrespective of private or public channel) it renders empty.
Teams web/desktop:

Prasad_DasMSFT_0-1726660815000.png
Mobile:

Prasad_DasMSFT_1-1726661015816.png


We have raised a bug for this issue. We will inform you once we get any further update from engineering team.

 

 

Thanks, 

Prasad Das

------------------------------------------------------------------------------------------ 

If the response is helpful, please click "**Mark as Best Response**" and like it. You can share your feedback via Microsoft Teams Developer Feedback link. Click here to escalate. 

 



 

@Prasad_Das-MSFT Thanks for confirming this. I wanted to note that this issue seems specific to private channels in mobile teams.  

 

Public channel in mobile teams works as expected from my end. See screenshots:

 

MacOS Team public channel:

Screenshot 2024-09-18 at 11.15.20 AM.png

iOS Team public channel:

IMG_5645.jpg

 

best response confirmed by nevilk (Copper Contributor)
Solution

@nevilk ,we changed the card JSON format as below and it started rendering properly in both Teams Mobile Public and private channels. Could you please try once and let us know if it renders at your end as well?

 

{
  "type": "message",
  "attachments": [
    {
      "contentType": "application/vnd.microsoft.card.adaptive",
      "content": {
        "type": "AdaptiveCard",
		"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "version": "1.4",
        "body": [
          {
            "type": "Container",
            "style": "warning",
            "bleed": true,
            "items": [
              {
                "type": "TextBlock",
                "size": "medium",
                "weight": "bolder",
                "text": "Test title",
                "style": "heading",
                "wrap": true
              }
            ]
          },
          {
            "type": "TextBlock",
            "size": null,
            "weight": null,
            "text": "Test description",
            "style": null,
            "wrap": true
          },
          {
            "type": "FactSet",
            "facts": [
              { "title": "custom:stringKey", "value": "value-string" },
              { "title": "custom:stringSetSingleton", "value": "singleton" },
              {
                "title": "custom:stringSet",
                "value": "forth item, third item, tenth item, sixth item, eighth item, eleventh item, eighteenth item, second item, twentieth item, ninth item, seventeenth item, first item, nineteenth item, seventh item, fo..."
              }
            ]
          }
        ],
        "actions": [
          {
            "type": "Action.OpenUrl",
            "title": "View Item",
            "url": "https://example.com"
          }
        ]
      }
    }
  ]
}

 



Result: (Both in Private and Public channel in Mobile devices)
Android:

Prasad_DasMSFT_0-1726730239659.png

 

iOS:

Prasad_DasMSFT_0-1726738261226.png

 



@Prasad_Das-MSFT Thanks for the updated payload. I can confirm its working on mobile Teams private channels. I wonder if this is an inconsistency in the backend processing payloads for cross platforms, as it works for desktop/web and mobile public channels. Would engineering still be looking into this?

@nevilk , we already have a bug raised for this. If we get any update from engineering team, we will definitely inform you. Thanks!

If the response was helpful, please share your feedback via Microsoft Teams Developer Feedback link.

 

1 best response

Accepted Solutions
best response confirmed by nevilk (Copper Contributor)
Solution

@nevilk ,we changed the card JSON format as below and it started rendering properly in both Teams Mobile Public and private channels. Could you please try once and let us know if it renders at your end as well?

 

{
  "type": "message",
  "attachments": [
    {
      "contentType": "application/vnd.microsoft.card.adaptive",
      "content": {
        "type": "AdaptiveCard",
		"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "version": "1.4",
        "body": [
          {
            "type": "Container",
            "style": "warning",
            "bleed": true,
            "items": [
              {
                "type": "TextBlock",
                "size": "medium",
                "weight": "bolder",
                "text": "Test title",
                "style": "heading",
                "wrap": true
              }
            ]
          },
          {
            "type": "TextBlock",
            "size": null,
            "weight": null,
            "text": "Test description",
            "style": null,
            "wrap": true
          },
          {
            "type": "FactSet",
            "facts": [
              { "title": "custom:stringKey", "value": "value-string" },
              { "title": "custom:stringSetSingleton", "value": "singleton" },
              {
                "title": "custom:stringSet",
                "value": "forth item, third item, tenth item, sixth item, eighth item, eleventh item, eighteenth item, second item, twentieth item, ninth item, seventeenth item, first item, nineteenth item, seventh item, fo..."
              }
            ]
          }
        ],
        "actions": [
          {
            "type": "Action.OpenUrl",
            "title": "View Item",
            "url": "https://example.com"
          }
        ]
      }
    }
  ]
}

 



Result: (Both in Private and Public channel in Mobile devices)
Android:

Prasad_DasMSFT_0-1726730239659.png

 

iOS:

Prasad_DasMSFT_0-1726738261226.png

 



View solution in original post