Collect feedback from your users
Your application can let its users tell you what they want, what is not working, or anything else. Each message arrives in your Feedback inbox in the portal, where you accept it, decline it or mark it a duplicate.
The Oclavex portal does exactly this. Its feedback button sends to Oclavex’s own inbox with the call on this page, on the portal’s own license.
Send feedback
Section titled “Send feedback”ConsumerFeedbackApi().SubmitFeedbackAsync sends one message on the user’s license session and
returns the stored item. It is an ordinary awaited call, not a buffered report, so your
application can tell the user it arrived.
var license = (await session.AccessLicenseAsync()).Value!;
var sent = await client.ConsumerFeedbackApi().SubmitFeedbackAsync(new SubmitFeedbackDto{ SessionId = license.LicenseValidation.CurrentSession, Kind = FeedbackKindDto.ProblemReport, Title = "Export times out", Body = "Exporting the yearly report never finishes.", ApplicationVersion = appVersion, Location = currentPage, ContactEmail = signedInEmail,});
Console.WriteLine($"Feedback {sent.Id} received.");client is an IOclavexHttpClient that presents the license session token, as set up in
Authentication.
| Field | What it carries |
|---|---|
Kind |
FeatureRequest, ProblemReport or GeneralComment |
Title, Body |
A one-line summary (up to 100 characters) and the detail (up to 5,120) |
ApplicationVersion |
Optional. The version of your application the user is running |
Location |
Optional. The page, screen or route the user was on. Leave out the query string |
IsSecurityIssue |
Optional. The user says this is a security issue |
ContactEmail |
Optional. Where a reply should go when the session itself carries no email address |
FeatureCatalogId |
Optional. The feature the message is about |
The entitlement, product and device come from the session, so a message cannot be filed against
a license that is not the caller’s. The reply address is the email address in the session’s token
when there is one. When there is none, as for a session activated for a machine rather than a
signed-in user, it is ContactEmail.
Each session can send 20 messages in any 24 hours. Sending the same text twice for the same reply address returns the first item instead of storing a copy, so a retry after a lost response is safe.
Security issues
Section titled “Security issues”A message with IsSecurityIssue set carries a red Security label in your inbox. You can add
or remove the label there; each change is recorded in the audit log.
The Feedback.Submitted and Feedback.Reviewed webhooks of a labelled message carry
"securityIssue": true and leave out its title, body, review note and requester email, so
the text stays out of whatever system receives your webhooks. See
Webhooks.
Reading and answering
Section titled “Reading and answering”The Feedback page under Insights lists what arrived, newest first, with the page and version each message was sent from. Accept, decline or mark each one a duplicate. Your note is the reason the user sees.
To have the sender emailed when you decide, switch on Email the sender when you review their
feedback at the top of the page. It is off until you switch it on. The Feedback.Reviewed
webhook is sent either way. See Emails.