restic/vendor/github.com/Azure/azure-sdk-for-go/arm/mobileengagement/models.go

921 lines
36 KiB
Go
Raw Normal View History

2017-08-05 18:30:20 +00:00
package mobileengagement
// Copyright (c) Microsoft and contributors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
import (
"github.com/Azure/go-autorest/autorest"
"github.com/Azure/go-autorest/autorest/date"
"github.com/Azure/go-autorest/autorest/to"
"net/http"
)
// AudienceOperators enumerates the values for audience operators.
type AudienceOperators string
const (
// EQ specifies the eq state for audience operators.
EQ AudienceOperators = "EQ"
// GE specifies the ge state for audience operators.
GE AudienceOperators = "GE"
// GT specifies the gt state for audience operators.
GT AudienceOperators = "GT"
// LE specifies the le state for audience operators.
LE AudienceOperators = "LE"
// LT specifies the lt state for audience operators.
LT AudienceOperators = "LT"
)
// CampaignFeedbacks enumerates the values for campaign feedbacks.
type CampaignFeedbacks string
const (
// Actioned specifies the actioned state for campaign feedbacks.
Actioned CampaignFeedbacks = "actioned"
// Exited specifies the exited state for campaign feedbacks.
Exited CampaignFeedbacks = "exited"
// Pushed specifies the pushed state for campaign feedbacks.
Pushed CampaignFeedbacks = "pushed"
// Replied specifies the replied state for campaign feedbacks.
Replied CampaignFeedbacks = "replied"
)
// CampaignKinds enumerates the values for campaign kinds.
type CampaignKinds string
const (
// Announcements specifies the announcements state for campaign kinds.
Announcements CampaignKinds = "announcements"
// DataPushes specifies the data pushes state for campaign kinds.
DataPushes CampaignKinds = "dataPushes"
// NativePushes specifies the native pushes state for campaign kinds.
NativePushes CampaignKinds = "nativePushes"
// Polls specifies the polls state for campaign kinds.
Polls CampaignKinds = "polls"
)
// CampaignStates enumerates the values for campaign states.
type CampaignStates string
const (
// Draft specifies the draft state for campaign states.
Draft CampaignStates = "draft"
// Finished specifies the finished state for campaign states.
Finished CampaignStates = "finished"
// InProgress specifies the in progress state for campaign states.
InProgress CampaignStates = "in-progress"
// Queued specifies the queued state for campaign states.
Queued CampaignStates = "queued"
// Scheduled specifies the scheduled state for campaign states.
Scheduled CampaignStates = "scheduled"
)
// CampaignType enumerates the values for campaign type.
type CampaignType string
const (
// Announcement specifies the announcement state for campaign type.
Announcement CampaignType = "Announcement"
// DataPush specifies the data push state for campaign type.
DataPush CampaignType = "DataPush"
// NativePush specifies the native push state for campaign type.
NativePush CampaignType = "NativePush"
// Poll specifies the poll state for campaign type.
Poll CampaignType = "Poll"
)
// CampaignTypes enumerates the values for campaign types.
type CampaignTypes string
const (
// OnlyNotif specifies the only notif state for campaign types.
OnlyNotif CampaignTypes = "only_notif"
// Textbase64 specifies the textbase 64 state for campaign types.
Textbase64 CampaignTypes = "text/base64"
// Texthtml specifies the texthtml state for campaign types.
Texthtml CampaignTypes = "text/html"
// Textplain specifies the textplain state for campaign types.
Textplain CampaignTypes = "text/plain"
)
// DeliveryTimes enumerates the values for delivery times.
type DeliveryTimes string
const (
// Any specifies the any state for delivery times.
Any DeliveryTimes = "any"
// Background specifies the background state for delivery times.
Background DeliveryTimes = "background"
// Session specifies the session state for delivery times.
Session DeliveryTimes = "session"
)
// ExportFormat enumerates the values for export format.
type ExportFormat string
const (
// CsvBlob specifies the csv blob state for export format.
CsvBlob ExportFormat = "CsvBlob"
// JSONBlob specifies the json blob state for export format.
JSONBlob ExportFormat = "JsonBlob"
)
// ExportState enumerates the values for export state.
type ExportState string
const (
// ExportStateFailed specifies the export state failed state for export
// state.
ExportStateFailed ExportState = "Failed"
// ExportStateQueued specifies the export state queued state for export
// state.
ExportStateQueued ExportState = "Queued"
// ExportStateStarted specifies the export state started state for export
// state.
ExportStateStarted ExportState = "Started"
// ExportStateSucceeded specifies the export state succeeded state for
// export state.
ExportStateSucceeded ExportState = "Succeeded"
)
// ExportType enumerates the values for export type.
type ExportType string
const (
// ExportTypeActivity specifies the export type activity state for export
// type.
ExportTypeActivity ExportType = "Activity"
// ExportTypeCrash specifies the export type crash state for export type.
ExportTypeCrash ExportType = "Crash"
// ExportTypeError specifies the export type error state for export type.
ExportTypeError ExportType = "Error"
// ExportTypeEvent specifies the export type event state for export type.
ExportTypeEvent ExportType = "Event"
// ExportTypeJob specifies the export type job state for export type.
ExportTypeJob ExportType = "Job"
// ExportTypePush specifies the export type push state for export type.
ExportTypePush ExportType = "Push"
// ExportTypeSession specifies the export type session state for export
// type.
ExportTypeSession ExportType = "Session"
// ExportTypeTag specifies the export type tag state for export type.
ExportTypeTag ExportType = "Tag"
// ExportTypeToken specifies the export type token state for export type.
ExportTypeToken ExportType = "Token"
)
// JobStates enumerates the values for job states.
type JobStates string
const (
// JobStatesFailed specifies the job states failed state for job states.
JobStatesFailed JobStates = "Failed"
// JobStatesQueued specifies the job states queued state for job states.
JobStatesQueued JobStates = "Queued"
// JobStatesStarted specifies the job states started state for job states.
JobStatesStarted JobStates = "Started"
// JobStatesSucceeded specifies the job states succeeded state for job
// states.
JobStatesSucceeded JobStates = "Succeeded"
)
// NotificationTypes enumerates the values for notification types.
type NotificationTypes string
const (
// Popup specifies the popup state for notification types.
Popup NotificationTypes = "popup"
// System specifies the system state for notification types.
System NotificationTypes = "system"
)
// ProvisioningStates enumerates the values for provisioning states.
type ProvisioningStates string
const (
// Creating specifies the creating state for provisioning states.
Creating ProvisioningStates = "Creating"
// Succeeded specifies the succeeded state for provisioning states.
Succeeded ProvisioningStates = "Succeeded"
)
// PushModes enumerates the values for push modes.
type PushModes string
const (
// Manual specifies the manual state for push modes.
Manual PushModes = "manual"
// OneShot specifies the one shot state for push modes.
OneShot PushModes = "one-shot"
// RealTime specifies the real time state for push modes.
RealTime PushModes = "real-time"
)
// AnnouncementFeedbackCriterion is used to target devices who received an
// announcement.
type AnnouncementFeedbackCriterion struct {
ContentID *int32 `json:"content-id,omitempty"`
Action CampaignFeedbacks `json:"action,omitempty"`
}
// APIError is
type APIError struct {
Error *APIErrorError `json:"error,omitempty"`
}
// APIErrorError is
type APIErrorError struct {
Code *string `json:"code,omitempty"`
Message *string `json:"message,omitempty"`
}
// App is the Mobile Engagement App resource.
type App struct {
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
*AppProperties `json:"properties,omitempty"`
}
// AppCollection is the AppCollection resource.
type AppCollection struct {
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
*AppCollectionProperties `json:"properties,omitempty"`
}
// AppCollectionListResult is the list AppCollections operation response.
type AppCollectionListResult struct {
autorest.Response `json:"-"`
Value *[]AppCollection `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// AppCollectionListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client AppCollectionListResult) AppCollectionListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// AppCollectionNameAvailability is
type AppCollectionNameAvailability struct {
autorest.Response `json:"-"`
Name *string `json:"name,omitempty"`
Available *bool `json:"available,omitempty"`
UnavailabilityReason *string `json:"unavailabilityReason,omitempty"`
}
// AppCollectionProperties is
type AppCollectionProperties struct {
ProvisioningState ProvisioningStates `json:"provisioningState,omitempty"`
}
// AppInfoFilter is send only to users who have some app info set. This is a
// special filter that is automatically added if your campaign contains appInfo
// parameters. It is not intended to be public and should not be used as it
// could be removed or replaced by the API.
type AppInfoFilter struct {
AppInfo *[]string `json:"appInfo,omitempty"`
}
// ApplicationVersionCriterion is used to target devices based on the version
// of the application they are using.
type ApplicationVersionCriterion struct {
Name *string `json:"name,omitempty"`
}
// AppListResult is the list Apps operation response.
type AppListResult struct {
autorest.Response `json:"-"`
Value *[]App `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// AppListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client AppListResult) AppListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// AppProperties is
type AppProperties struct {
BackendID *string `json:"backendId,omitempty"`
Platform *string `json:"platform,omitempty"`
AppState *string `json:"appState,omitempty"`
}
// BooleanTagCriterion is target devices based on a boolean tag value.
type BooleanTagCriterion struct {
Name *string `json:"name,omitempty"`
Value *bool `json:"value,omitempty"`
}
// Campaign is
type Campaign struct {
NotificationTitle *string `json:"notificationTitle,omitempty"`
NotificationMessage *string `json:"notificationMessage,omitempty"`
NotificationImage *[]byte `json:"notificationImage,omitempty"`
NotificationOptions *NotificationOptions `json:"notificationOptions,omitempty"`
Title *string `json:"title,omitempty"`
Body *string `json:"body,omitempty"`
ActionButtonText *string `json:"actionButtonText,omitempty"`
ExitButtonText *string `json:"exitButtonText,omitempty"`
ActionURL *string `json:"actionUrl,omitempty"`
Payload *map[string]interface{} `json:"payload,omitempty"`
Name *string `json:"name,omitempty"`
Audience *CampaignAudience `json:"audience,omitempty"`
Category *string `json:"category,omitempty"`
PushMode PushModes `json:"pushMode,omitempty"`
Type CampaignTypes `json:"type,omitempty"`
DeliveryTime DeliveryTimes `json:"deliveryTime,omitempty"`
DeliveryActivities *[]string `json:"deliveryActivities,omitempty"`
StartTime *string `json:"startTime,omitempty"`
EndTime *string `json:"endTime,omitempty"`
Timezone *string `json:"timezone,omitempty"`
NotificationType NotificationTypes `json:"notificationType,omitempty"`
NotificationIcon *bool `json:"notificationIcon,omitempty"`
NotificationCloseable *bool `json:"notificationCloseable,omitempty"`
NotificationVibrate *bool `json:"notificationVibrate,omitempty"`
NotificationSound *bool `json:"notificationSound,omitempty"`
NotificationBadge *bool `json:"notificationBadge,omitempty"`
Localization *map[string]*CampaignLocalization `json:"localization,omitempty"`
Questions *[]PollQuestion `json:"questions,omitempty"`
}
// CampaignAudience is specify which users will be targeted by this campaign.
// By default, all users will be targeted. If you set `pushMode` property to
// `manual`, the only thing you can specify in the audience is the push quota
// filter. An audience is a boolean expression made of criteria (variables)
// operators (`not`, `and` or `or`) and parenthesis. Additionally, a set of
// filters can be added to an audience. 65535 bytes max as per JSON encoding.
type CampaignAudience struct {
Expression *string `json:"expression,omitempty"`
Criteria *map[string]*Criterion `json:"criteria,omitempty"`
Filters *[]Filter `json:"filters,omitempty"`
}
// CampaignListResult is
type CampaignListResult struct {
State CampaignStates `json:"state,omitempty"`
ID *int32 `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
ActivatedDate *date.Time `json:"activatedDate,omitempty"`
FinishedDate *date.Time `json:"finishedDate,omitempty"`
StartTime *date.Time `json:"startTime,omitempty"`
EndTime *date.Time `json:"endTime,omitempty"`
Timezone *string `json:"timezone,omitempty"`
}
// CampaignLocalization is
type CampaignLocalization struct {
NotificationTitle *string `json:"notificationTitle,omitempty"`
NotificationMessage *string `json:"notificationMessage,omitempty"`
NotificationImage *[]byte `json:"notificationImage,omitempty"`
NotificationOptions *NotificationOptions `json:"notificationOptions,omitempty"`
Title *string `json:"title,omitempty"`
Body *string `json:"body,omitempty"`
ActionButtonText *string `json:"actionButtonText,omitempty"`
ExitButtonText *string `json:"exitButtonText,omitempty"`
ActionURL *string `json:"actionUrl,omitempty"`
Payload *map[string]interface{} `json:"payload,omitempty"`
}
// CampaignPushParameters is
type CampaignPushParameters struct {
DeviceIds *[]string `json:"deviceIds,omitempty"`
Data *Campaign `json:"data,omitempty"`
}
// CampaignPushResult is
type CampaignPushResult struct {
autorest.Response `json:"-"`
InvalidDeviceIds *[]string `json:"invalidDeviceIds,omitempty"`
}
// CampaignResult is
type CampaignResult struct {
autorest.Response `json:"-"`
NotificationTitle *string `json:"notificationTitle,omitempty"`
NotificationMessage *string `json:"notificationMessage,omitempty"`
NotificationImage *[]byte `json:"notificationImage,omitempty"`
NotificationOptions *NotificationOptions `json:"notificationOptions,omitempty"`
Title *string `json:"title,omitempty"`
Body *string `json:"body,omitempty"`
ActionButtonText *string `json:"actionButtonText,omitempty"`
ExitButtonText *string `json:"exitButtonText,omitempty"`
ActionURL *string `json:"actionUrl,omitempty"`
Payload *map[string]interface{} `json:"payload,omitempty"`
Name *string `json:"name,omitempty"`
Audience *CampaignAudience `json:"audience,omitempty"`
Category *string `json:"category,omitempty"`
PushMode PushModes `json:"pushMode,omitempty"`
Type CampaignTypes `json:"type,omitempty"`
DeliveryTime DeliveryTimes `json:"deliveryTime,omitempty"`
DeliveryActivities *[]string `json:"deliveryActivities,omitempty"`
StartTime *string `json:"startTime,omitempty"`
EndTime *string `json:"endTime,omitempty"`
Timezone *string `json:"timezone,omitempty"`
NotificationType NotificationTypes `json:"notificationType,omitempty"`
NotificationIcon *bool `json:"notificationIcon,omitempty"`
NotificationCloseable *bool `json:"notificationCloseable,omitempty"`
NotificationVibrate *bool `json:"notificationVibrate,omitempty"`
NotificationSound *bool `json:"notificationSound,omitempty"`
NotificationBadge *bool `json:"notificationBadge,omitempty"`
Localization *map[string]*CampaignLocalization `json:"localization,omitempty"`
Questions *[]PollQuestion `json:"questions,omitempty"`
ID *int32 `json:"id,omitempty"`
State CampaignStates `json:"state,omitempty"`
ActivatedDate *date.Time `json:"activatedDate,omitempty"`
FinishedDate *date.Time `json:"finishedDate,omitempty"`
}
// CampaignsListResult is the campaigns list result.
type CampaignsListResult struct {
autorest.Response `json:"-"`
Value *[]CampaignListResult `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// CampaignsListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client CampaignsListResult) CampaignsListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// CampaignState is
type CampaignState struct {
autorest.Response `json:"-"`
State CampaignStates `json:"state,omitempty"`
}
// CampaignStateResult is
type CampaignStateResult struct {
autorest.Response `json:"-"`
State CampaignStates `json:"state,omitempty"`
ID *int32 `json:"id,omitempty"`
}
// CampaignStatisticsResult is
type CampaignStatisticsResult struct {
autorest.Response `json:"-"`
Queued *int32 `json:"queued,omitempty"`
Pushed *int32 `json:"pushed,omitempty"`
PushedNative *int32 `json:"pushed-native,omitempty"`
PushedNativeGoogle *int32 `json:"pushed-native-google,omitempty"`
PushedNativeAdm *int32 `json:"pushed-native-adm,omitempty"`
Delivered *int32 `json:"delivered,omitempty"`
Dropped *int32 `json:"dropped,omitempty"`
SystemNotificationDisplayed *int32 `json:"system-notification-displayed,omitempty"`
InAppNotificationDisplayed *int32 `json:"in-app-notification-displayed,omitempty"`
ContentDisplayed *int32 `json:"content-displayed,omitempty"`
SystemNotificationActioned *int32 `json:"system-notification-actioned,omitempty"`
SystemNotificationExited *int32 `json:"system-notification-exited,omitempty"`
InAppNotificationActioned *int32 `json:"in-app-notification-actioned,omitempty"`
InAppNotificationExited *int32 `json:"in-app-notification-exited,omitempty"`
ContentActioned *int32 `json:"content-actioned,omitempty"`
ContentExited *int32 `json:"content-exited,omitempty"`
Answers *map[string]*map[string]interface{} `json:"answers,omitempty"`
}
// CampaignTestNewParameters is
type CampaignTestNewParameters struct {
DeviceID *string `json:"deviceId,omitempty"`
Lang *string `json:"lang,omitempty"`
Data *Campaign `json:"data,omitempty"`
}
// CampaignTestSavedParameters is
type CampaignTestSavedParameters struct {
DeviceID *string `json:"deviceId,omitempty"`
Lang *string `json:"lang,omitempty"`
}
// CarrierCountryCriterion is used to target devices based on their carrier
// country.
type CarrierCountryCriterion struct {
Name *string `json:"name,omitempty"`
}
// CarrierNameCriterion is used to target devices based on their carrier name.
type CarrierNameCriterion struct {
Name *string `json:"name,omitempty"`
}
// Criterion is
type Criterion struct {
}
// DatapushFeedbackCriterion is used to target devices who received a data
// push.
type DatapushFeedbackCriterion struct {
ContentID *int32 `json:"content-id,omitempty"`
Action CampaignFeedbacks `json:"action,omitempty"`
}
// DateRangeExportTaskParameter is
type DateRangeExportTaskParameter struct {
ContainerURL *string `json:"containerUrl,omitempty"`
Description *string `json:"description,omitempty"`
StartDate *date.Date `json:"startDate,omitempty"`
EndDate *date.Date `json:"endDate,omitempty"`
ExportFormat ExportFormat `json:"exportFormat,omitempty"`
}
// DateTagCriterion is target devices based on a date tag value.
type DateTagCriterion struct {
Name *string `json:"name,omitempty"`
Value *date.Date `json:"value,omitempty"`
Op AudienceOperators `json:"op,omitempty"`
}
// Device is
type Device struct {
autorest.Response `json:"-"`
DeviceID *string `json:"deviceId,omitempty"`
Meta *DeviceMeta `json:"meta,omitempty"`
Info *DeviceInfo `json:"info,omitempty"`
Location *DeviceLocation `json:"location,omitempty"`
AppInfo *map[string]*string `json:"appInfo,omitempty"`
}
// DeviceInfo is
type DeviceInfo struct {
PhoneModel *string `json:"phoneModel,omitempty"`
PhoneManufacturer *string `json:"phoneManufacturer,omitempty"`
FirmwareVersion *string `json:"firmwareVersion,omitempty"`
FirmwareName *string `json:"firmwareName,omitempty"`
AndroidAPILevel *int32 `json:"androidAPILevel,omitempty"`
CarrierCountry *string `json:"carrierCountry,omitempty"`
Locale *string `json:"locale,omitempty"`
CarrierName *string `json:"carrierName,omitempty"`
NetworkType *string `json:"networkType,omitempty"`
NetworkSubtype *string `json:"networkSubtype,omitempty"`
ApplicationVersionName *string `json:"applicationVersionName,omitempty"`
ApplicationVersionCode *int32 `json:"applicationVersionCode,omitempty"`
TimeZoneOffset *int32 `json:"timeZoneOffset,omitempty"`
ServiceVersion *string `json:"serviceVersion,omitempty"`
}
// DeviceLocation is
type DeviceLocation struct {
Countrycode *string `json:"countrycode,omitempty"`
Region *string `json:"region,omitempty"`
Locality *string `json:"locality,omitempty"`
}
// DeviceManufacturerCriterion is used to target devices based on the device
// manufacturer.
type DeviceManufacturerCriterion struct {
Name *string `json:"name,omitempty"`
}
// DeviceMeta is
type DeviceMeta struct {
FirstSeen *int64 `json:"firstSeen,omitempty"`
LastSeen *int64 `json:"lastSeen,omitempty"`
LastInfo *int64 `json:"lastInfo,omitempty"`
LastLocation *int64 `json:"lastLocation,omitempty"`
NativePushEnabled *bool `json:"nativePushEnabled,omitempty"`
}
// DeviceModelCriterion is used to target devices based on the device model.
type DeviceModelCriterion struct {
Name *string `json:"name,omitempty"`
}
// DeviceQueryResult is
type DeviceQueryResult struct {
DeviceID *string `json:"deviceId,omitempty"`
Meta *DeviceMeta `json:"meta,omitempty"`
AppInfo *map[string]*string `json:"appInfo,omitempty"`
}
// DevicesQueryResult is the campaigns list result.
type DevicesQueryResult struct {
autorest.Response `json:"-"`
Value *[]DeviceQueryResult `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// DevicesQueryResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client DevicesQueryResult) DevicesQueryResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// DeviceTagsParameters is
type DeviceTagsParameters struct {
Tags *map[string]map[string]*string `json:"tags,omitempty"`
DeleteOnNull *bool `json:"deleteOnNull,omitempty"`
}
// DeviceTagsResult is
type DeviceTagsResult struct {
autorest.Response `json:"-"`
InvalidIds *[]string `json:"invalidIds,omitempty"`
}
// EngageActiveUsersFilter is send only to users who have used the app in the
// last {threshold} days.
type EngageActiveUsersFilter struct {
Threshold *int32 `json:"threshold,omitempty"`
}
// EngageIdleUsersFilter is send only to users who haven't used the app in the
// last {threshold} days.
type EngageIdleUsersFilter struct {
Threshold *int32 `json:"threshold,omitempty"`
}
// EngageNewUsersFilter is send only to users whose first app use is less than
// {threshold} days old.
type EngageNewUsersFilter struct {
Threshold *int32 `json:"threshold,omitempty"`
}
// EngageOldUsersFilter is send only to users whose first app use is more than
// {threshold} days old.
type EngageOldUsersFilter struct {
Threshold *int32 `json:"threshold,omitempty"`
}
// EngageSubsetFilter is send only to a maximum of max users.
type EngageSubsetFilter struct {
Max *int32 `json:"max,omitempty"`
}
// ExportOptions is options to control export generation.
type ExportOptions struct {
ExportUserID *bool `json:"exportUserId,omitempty"`
}
// ExportTaskListResult is gets a paged list of ExportTasks.
type ExportTaskListResult struct {
autorest.Response `json:"-"`
Value *[]ExportTaskResult `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// ExportTaskListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client ExportTaskListResult) ExportTaskListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// ExportTaskParameter is
type ExportTaskParameter struct {
ContainerURL *string `json:"containerUrl,omitempty"`
Description *string `json:"description,omitempty"`
ExportFormat ExportFormat `json:"exportFormat,omitempty"`
}
// ExportTaskResult is
type ExportTaskResult struct {
autorest.Response `json:"-"`
ID *string `json:"id,omitempty"`
Description *string `json:"description,omitempty"`
State ExportState `json:"state,omitempty"`
DateCreated *date.Time `json:"dateCreated,omitempty"`
DateCompleted *date.Time `json:"dateCompleted,omitempty"`
ExportType ExportType `json:"exportType,omitempty"`
ErrorDetails *string `json:"errorDetails,omitempty"`
}
// FeedbackByCampaignParameter is
type FeedbackByCampaignParameter struct {
ContainerURL *string `json:"containerUrl,omitempty"`
Description *string `json:"description,omitempty"`
CampaignType CampaignType `json:"campaignType,omitempty"`
CampaignIds *[]int32 `json:"campaignIds,omitempty"`
ExportFormat ExportFormat `json:"exportFormat,omitempty"`
}
// FeedbackByDateRangeParameter is
type FeedbackByDateRangeParameter struct {
ContainerURL *string `json:"containerUrl,omitempty"`
Description *string `json:"description,omitempty"`
CampaignType CampaignType `json:"campaignType,omitempty"`
CampaignWindowStart *date.Time `json:"campaignWindowStart,omitempty"`
CampaignWindowEnd *date.Time `json:"campaignWindowEnd,omitempty"`
ExportFormat ExportFormat `json:"exportFormat,omitempty"`
}
// Filter is
type Filter struct {
}
// FirmwareVersionCriterion is used to target devices based on their firmware
// version.
type FirmwareVersionCriterion struct {
Name *string `json:"name,omitempty"`
}
// GeoFencingCriterion is used to target devices based on a specific region. A
// center point (defined by a latitude and longitude) and a radius form the
// boundary for the region. This criterion will be met when the user crosses
// the boundaries of the region.
type GeoFencingCriterion struct {
Lat *float64 `json:"lat,omitempty"`
Lon *float64 `json:"lon,omitempty"`
Radius *int32 `json:"radius,omitempty"`
Expiration *int32 `json:"expiration,omitempty"`
}
// ImportTask is
type ImportTask struct {
StorageURL *string `json:"storageUrl,omitempty"`
}
// ImportTaskListResult is gets a paged list of import tasks.
type ImportTaskListResult struct {
autorest.Response `json:"-"`
Value *[]ImportTaskResult `json:"value,omitempty"`
NextLink *string `json:"nextLink,omitempty"`
}
// ImportTaskListResultPreparer prepares a request to retrieve the next set of results. It returns
// nil if no more results exist.
func (client ImportTaskListResult) ImportTaskListResultPreparer() (*http.Request, error) {
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
return nil, nil
}
return autorest.Prepare(&http.Request{},
autorest.AsJSON(),
autorest.AsGet(),
autorest.WithBaseURL(to.String(client.NextLink)))
}
// ImportTaskResult is
type ImportTaskResult struct {
autorest.Response `json:"-"`
StorageURL *string `json:"storageUrl,omitempty"`
ID *string `json:"id,omitempty"`
State JobStates `json:"state,omitempty"`
DateCreated *date.Time `json:"dateCreated,omitempty"`
DateCompleted *date.Time `json:"dateCompleted,omitempty"`
ErrorDetails *string `json:"errorDetails,omitempty"`
}
// IntegerTagCriterion is target devices based on an integer tag value.
type IntegerTagCriterion struct {
Name *string `json:"name,omitempty"`
Value *int32 `json:"value,omitempty"`
Op AudienceOperators `json:"op,omitempty"`
}
// LanguageCriterion is used to target devices based on the language of their
// device.
type LanguageCriterion struct {
Name *string `json:"name,omitempty"`
}
// LocationCriterion is used to target devices based on their last know area.
type LocationCriterion struct {
Country *string `json:"country,omitempty"`
Region *string `json:"region,omitempty"`
Locality *string `json:"locality,omitempty"`
}
// NativePushEnabledFilter is engage only users with native push enabled.
type NativePushEnabledFilter struct {
}
// NetworkTypeCriterion is used to target devices based their network type.
type NetworkTypeCriterion struct {
Name *string `json:"name,omitempty"`
}
// NotificationOptions is
type NotificationOptions struct {
BigText *string `json:"bigText,omitempty"`
BigPicture *string `json:"bigPicture,omitempty"`
Sound *string `json:"sound,omitempty"`
ActionText *string `json:"actionText,omitempty"`
}
// PollAnswerFeedbackCriterion is used to target devices who answered X to a
// given question.
type PollAnswerFeedbackCriterion struct {
ContentID *int32 `json:"content-id,omitempty"`
ChoiceID *int32 `json:"choice-id,omitempty"`
}
// PollFeedbackCriterion is used to target devices who received a poll.
type PollFeedbackCriterion struct {
ContentID *int32 `json:"content-id,omitempty"`
Action CampaignFeedbacks `json:"action,omitempty"`
}
// PollQuestion is
type PollQuestion struct {
Title *string `json:"title,omitempty"`
ID *int32 `json:"id,omitempty"`
Localization *map[string]*PollQuestionLocalization `json:"localization,omitempty"`
Choices *[]PollQuestionChoice `json:"choices,omitempty"`
}
// PollQuestionChoice is
type PollQuestionChoice struct {
Title *string `json:"title,omitempty"`
ID *int32 `json:"id,omitempty"`
Localization *map[string]*PollQuestionChoiceLocalization `json:"localization,omitempty"`
IsDefault *bool `json:"isDefault,omitempty"`
}
// PollQuestionChoiceLocalization is
type PollQuestionChoiceLocalization struct {
Title *string `json:"title,omitempty"`
}
// PollQuestionLocalization is
type PollQuestionLocalization struct {
Title *string `json:"title,omitempty"`
}
// PushQuotaFilter is engage only users for whom the push quota is not reached.
type PushQuotaFilter struct {
}
// Resource is
type Resource struct {
ID *string `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Type *string `json:"type,omitempty"`
Location *string `json:"location,omitempty"`
Tags *map[string]*string `json:"tags,omitempty"`
}
// ScreenSizeCriterion is used to target devices based on the screen resolution
// of their device.
type ScreenSizeCriterion struct {
Name *string `json:"name,omitempty"`
}
// SegmentCriterion is target devices based on an existing segment.
type SegmentCriterion struct {
ID *int32 `json:"id,omitempty"`
Exclude *bool `json:"exclude,omitempty"`
}
// StringTagCriterion is target devices based on a string tag value.
type StringTagCriterion struct {
Name *string `json:"name,omitempty"`
Value *string `json:"value,omitempty"`
}
// SupportedPlatformsListResult is
type SupportedPlatformsListResult struct {
autorest.Response `json:"-"`
Platforms *[]string `json:"platforms,omitempty"`
}