Why my plugin is not triggered when workflow updates an entity? - dynamics-crm-2011

I have a plugin that is triggered every time when an account entity is updated. I also have a workflow that updates the account when an opportunity is closed as won.
Plugin works well when I'm in the account form and hit the save button. Workflow works well too except that when it's updating the account my plugin is not triggered even when it should be(?).
Any ideas?

I faced a similar kind of situation as yours, where I had a depth checking enabled in the plugin code. Workflows updating the entity has a depth of 3, which will get bypassed if you have that checking of 1 inside the plugin code.
Not sure if you have a similar issue here, since you're saying it's managed code and you dont have access to it. Is it some kind of package that you bought/downloaded; or will it be possible to get your hands on the code?

You should also check if the plug-in is triggered for specific attributes. If so ensure the your wf also updates these attributes so the plug-in is triggered.
Also, the code might be targeting caller origin and denying access from async service. you need to pick under the hood to gain better insight.

Related

How to enable KnowledgeBase in dialogFlow after creating it automatically

I have done below via APIs.
Creating the knowledge base
Adding a document to knowledge Base.
Problem I am facing is once job is done via APIs,
Problem 1:
Its not enabling the knowledge base, I have to goto dialogFlow dashboard and enable it manually
Problem 2:
Also I have to add response $knowledge.answer[1] manually too.
Question:
Can we do this both programatically. so that there is no need to goto dialogFlow dashboard screen and do this manually. :(
What I think above APIs are useless without these both options.
Note: I can paste the code if some one needs. Thank you in Advance
'KnowledgeBases' can only be Enable/Disable through UI, it's an one time configure. If that's not applicable, you can set the knowledge bases for each requests as in 2.
'KnowledgeBases' in 'DetectIntent' requests can be set through the knowledge_base_names[] query parameter.
Note that:
'KnowledgeBases' are just repositories of documents that you can use in 'DetectIntent', agent assist, etc. They don't have enabled/disabled state.
What's referenced to as "Enabled/Disabled" in the UI is an agent setting that means 'DetectIntent' uses the 'KnowledgeBases' by default if no knowledge bases are set in the 'DetectIntent request'.
Regarding your comment "What I think above APIs are useless without these both options." I think it's a valid feature request that I highly recommend for you to submit it through Issue Tracker.

How to enable other people's Android phone to use the test version of your unreleased Google Action?

I am developing a Google Action for Google Assistant and it is not yet a state where I can release. Even so I want it to be available for some tester, and in a near future, my client.
The simulator with the "test" is somewhat limited at auth request, name recognition (since it will only knows my action) and experience (to show my client), so I prefer not to depend on it for this case.
I found it is only possible to interact with a test version of an action if the project owner's account is logged in as a Google account in the phone where you want to call the action. Is it correct? Or there is another way?
I even tried adding my wife's Google account as a viewer to the project, but I am unable to call my action from her phone.
You can add people as a viewer to the project. Before those users can call your action on any of their devices, they will need to use the test console at https://console.actions.google.com/ once, this will enable testing on their device. After that they will be able to interact with your action on their devices.
Do note, the time in which the action is available on their account is limited by a time period (about a couple of months). If they cant access the action any more after a couple of months, just repeat the above step to reactivate testing for their account.
Update
One thing that you could consider in the two approached posted by #Prisoner and me is if your testers need to test on just a device or need access to the console as well. Using the approach from #Prisoner will allow your users to test on devices. The above approach will also allow testers to use the console at https://console.actions.google.com/.
In addition to #Jordi's answer, you can also do an Alpha Release of your Action. This lets you permit up to 20 additional accounts to the released version
Once you permit them using the console, you will send them the opt-in URL, which they should visit on a mobile device with that account. Once they have opted into the Alpha, they can activate it using the regular trigger phrase.

Do duplicate registrations have bad consequences?

Registering the same device with the same tags and template results in multiple identical registrations in the hub.
Will this cause a problem and will Azure eventually remove them?
It doesn't seem to result in duplicate messages sent to a device.
I figure I can limit duplicate registrations by checking to see if they exist first using GetRegistrationsByTagAsync.
Even that method only takes one tag, so it's then typically necessary to iterate over all the tags for each registration to complete a match. Plus, the device token needs to be added as a tag because the registration base class doesn't have a "token" property. (EDIT: Actually, that doesn't work because it says the token is an invalid tag. So I'm going for one installation per platform - perhaps I could switch on the installation's class type to get the token value.)
Honestly, this API seems somewhat half baked. Even the newer installation based part of the API doesn't even let you download all the installations so you have to have some way of keeping track of them if you want to update them. If you have to keep a copy of this data then you may as well skip Azure altogether.
You can get the installations from the Azure tab in Visual Studio but once deleted, it doesn't seem possible to reinstall a device.
What a mess.

How to automatically set gmail filter via chrome extension?

I would like to implement the following use case as a Chrome extension:
user visits gmail
exension checks current email body for a keyword
if a keyword is present, a gmail filter is added and saved (adding label, archiving, the details are not important here)
The first part sounds easier: there is gmail API to work with and even a gmail.js project that should make it easier.
Adding filter seems to be much harder. There is email settings API doing precisely what I want but I am fairly sure it is usable only by business accounts (custom email domains, won't work for gmail.com). I want the solution to be more universal.
One thing I thought of was to use browser automation - upon seeing the trigger keyword, the script automatically clicks 'Add filter' link, waits for AJAX, sets filter parameters and confirms.
An example of simulated user activity is in this answer
This could happen either on gmail page behind the popup ('Please wait, adjusting filters') or in background tab to keep it from interfering with user's flow. This seems like ugly workaround for me, though.
Is there a more straightforward or simply better approach that I'm missing?
After more experimentation and reviving an older github project I found out that setting the filter for a logged in user can be achieved simply by issuing a specific POST message to gmail from the current session.
I don't fully understand the parameters used in this request (if anyone has better information, please share), but I found a sample code which was greatly helpful.
Second issue, widely discussed in gmail.js community, is that Gmail security policies will prevent you from injecting your own scripts. This is bypassed by method shown in this boilerplate project
I compiled these solutions to solve my particular use case. Here is an example project with my solution, which should work out of the box - and when in doubt, see readme.

Email Notifications Chrome Webstore Support

Is it possible to receive email notification for new comments on the Support page of a Chrome extension in the webstore?
On the support page of a Chrome extension I can add a new question, suggestion or bug report but I don't receive any notification about responses.
I had the same problem. I have several apps in the Chrome Web Store and I found it tedious to be constantly checking. I found an extension that claimed to have this functionality, though I found it periodically lost my list of extensions and wasn't able to actually fetch reviews consistently. You can try the extension here: https://chrome.google.com/webstore/detail/my-extensions/igejgfmbjjjjplnnlgnbejpkpdajkblm?hl=en. It is also open source, so it could be improved.
I ended up writing some of my own scripts to periodically check and send me an email when there is a new review or support request. I made it available to use as a hosted service (currently free, though I plan on asking for a little money to defray the hosting costs as well as some coffee money). Check out the hosted service at https://www.chromebeat.com. It has a full list of the Chrome webstore apps and extensions and can send you notifications on a new support issue or review. Right now it only checks hourly and sends on the hour.
Also, when you respond to a support request, the user who reported it doesn't get any kind of notification. The best way around that I've found is to actually message that person's Google+ profile, either by adding them to a circle (e.g. App users) posting publicly and mentioning them in the post, or for some users it's possible to message directly with hangouts.
[update: Oct 2015. It's now possible to "Reply" to reviews in the web store, so that's probably the best way to respond to user reviews directly]
As far as I know, there is no such option. You will have to periodically check it.
Which makes using the built-in Feedback quite useless - you're better off using something like a public bug tracker as your "Support" link and disabling Feedback.
Existing feature request: https://code.google.com/p/chromium/issues/detail?id=295837
As of 2015-03-23, it is untriaged.
No, that has not been implemented, even approaching a decade later.
New Solution:
The two options in the current answer are no longer working, so I made a small utility app to solve this problem.
You can submit your extension's id and your email address and Webstore Watch will notify you within 1 minute of a new support request.
https://gmanicus.github.io/WebstoreWatch/
Let me know if this goes down or if you experience problems. I can't guarantee 100% reliability, but I will do my best to maintain it.

Resources