Chrome not add my custom search_provider on extension - google-chrome-extension

I am creating an extension by adding my own search engine. I am the owner of all the domain already verified in Google Search Console. When I test on Development in Chrome, it doesn't override the search provider and it doesn't return any errors.
"chrome_settings_overrides": {
"homepage": "https://__MSG_domainExt__",
"search_provider": {
"name": "__MSG_searchExt__",
"search_url": "https://__MSG_domainExt__/#gsc.tab=0&gsc.q={searchTerms}&gsc.sort=",
"favicon_url": "https://__MSG_domainExt__/favicon.ico",
"encoding": "UTF-8",
"is_default": true
},
"startup_pages": [ "https://__MSG_domainExt__" ]
},

Related

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.

Creating a Chrome app that just goes to a website/shortcut

There is a site we use that is also a webapp that will work offline as well as online once you open the first time. We currently manually create a desktop shortcut in the chrome browser by bringing up the site, then clicking on the browser menu, go to More Tools, then Create Shortcut. We also check the box for "Open as Window". This then not only puts a shortcut that always opens in Chrome no matter what but also opens it a little cleaner it would appear. When this is done an extension is created on the computer in the Google extensions folder. I'd like to convert this to a Chrome app that can be deployed via group policy but even after going through the developer instructions I can't seem to get it to work.
I've taken the manifest.json that was created when I did it manually and added the missing parameters required of a chrome app, or at least from what I can tell. I've even published the app in the chrome webstore. But it just doesn't seem to work.
The original Manifest.json contains:
{"app": {
"icon_color": "#C02331",
"launch": {
"web_url": "https://www.example.com/RunForm/Login"
},
"linked_icons": [ {
"size": 16,
"url": "https://www.example.com/Content/images/favicon.ico"
}, {
"size": 32,
"url": "https://www.example.com/Content/images/favicon.ico"
}, {
"size": 48,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-76x76.png"
}, {
"size": 64,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-76x76.png"
}, {
"size": 76,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-76x76.png"
}, {
"size": 96,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-120x120.png"
}, {
"size": 120,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-120x120.png"
}, {
"size": 128,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-152x152.png"
}, {
"size": 152,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-152x152.png"
}, {
"size": 256,
"url": "https://www.example.com/Content/images/runform/apple-touch-icon-152x152.png"
} ]
},
"description": "",
"icons": {
"120": "icons/120.png",
"128": "icons/128.png",
"152": "icons/152.png",
"16": "icons/16.png",
"256": "icons/256.png",
"32": "icons/32.png",
"48": "icons/48.png",
"64": "icons/64.png",
"76": "icons/76.png",
"96": "icons/96.png"
},
"key": "sKDvXmTdpPytbue4P6yYy+6MRc+SMw5PutBMuCo/yLs=",
"name": "Run Form Login",
"version": "2019.5.28.54363"}
And then I added:
"manifest_version": 2,
"name": "Run Form Login",
"description": "RunForm Login Page",
"update_url": "https://clients2.google.com/service/update2/crx",
"permissions": [
"unlimitedStorage",
"notifications"
]
I was expecting that this would then be installed via GPO as an extension like the one I did manually. And then having a desktop shortcut to "C:\Program Files (x86)\Google\Chrome\Application\chrome_proxy.exe" --profile-directory=Default --app-id=[xx_TheAppIdOfTheExtension_xx] would just open then site in the window like it does when we make the link manually. However it just opens Chrome. And it doesn't look like the extension is ending up in the extension folder either even though the information for forced installs is correct in chrome://policy

How to pass a generated user ID into search URL for chrome extension?

I have a chrome extension that is changing the default search provider using the following code in the manifest file:
"chrome_settings_overrides": {
"name": "Name",
"keyword": "example",
"search_url": "https://search.com/s?={searchTerms}",
"favicon_url": "https://example.com/favicon.ico",
"encoding": "UTF-8",
"default": true
}
I plan to generate a unique user ID for each extension install. I would like this unique ID to be passed into the default search URL.
Like this:
"search_url": "https://search.com/s?={searchTerms}&user_id={userid}"
Is there anyway to do this or is this not possible?

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

Google Home app with account linking option

I'm developing a google home speaker app using DialogFlow.
My scenarios is if a user signed in then the app shows user's specific information or if a user is not signed, it should show general information.
I filled account linking section (Linking type : OAuth)
(DialogFlow -> Integrations -> Google Assistant -> MANAGE ASSISTANT APP -> Account Linking)
I also unchecked "Sign in required" in the DialogFlow's Google assistant Integration option window.
My intent code is using conv.ask(), not conv.close()
But when I run test on the simulator
It shows it is not linked and you can set account with Google Home app, after that the conversation ends.
What I want to do is even if a user has not done account linking, the user can use the app.
(user sign in should be optional, not mandatory)
Any ideas?
Thanks.
EDITED
I am using "Default Welcome Intent" with "Enable webhook call for this intent" checked.
My Intent looks like this. It worked well before setting account Linking.
app.intent('Default Welcome Intent', conv => {
conv.ask('Welcome');
});
and my screenshot.
Screenshot of Actions on Google simulator
(sorry for none-English text in the screenshot. It tells it needs account linking and terminated the conversation. )
Here is the log message in Actions on Google simulator's debug tab.
{
"request": {
"response": "テスト用アプリ とリンクしていません。Google Home アプリからテスト用アプリ と Google アカウントをリンクできます。",
"expectUserResponse": false,
"conversationToken": "GidzaW11bG...",
...
"debugInfo": {
"sharedDebugInfoList": [
{
"name": "Account Linking Url",
"debugInfo": "https://gala-demo.appspot.com/app?login_hint=..." // removed sensitive information from the string
"subDebugEntryList": []
}
]
},
"visualResponse": {
"visualElementsList": [],
"suggestionsList": [],
"agentLogoUrl": ""
},
"clientError": 0,
"is3pResponse": 1
},
"response": {
"response": "テスト用アプリ とリンクしていません。Google Home アプリからテスト用アプリ と Google アカウントをリンクできます。",
"expectUserResponse": false,
"conversationToken": "GidzaW11bG...",
"visualResponse": {
"visualElementsList": [],
"suggestionsList": [],
"agentLogoUrl": ""
},
"clientError": 0,
"is3pResponse": 1
},
"debug": {
"sharedDebugInfoList": [
{
"name": "Account Linking Url",
"debugInfo": "https://gala-demo.appspot.com/app?login_hint=...", // removed sensitive information from the string
"subDebugEntryList": []
}
]
},
"errors": []
}
I found that when I run a simulator from integration menu in DialogFlow,
The simulator starts with old version which I set Sign-In Required.
And when I run a simulator from the Actions on Google TEST section, it starts with current setting (Sign-In Not Required).
You can check version from the simulator screen

Resources