Power Frame
Power frame URL is being triggered on the Agent App when a new call is offered to an agent. Power frame option can be used at the Queues of Contact Center, and Social Messaging.
- Note: If you are using Microsoft PowerApps, then embedding an application is not supported by Microsoft (https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/limits-and-config#embedding-limits-for-canvas-apps). The alternative would be to open Microsoft Teams application directly in your browser via this url: https://teams.microsoft.com
Available by default URL parameters for Power Frame
Contact Center:
{callId}
{phonenumber}
Social Messaging:
{conversationId}
CRM available URL parameters are listed in documentation page about Custom CRM Replicator – section POST JSON (remember about curly brackets).
You can also use the callflow variables on the Power frame. When you have a variable VAR1 then you can use this in the Power frame URL https://www.example.com?query1={VAR1}
Information about developing apps for power frame
The power frame supports cookies for authentication. However, the power frame is hosted inside an iframe and security restrictions do apply. Eg., if you use an external authentication provider (like Azure) they generally won’t allow the login screen to be displayed in an iframe. (You are able to work around this if you set the cookies elsewhere, like adding a tab in the teams client, or logging in separately in the web client). Furthermore, cookie same-site restrictions do apply. When the same-site policy is strict, or lax, the powerapp won’t send any cookies as the top document URL wont be the same site.
If you want to use your own authentication mechanism. The most straight forward way at this time is to use forms authentication, with samesite=none cookies
For example, using Visual Studio, just create a new ASP.NET Core Web App, with Authentication type “Individual accounts”. This will create a web application with forms authentication (set the database connection and run migrations to generate the tables.) (Note: the default project uses RequireConfirmedAccount=true. For accounts to work, set this to false, or update the entry AspNetUsers.EmailConfirmed). To configure the site to work, you have to disable the X-Frame-Options and set cookie SameSite=None, Secure=true. For an ASP.NET Core Web application, add the following code before builder.Build();
builder.Services.AddAntiforgery(options =>
{
options.SuppressXFrameOptionsHeader = true;
options.Cookie.SameSite = SameSiteMode.None;
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
});
builder.Services.ConfigureApplicationCookie(options =>
{
options.Cookie.SameSite = SameSiteMode.None;
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
});You can now add the site to a queue and register and log in.