MS Teams bot deploy rejects auto-generated manifest.json with message "Manifest parsing has failed" - node.js

I redeployed my (sideloaded) Teams app that implements a very simple bot that auto-messages rooms every day.
This was working for a long time, and I made a slight change so I needed to redeploy, remove from the Teams room, and add it back.
After I removed and tried to add it back (without changing any of the settings) I now get an error telling me "Manifest Parsing has failed"
I also get the following errors in my console log:
Manifest is below. This was 100% generated within Teams, and is not something I made edits to myself, so not sure why it's telling me it can't parse (some fields redacted):
{
"$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.8/MicrosoftTeams.schema.json",
"manifestVersion": "1.8",
"version": "1.0.0",
"id": "dbb36443-1bce-48e0-81d2-b30aa3698144",
"packageName": "com.prosourcer-teams",
"developer": {
"name": "MY NAME",
"websiteUrl": "URL",
"privacyUrl": "URL",
"termsOfUseUrl": "URL"
},
"icons": {
"color": "color.png",
"outline": "outline.png"
},
"name": {
"short": "ps-app",
"full": "ps-chatBot"
},
"description": {
"short": "short desc",
"full": "full desc"
},
"accentColor": "#FFFFFF",
"bots": [
{
"botId": "bfcb70de-e093-4733-b236-742eb3b0aad8",
"scopes": [
"personal",
"team",
"groupchat"
],
"supportsFiles": false,
"isNotificationOnly": false
}
],
"permissions": [
"identity",
"messageTeamMembers"
],
"validDomains": [
"URL"
]
}
UPDATE: If I try to add the bot to an individual team, I also get the following error in my console. I have confirmed that appId is correct, not sure where I'm supposed to be setting my TeamsId:

If there's an existing installation somewhere still around it might be causing this. Try incrementing the version number. Currently it's 1.0.0, try bumping even to 1.0.1 or 1.1.0.
Update - maybe there's an issue in Teams - there is a question just before yours today with a similar issue - see "Manifest parsing has failed" when installing teams apps from App Studio . Sounds like an issue with Teams or App Studio. If so, you can try manually uploading the manifest to your internal company store.

Manually change the manifest version to 1.7 (down from 1.8). As of Oct 15, 2020 that is the work around.
manifestVersion": "1.7"
(The Teams App Studio app generates the manifest with version 1.8, but the Teams client parsing fails as you have also run into)

Related

Azure IoT edge "Invalid image placeholder" after months of no changes

When trying to deploy my IoT edge modules, I get an error code 400 (Invalid config). Looking at the issue, it says Invalid image placeholder. Inside deployment.template.json, my module looks like this:
"modules": {
"sampleMod": {
"version": "1.0",
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "${MODULES.sampleMod}", // This line has 'Invalid image placeholder' as an error
"createOptions": {}
}
}
}
This used to work. A couple of months ago, this file would work just fine, but now it doesn't. I can put an image URL there, and it works just fine, but since they change with every version it would be tedious to switch out the URL after every push.
I'm not sure when this behavior changed (July 12 is a good candidate, as that's the release date of IoT edge v1.3) but adding the architecture solved it for me. It's worth noting that my module dockerfile is named Dockerfile.arm64v8, as it was before this change.
"modules": {
"sampleMod": {
"version": "1.0",
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "${MODULES.sampleMod.arm64v8}", // Add architecture here.
"createOptions": {}
}
}
}

Microsoft Graph Search 400 error when searching

I'm getting a 400 error when trying to do a search both through the Graph Explorer and through my own code. Both worked a few weeks ago but have stopped working recently. Another developer has been able to replicate it in their Tenancy, but Microsoft will not provide me support as we are not a Premier Customer.
If I run this query:
https://graph.microsoft.com/v1.0/drives{drive_id}/root/
it succeeds and returns information about the drive.
Following the documentation at https://learn.microsoft.com/en-us/graph/api/driveitem-search?view=graph-rest-1.0&tabs=http a search can be used via
https://graph.microsoft.com/v1.0/drives/{drive-id}/root/search(q='foobar')
But this returns a 400 error with "One of the provided arguments is not acceptable."
However, if I search for items in our entire Tenancy via the group search it succeeds so it doesn't appear to be a permissions error, but is not a viable solution as I need to search a particular drive.
please confirm whether you are still facing the issue. I was not able to reproduce the same from my side.
I ran this query:
https://graph.microsoft.com/v1.0/me/drives/drive-id/root/Search(q='Practices Checker')
And was able to get the desired result as below:
{
"#odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(driveItem)",
"value": [
{
"#odata.type": "#microsoft.graph.driveItem",
"createdDateTime": "2020-12-09T11:55:47Z",
"id": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"lastModifiedDateTime": "2020-11-03T06:51:27Z",
"name": "Practices Checker",
"webUrl": "https://microsoftapc-my.sharepoint.com/personal/ribera_xxxxxxxx_com/Documents/Documents/Practices%20Checker",
"size": 0,
"createdBy": {
"user": {
"email": "ribera#xxxxxxxxxx.com",
"displayName": "Rinki Bera"
}
},
"lastModifiedBy": {
"user": {
"email": "ribera#xxxxxxxxxx.com",
"displayName": "Rinki Bera"
}
},
...
]
}
Thank you.

How can I setup taxes and make them included in the subscription price paypal sdk

So I live in europe and we are obligated to have taxes already included in the price displayed to the user and I was wondering how I could do this with Paypal sdk.
My billing_plan_attributes:
billing_plan_attributes = {
"name": request.args['name'],
"description": request.args['description'],
"merchant_preferences": {
"auto_bill_amount": "yes",
"cancel_url": "https://ruby-eu.com/profile/settings/paypal/cancel/token",
"initial_fail_amount_action": "continue",
"max_fail_attempts": "1",
"return_url": 'https://ruby-eu.com/profile/settings/paypal/subscribe/execute',
"setup_fee": {
"currency": request.args['currency'],
"value": request.args['setup_fee']
}
},
"payment_definitions": [
{
"amount": {
"currency": request.args['currency'],
"value": request.args['amount']
},
"cycles": request.args['cycles'],
"frequency": request.args['frequency'],
"frequency_interval": request.args['frequency_interval'],
"name": request.args['payment_name'],
"type": request.args['payment_type'],
}
],
"type": request.args['type']
}
I tried adding
"taxes": {
"percentage": "23",
"inclusive": True
}
inside merchant_preferences, payment_defenitions and under type but when I run it they return
Problem while creating a new plan: Incoming JSON request does not map to API request
and I don't know how could I fix this issue.
In case you're wondering if the problem is somewhere else I removed the taxes from the JSON and run and it worked.
First of all know that the depcrecated billing plan object in the Python SDK does NOT correspond to the new plans object in the new Subscriptions API. If you want to use the Subscriptions API (and you probably should), you need to integrate with direct HTTPS API calls, NOT any of the old SDKs. Basically, look at the CURL calls you see here: https://developer.paypal.com/docs/subscriptions/integrate/ ... and implement their equivalents from Python.
The billing plans objects of the Subscriptions API do support the syntax you were trying to add, so my guess is that is where you got it from: https://developer.paypal.com/docs/api/subscriptions/v1/#plans_create

SPFx: Problem with loading schema in manifest JSON

I'm having problem with loading $schema in SPFx within my new web part for SP. Web part is working on benchmark.aspx but my whole manifest is not being processed so I can't set preconfiguredEntries and it's big problem for me.
error is:
Problems loading reference 'https://developer.microsoft.com/json-schemas/spfx/client-side-manifest-base.schema.json': Request vscode/content failed unexpectedly without providing any details.(768)
Any idea on this issue please?
{
"$schema": "https://developer.microsoft.com/json-schemas/spfx/client-side-web-part-manifest.schema.json",
"id": "56dab116-67ba-453f-883d-b7a11690e965",
"alias": "ReadListWebPart",
"supportedHosts": ["SharePointWebPart"],
"componentType": "Webpart",
"version": "1.0",
"manifestVersion": "2",
"requiresCustomScript": false,
"preconfiguredEntries": [{
"groupId": "5c03119e-3074-46fd-976b-c60198311f70",
"group": { "default": "Other" },
"title": { "default": "read-list" },
"description": { "default": "popis web party" },
"officeFabricIconFontName": "Page",
"properties": {
"vedouci_velke_foto": true,
"asistenti_pod_vedoucim": false,
"nazev_web_party": "To jsme my"
}
}]
}
I checked the manifest.json, will be the same as yours, have the following waring:
Then tested to access "https://developer.microsoft.com/json-schemas/spfx/client-side-web-part-manifest.schema.json" in my local, no problem, still can be accessed.
After this, I tested to output the preconfigured properties in React SPFX Web Part like this:
Props.ts
WebPart.ts
.tsx
Still able to output properties:
In conclusion, you can just igore this issue, it's still able to read preconfiguredEntries.

Can not deploy Entries in Entities to DialogFlow

I'm currently working with Custom Entities (Developer Entities) via modifying Entities JSON Docs
I know how to create & link manually my Custom Entities with my Intents.
I had
en-US.json with customized entities (Valid json)
{
"invocation": "Test",
"intents": [
...
],
"dialogflow": {
"intents": [
{
"name": "Default Fallback Intent",
"auto": true,
"webhookUsed": true,
"fallbackIntent": true
},
{
"name": "Default Welcome Intent",
"auto": true,
"webhookUsed": true,
"events": [
{
"name": "WELCOME"
}
]
}
],
"entities": [
{
"id": "f060b6f7-7a17-4355-9fa6-3ce02f0ce33a",
"name": "additionalTopic",
"isOverridable": true,
"entries": [
{
"synonyms": [
"usuk",
"us",
"uk",
"us music",
"uk music",
"play usuk",
"play us",
"play uk",
"play us music",
"play uk music"
],
"value": "usuk"
},
{
"synonyms": [
"vn",
"vietnamese"
],
"value": "vn"
}
],
"isEnum": false,
"automatedExpansion": false
}
]
}
It looks like correct as Entities JSON Docs
I build with jovo command line : jovo build
It generated additionalTopic.json & additionalTopic_usersays_en.json in folder platforms/googleAction/dialogflow/entities, as image
These steps in above looks like OK, right?
Then I deploy to DialogFlow via jovo command line : jovo deploy --project-id PROJECT_ID
It deployed success as usually.
Last steps I going to DialogFlow Console to check Custom Entities I created,
And here it is.
Entities name appeared, but where is synonyms?
What I want is after deployed, it expects as first image in above.
Please take a look and help me find the way,
Really thanks.
p/s : I'm using DialogFlow Console version 2.
It looks like this is the bug in jovo-framework.
In this time, jovo-framework only support for DialogFlow version 1.
jovo releases note : https://github.com/jovotech/jovo-framework-nodejs/releases

Resources