ExStreamClient.Operations.Chat.Messages (ExStreamClient v0.1.13)
View SourceModules for interacting with the chat/messages group of Stream APIs
API Reference: https://getstream.github.io/protocol/?urls.primaryName=Chat%20v2
Shared options
All functions in this module accept the following optional parameters:
api_key- API key to use. If not provided, the default key from config will be usedauthenticate_as_user- User id to authenticate. If not provided, the server key will be usedapi_key_secret- API key secret to use. If not provided, the default secret from config will be usedendpoint- endpoint to use. If not provided, the default endpoint from config will be usedclient- HTTP client to use. Must implementExStreamClient.Http.Behavior. Defaults toExStreamClient.Httpreq_opts- all of these options will be forwarded to req. SeeReq.new/1for available options
Summary
Functions
Cast a vote on a poll
Commits a pending message, which will make it visible in the channel
Creates a new reminder
Deletes message
Delete a vote from a poll
Removes user reaction from the message
Deletes a user's created reminder
Returns message by ID
Returns list of reactions of specific message
Returns replies (thread) of the message
Queries history for one message
Get reactions on a message
Executes message command action with given parameters
Sends reaction to specified message
Translates message to a given language using automated translation software
Undelete a message that was previously soft-deleted
Updates message with new data
Updates certain fields of the message
Updates an existing reminder
Types
Functions
@spec cast_poll_vote( String.t(), String.t(), ExStreamClient.Model.CastPollVoteRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.PollVoteResponse.t()} | {:error, any()}
Cast a vote on a poll
Sends events:
feeds.poll.vote_castedfeeds.poll.vote_changedfeeds.poll.vote_removedpoll.vote_castedpoll.vote_changedpoll.vote_removed
Required Arguments:
message_idpoll_idpayload:Elixir.ExStreamClient.Model.CastPollVoteRequest
Optional Arguments:
- All options from Shared Options are supported.
@spec commit_message( String.t(), ExStreamClient.Model.CommitMessageRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Commits a pending message, which will make it visible in the channel
Sends events:
message.newmessage.updatedmessage.newmessage.updated
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec create_reminder( String.t(), ExStreamClient.Model.CreateReminderRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.ReminderResponseData.t()} | {:error, any()}
Creates a new reminder
Sends events:
reminder.created
Required Arguments:
message_idpayload:Elixir.ExStreamClient.Model.CreateReminderRequest
Optional Arguments:
- All options from Shared Options are supported.
@spec delete_message(String.t(), [ ({:deleted_by, String.t()} | {:hard, boolean()}) | shared_opts() ]) :: {:ok, ExStreamClient.Model.DeleteMessageResponse.t()} | {:error, any()}
Deletes message
Sends events:
message.deletedmessage.deleted
Required Arguments:
id
Optional Arguments:
deleted_byhard- All options from Shared Options are supported.
@spec delete_poll_vote(String.t(), String.t(), String.t(), [ {:user_id, String.t()} | shared_opts() ]) :: {:ok, ExStreamClient.Model.PollVoteResponse.t()} | {:error, any()}
Delete a vote from a poll
Sends events:
feeds.poll.vote_removedpoll.vote_removed
Required Arguments:
message_idpoll_idvote_id
Optional Arguments:
user_id- All options from Shared Options are supported.
@spec delete_reaction(String.t(), String.t(), [{:user_id, String.t()} | shared_opts()]) :: {:ok, ExStreamClient.Model.DeleteReactionResponse.t()} | {:error, any()}
Removes user reaction from the message
Sends events:
reaction.deleted
Required Arguments:
idtype
Optional Arguments:
user_id- All options from Shared Options are supported.
@spec delete_reminder(String.t(), [{:user_id, String.t()} | shared_opts()]) :: {:ok, ExStreamClient.Model.DeleteReminderResponse.t()} | {:error, any()}
Deletes a user's created reminder
Sends events:
reminder.deleted
Required Arguments:
message_id
Optional Arguments:
user_id- All options from Shared Options are supported.
@spec get_message(String.t(), [{:show_deleted_message, boolean()} | shared_opts()]) :: {:ok, ExStreamClient.Model.GetMessageResponse.t()} | {:error, any()}
Returns message by ID
Required Arguments:
id
Optional Arguments:
show_deleted_message- All options from Shared Options are supported.
@spec get_reactions(String.t(), [ ({:offset, integer()} | {:limit, integer()}) | shared_opts() ]) :: {:ok, ExStreamClient.Model.GetReactionsResponse.t()} | {:error, any()}
Returns list of reactions of specific message
Required Arguments:
id
Optional Arguments:
limitoffset- All options from Shared Options are supported.
@spec get_replies(String.t(), [ ({:created_at_around, float()} | {:id_around, String.t()} | {:created_at_before, float()} | {:created_at_before_or_equal, float()} | {:created_at_after, float()} | {:created_at_after_or_equal, float()} | {:id_lt, String.t()} | {:id_lte, String.t()} | {:id_gt, String.t()} | {:id_gte, String.t()} | {:offset, integer()} | {:limit, integer()} | {:sort, list()}) | shared_opts() ]) :: {:ok, ExStreamClient.Model.GetRepliesResponse.t()} | {:error, any()}
Returns replies (thread) of the message
Required Arguments:
parent_id
Optional Arguments:
created_at_aftercreated_at_after_or_equalcreated_at_aroundcreated_at_beforecreated_at_before_or_equalid_aroundid_gtid_gteid_ltid_ltelimitoffsetsort- All options from Shared Options are supported.
@spec query_message_history( ExStreamClient.Model.QueryMessageHistoryRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.QueryMessageHistoryResponse.t()} | {:error, any()}
Queries history for one message
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec query_reactions( String.t(), ExStreamClient.Model.QueryReactionsRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.QueryReactionsResponse.t()} | {:error, any()}
Get reactions on a message
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec run_message_action( String.t(), ExStreamClient.Model.MessageActionRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Executes message command action with given parameters
Sends events:
message.newmessage.new
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec send_reaction( String.t(), ExStreamClient.Model.SendReactionRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.SendReactionResponse.t()} | {:error, any()}
Sends reaction to specified message
Sends events:
reaction.newreaction.updated
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec translate_message( String.t(), ExStreamClient.Model.TranslateMessageRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Translates message to a given language using automated translation software
Sends events:
message.updatedmessage.updated
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec undelete_message( String.t(), ExStreamClient.Model.UpdateMessageRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.UpdateMessageResponse.t()} | {:error, any()}
Undelete a message that was previously soft-deleted
Sends events:
message.undeletedmessage.undeleted
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec update_message( String.t(), ExStreamClient.Model.UpdateMessageRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.UpdateMessageResponse.t()} | {:error, any()}
Updates message with new data
Sends events:
message.updatedmessage.updated
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec update_message_partial( String.t(), ExStreamClient.Model.UpdateMessagePartialRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.UpdateMessagePartialResponse.t()} | {:error, any()}
Updates certain fields of the message
Sends events:
message.updatedmessage.updated
Required Arguments:
Optional Arguments:
- All options from Shared Options are supported.
@spec update_reminder( String.t(), ExStreamClient.Model.UpdateReminderRequest.t(), shared_opts() ) :: {:ok, ExStreamClient.Model.UpdateReminderResponse.t()} | {:error, any()}
Updates an existing reminder
Sends events:
reminder.updated
Required Arguments:
message_idpayload:Elixir.ExStreamClient.Model.UpdateReminderRequest
Optional Arguments:
- All options from Shared Options are supported.