How to deliver dynamic localized content in Dynamics 365 Customer Portal? - dynamics-crm

I am working with a Dynamics 365 Customer Self-service Portal add-on (v9.x) for a CRM Online instance and I've run into a problem trying to deliver dynamic localized content. The default language for the portal is US english which is fine for this implementation, however I also wanted to support UK english and that doesn't seem to be possible. I'm looking for an alternate way deliver dynamic content within specific portal pages. I want to have pages display content such as different support contact information (phone number and email address), or different currency and date formatting based on the customer's country or region selection or browser language. I'm thinking of storing that in a cookie, and then somehow use that to display the correct content. This has been a real struggle since the portal code is not accessible and I'm not seeing how to apply something like that. Has anyone come up with a solution to do something like this?

That's a bit of broad question, so a bit of broad answer.
Portal's have multi-language support which you may be able to use to achieve some of this functionaility - though it only appears to have single version of English.
Enable multiple-language portal support
A single portal can display content in multiple languages to reach
customers around the world. The content of your portal can be
translated into multiple languages while maintaining a single content
hierarchy.
You can use Liquid to create conditional content, e.g. showing different phone numbers based on user's address.
Available Liquid conditional operators
{% assign empty_string = %}
{% if empty_string %}
<p>This will render.</p>
{% endif %}
You could use Liquid to display data in a bespoke manner with user specific versions.
Dynamics 365 for Customer Engagement entity tags.
Dynamics 365 for Customer Engagement entity tags are used to load and
display Dynamics 365 for Customer Engagement data, or use other
Dynamics 365 for Customer Engagement portals framework services. These
tags are Dynamics 365 for Customer Engagement-specific extensions to
the Liquid language.
You could use client side JavaScript to transform page content in a variety of ways. For example using Moment.js to transform dates.
Dates can already be localised.
Behavior and format of the date and time field
User Local: The field values are displayed in the user’s local time and formatted as per their current portal language/locale.
Date Only: The field values only contain the date and are displayed with no time zone conversion.
Time-Zone Independent: The field values contain date and time, and are displayed with no time zone conversion.

Related

How to generate and handle internal IDs in Microsoft Forms 365

I am trying to implement an evaluation survey for meetings, using Microsoft Forms over Office 365.
After I create and generate the link, I can get the info in an Excel file, but am missing a field with which I can link the survey's answers to the meeting.
Desired output in as seen in this image (all fields are already generated by Forms, except by that whose content is highlighted in yellow, which is the one I need to find out how to generate):
For the time being, I have 2 issues to solve:
How can I generate an ID for a meeting from Microsoft Outlook (where the meeting invitation was sent).
How can I pass that ID to Microsoft Forms.
Ideas about this or an alternative approach are welcome, thanks!!!
I think I have found a better approach:
To scrape all appointments in a period of time via API
To load appointment's data in MongoDB
To send personalized links to Outlook Forms questionnaires.
Here is the API documentation:
https://learn.microsoft.com/en-us/previous-versions/office/office-365-api/api/version-2.0/calendar-rest-operations

Export email messages with attachments from Dynamics 365 CRM

The constraints for this requirement are as follows:
For legislative and/or governance purposes, the organization I am doing this for needs a way to extract email messages (with attachments) from a cloud instance of Dynamics, given a start date and end date;
What's important is that the content be made available, not necessarily in a conventient format ("convenient" here I am suggesting is something like a neat MIME-encoded/RFC-822 formatted file, or even proprietary MS .msg format). So, for instance, simply dumping the email body as a file, and the associated attachments as other files, grouped together in a folder somewhere is good enough;
The solution needs to be as simple as possible, and should have no technical support needs;
Here's the kicker: as much as this solution will necessitate a custom implementation (that is, code), we cannot employ anything outside the constraints of what we currently have in our Azure tenancy, that being: Dynamics 365 with the option of uploading custom plugins and/or custom workflow tasks or currently paid-for PaaS facilities, notably Flow. This eliminates the option of having a console-based application, or even a web app.
I am aware of the fact that one can use Dynamics Advanced Find to export email data (even the body of the email sans attachments) into an Excel file. We do need the email attachments, however.
What is a good way of implementing the above solution?

Is it possible to hide the Developer Email in the Chrome Webstore?

I am wondering whether it is possible to hide the email of the developer on the Chrome Webstore extension page.
I had the same issue and this was what I got from Chrome Web Store support.
In regards to the contact email address, it is a mandatory information to provide when you publish the chrome items and this requirement has been implemented on June 9th, 2020.
3.4 You Support Your Product. You agree to supply and maintain valid and accurate contact information that will be displayed in each product detail page on the Store and made available to users for customer support and legal purposes. For paid Products or in-app transactions, you must respond to customer support inquiries within three (3) business days, and within 24 hours to any support or Product concerns stated to be urgent by Google.
Failure to provide adequate support for your Products may result in low Product ratings, less prominent product exposure, or in some cases removal from the Web Store, such as if the extension no longer functions as described.
Having this said, there's no option to hide the contact email address from your listing page at the time but the Contact Email address doesn't have to be your personal email and you can change it anytime from the Developer Dashboard.
You can edit it at the [Account] --> [Profile] --> [Contact email address] in the Developer Dashboard (*Please see the attached screenshot image).
So I changed the contact email from my personal email to my work one and now my personal email is no longer exposed.

International eCommerce with Shopify

We are a USA based company with international presence and we are looking at setting up a store to sell digital goods worldwide through credit card purchases (i.e. no shipping involved). So far I've set up two accounts, one using a US postal address and one using a UK postal address,
The US postal address seems to give me an account that uses Shopify
Payments for the payment gateway and only seems to be USD based.
The UK postal address gives me the option to use a payment gateway
provided by someone called Sofort and all prices are in UK pounds.
At this rate of progress I'm going to need a mailing address and an email address and a unique site for every country in the world if we want to support local currencies. I guess I've missed the point somewhere soon the line, hence this request for guidance. Thanks!
What is the best strategy for us to use Shopify to sell to many countries worldwide in multiple currencies.
Shopify doesn't offer multi-currency on the checkout process. You can display the prices in many currencies in your storefront (product.liquid, collections.liquid, cart.liquid....) but when user reaches checkout (https://checkout.shopify.com/carts/xxxx/ the displayed currency will be the Store default currency. You might want to give a try to Shopify Plus.
Opening multiple Shopify stores would solve this, but this is quite hard to maintain, unless you have the "master" store which serves as product database / CMS, and you send the checkouts to each particular store depending on the currency the buyer has choosen. So in this scenario, you'd have multiple Shopify stores serving only as "checkout processors".
Last but not least, Shopify is working on a Brand New Responsive Checkout and Theme Internationalization which will definitely be a step beyond on Internationalization. We can set you up a free Shopify demo store which has this 2 new features enabled for you to evaluate whether it's worth waiting or not.
UPDATE
We've released this Shopify customization which allows you to accept as many currencies as you want in the Checkout: https://exclusive-checkout-demo.myshopify.com
I found a chat window to a Shopify guru who sent me these two links:
http://docs.shopify.com/manual/configuration/store-customization/currencies-and-translations/currencies/how-to-toggle-between-two-currencies
http://docs.shopify.com/manual/configuration/store-customization/currencies-and-translations/currencies/how-to-show-multiple-currencies

Use Google Places API to autocomplete input in subscribe form

For a commercial website, I would like users to fill out a field with their shop name, and if the shop is found by google, fill out the subscription form (for example: phone number, address, logo, etc).
My question: is it possible to use this Api with that? I find that the terms of use are not clear.
PS : Sorry about my english :/
In short a few of the important terms of use are:
http://code.google.com/apis/maps/terms.html#section_9_1
You must not charge access to use your implementation of the Places Autocomplete API and it must be freely accessible to the public. Unless its part of a Mobile Application or you have a Google Enterprise agreement or obtained Google's written permission.
http://code.google.com/apis/maps/documentation/places/autocomplete.html#requirements
You must show a "Powered by Google" logo with any data accessed using the Places Autocomplete API if you do no show this data with a Google Map
If the Places Autocomplete API responses contains Listing provider information it must be displayed to the user.
If your implementation adheres to the terms of use, than it is possible for you to use the Places Autocomplete API for the purpose described.

Resources