# Copyright 2019 Google LLC # # 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. # NOTE: This class is auto generated by the elixir code generator program. # Do not edit the class manually. defmodule GoogleApi.Games.V1.Model.Quest do @moduledoc """ This is a JSON template for a Quest resource. ## Attributes * `acceptedTimestampMillis` (*type:* `String.t`, *default:* `nil`) - The timestamp at which the user accepted the quest in milliseconds since the epoch in UTC. Only present if the player has accepted the quest. * `applicationId` (*type:* `String.t`, *default:* `nil`) - The ID of the application this quest is part of. * `bannerUrl` (*type:* `String.t`, *default:* `nil`) - The banner image URL for the quest. * `description` (*type:* `String.t`, *default:* `nil`) - The description of the quest. * `endTimestampMillis` (*type:* `String.t`, *default:* `nil`) - The timestamp at which the quest ceases to be active in milliseconds since the epoch in UTC. * `iconUrl` (*type:* `String.t`, *default:* `nil`) - The icon image URL for the quest. * `id` (*type:* `String.t`, *default:* `nil`) - The ID of the quest. * `isDefaultBannerUrl` (*type:* `boolean()`, *default:* `nil`) - Indicates whether the banner image being returned is a default image, or is game-provided. * `isDefaultIconUrl` (*type:* `boolean()`, *default:* `nil`) - Indicates whether the icon image being returned is a default image, or is game-provided. * `kind` (*type:* `String.t`, *default:* `games#quest`) - Uniquely identifies the type of this resource. Value is always the fixed string games#quest. * `lastUpdatedTimestampMillis` (*type:* `String.t`, *default:* `nil`) - The timestamp at which the quest was last updated by the user in milliseconds since the epoch in UTC. Only present if the player has accepted the quest. * `milestones` (*type:* `list(GoogleApi.Games.V1.Model.QuestMilestone.t)`, *default:* `nil`) - The quest milestones. * `name` (*type:* `String.t`, *default:* `nil`) - The name of the quest. * `notifyTimestampMillis` (*type:* `String.t`, *default:* `nil`) - The timestamp at which the user should be notified that the quest will end soon in milliseconds since the epoch in UTC. * `startTimestampMillis` (*type:* `String.t`, *default:* `nil`) - The timestamp at which the quest becomes active in milliseconds since the epoch in UTC. * `state` (*type:* `String.t`, *default:* `nil`) - The state of the quest. Possible values are: - "UPCOMING": The quest is upcoming. The user can see the quest, but cannot accept it until it is open. - "OPEN": The quest is currently open and may be accepted at this time. - "ACCEPTED": The user is currently participating in this quest. - "COMPLETED": The user has completed the quest. - "FAILED": The quest was attempted but was not completed before the deadline expired. - "EXPIRED": The quest has expired and was not accepted. - "DELETED": The quest should be deleted from the local database. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ :acceptedTimestampMillis => String.t(), :applicationId => String.t(), :bannerUrl => String.t(), :description => String.t(), :endTimestampMillis => String.t(), :iconUrl => String.t(), :id => String.t(), :isDefaultBannerUrl => boolean(), :isDefaultIconUrl => boolean(), :kind => String.t(), :lastUpdatedTimestampMillis => String.t(), :milestones => list(GoogleApi.Games.V1.Model.QuestMilestone.t()), :name => String.t(), :notifyTimestampMillis => String.t(), :startTimestampMillis => String.t(), :state => String.t() } field(:acceptedTimestampMillis) field(:applicationId) field(:bannerUrl) field(:description) field(:endTimestampMillis) field(:iconUrl) field(:id) field(:isDefaultBannerUrl) field(:isDefaultIconUrl) field(:kind) field(:lastUpdatedTimestampMillis) field(:milestones, as: GoogleApi.Games.V1.Model.QuestMilestone, type: :list) field(:name) field(:notifyTimestampMillis) field(:startTimestampMillis) field(:state) end defimpl Poison.Decoder, for: GoogleApi.Games.V1.Model.Quest do def decode(value, options) do GoogleApi.Games.V1.Model.Quest.decode(value, options) end end defimpl Poison.Encoder, for: GoogleApi.Games.V1.Model.Quest do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end end