ExStreamClient.Operations.Chat.Polls (ExStreamClient v0.1.3)
View SourceModules for interacting with the chat/polls
group of Stream APIs
API Reference: https://getstream.github.io/protocol/?urls.primaryName=Chat%20v2
Summary
Functions
Creates a new poll
Creates a poll option
Deletes a poll
Deletes a poll option
Retrieves a poll
Retrieves a poll option
Queries votes
Queries polls
Updates a poll
Updates a poll option
Updates a poll partially
Functions
@spec create_poll(ExStreamClient.Model.CreatePollRequest.t(), [{:client, module()}]) :: {:ok, ExStreamClient.Model.PollResponse.t()} | {:error, any()}
Creates a new poll
Required Arguments:
Optional Arguments:
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec create_poll_option( String.t(), ExStreamClient.Model.CreatePollOptionRequest.t(), [ {:client, module()} ] ) :: {:ok, ExStreamClient.Model.PollOptionResponse.t()} | {:error, any()}
Creates a poll option
Sends events:
poll.updated
Required Arguments:
poll_id
payload
:Elixir.ExStreamClient.Model.CreatePollOptionRequest
Optional Arguments:
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec delete_poll(String.t(), client: module(), user_id: String.t()) :: {:ok, ExStreamClient.Model.Response.t()} | {:error, any()}
Deletes a poll
Sends events:
poll.deleted
Required Arguments:
poll_id
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec delete_poll_option(String.t(), String.t(), client: module(), user_id: String.t() ) :: {:ok, ExStreamClient.Model.Response.t()} | {:error, any()}
Deletes a poll option
Sends events:
poll.updated
Required Arguments:
poll_id
option_id
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec get_poll(String.t(), client: module(), user_id: String.t()) :: {:ok, ExStreamClient.Model.PollResponse.t()} | {:error, any()}
Retrieves a poll
Required Arguments:
poll_id
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec get_poll_option(String.t(), String.t(), client: module(), user_id: String.t()) :: {:ok, ExStreamClient.Model.PollOptionResponse.t()} | {:error, any()}
Retrieves a poll option
Required Arguments:
poll_id
option_id
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec query_poll_votes(String.t(), ExStreamClient.Model.QueryPollVotesRequest.t(), client: module(), user_id: String.t() ) :: {:ok, ExStreamClient.Model.PollVotesResponse.t()} | {:error, any()}
Queries votes
Required Arguments:
poll_id
payload
:Elixir.ExStreamClient.Model.QueryPollVotesRequest
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec query_polls(ExStreamClient.Model.QueryPollsRequest.t(), client: module(), user_id: String.t() ) :: {:ok, ExStreamClient.Model.QueryPollsResponse.t()} | {:error, any()}
Queries polls
Required Arguments:
Optional Arguments:
user_id
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec update_poll(ExStreamClient.Model.UpdatePollRequest.t(), [{:client, module()}]) :: {:ok, ExStreamClient.Model.PollResponse.t()} | {:error, any()}
Updates a poll
Sends events:
poll.closed
poll.updated
Required Arguments:
Optional Arguments:
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec update_poll_option( String.t(), ExStreamClient.Model.UpdatePollOptionRequest.t(), [ {:client, module()} ] ) :: {:ok, ExStreamClient.Model.PollOptionResponse.t()} | {:error, any()}
Updates a poll option
Sends events:
poll.updated
Required Arguments:
poll_id
payload
:Elixir.ExStreamClient.Model.UpdatePollOptionRequest
Optional Arguments:
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)
@spec update_poll_partial( String.t(), ExStreamClient.Model.UpdatePollPartialRequest.t(), [ {:client, module()} ] ) :: {:ok, ExStreamClient.Model.PollResponse.t()} | {:error, any()}
Updates a poll partially
Sends events:
poll.updated
Required Arguments:
poll_id
payload
:Elixir.ExStreamClient.Model.UpdatePollPartialRequest
Optional Arguments:
client
: HTTP client to use. Must implementExStreamClient.Http.Behavior
(e.g.,ExStreamClient.Http
)