ExStreamClient.Operations.Chat.Messages (ExStreamClient v0.1.0)
View SourceModules for interacting with the `chat/messages` group of OpenAI APIs
API Reference: https://platform.openai.com/docs/api-reference/chat/messages
Summary
Functions
@spec cast_poll_vote( String.t(), String.t(), ExStreamClient.Model.CastPollVoteRequest.t() ) :: {:ok, ExStreamClient.Model.PollVoteResponse.t()} | {:error, any()}
Cast a vote on a poll
Sends events:
poll.vote_casted
### Required Arguments:
- `message_id` - `poll_id` - `payload`: CastPollVoteRequest
@spec commit_message(String.t(), ExStreamClient.Model.CommitMessageRequest.t()) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Commits a pending message, which will make it visible in the channel
Sends events:
message.new
message.updated
message.new
message.updated
### Required Arguments:
- `id` - `payload`: CommitMessageRequest
@spec delete_message(String.t(), deleted_by: String.t(), hard: boolean()) :: {:ok, ExStreamClient.Model.DeleteMessageResponse.t()} | {:error, any()}
Deletes message
Sends events:
message.deleted
message.deleted
### Required Arguments:
- `id`
### Optional Arguments:
- `hard` - `deleted_by`
@spec delete_reaction(String.t(), String.t(), [{:user_id, String.t()}]) :: {:ok, ExStreamClient.Model.DeleteReactionResponse.t()} | {:error, any()}
Removes user reaction from the message
Sends events:
reaction.deleted
### Required Arguments:
- `id` - `type`
### Optional Arguments:
- `user_id`
@spec get_message(String.t(), [{:show_deleted_message, boolean()}]) :: {:ok, ExStreamClient.Model.GetMessageResponse.t()} | {:error, any()}
Returns message by ID
### Required Arguments:
- `id`
### Optional Arguments:
- `show_deleted_message`
@spec get_reactions(String.t(), offset: integer(), limit: integer()) :: {:ok, ExStreamClient.Model.GetReactionsResponse.t()} | {:error, any()}
Returns list of reactions of specific message
### Required Arguments:
- `id`
### Optional Arguments:
- `limit`
- `offset`
@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() ) :: {:ok, ExStreamClient.Model.GetRepliesResponse.t()} | {:error, any()}
Returns replies (thread) of the message
### Required Arguments:
- `parent_id`
### Optional Arguments:
- `sort`
- `limit`
- `offset`
- `id_gte`
- `id_gt`
- `id_lte`
- `id_lt`
- `created_at_after_or_equal`
- `created_at_after`
- `created_at_before_or_equal`
- `created_at_before`
- `id_around`
- `created_at_around`
@spec query_message_history(ExStreamClient.Model.QueryMessageHistoryRequest.t()) :: {:ok, ExStreamClient.Model.QueryMessageHistoryResponse.t()} | {:error, any()}
Queries history for one message
### Required Arguments:
- `payload`: QueryMessageHistoryRequest
@spec query_reactions(String.t(), ExStreamClient.Model.QueryReactionsRequest.t()) :: {:ok, ExStreamClient.Model.QueryReactionsResponse.t()} | {:error, any()}
Get reactions on a message
### Required Arguments:
- `id`
- `payload`: QueryReactionsRequest
@spec remove_poll_vote(String.t(), String.t(), String.t(), [{:user_id, String.t()}]) :: {:ok, ExStreamClient.Model.PollVoteResponse.t()} | {:error, any()}
Delete a vote from a poll
Sends events:
poll.vote_removed
### Required Arguments:
- `message_id` - `poll_id` - `vote_id`
### Optional Arguments:
- `user_id`
@spec run_message_action(String.t(), ExStreamClient.Model.MessageActionRequest.t()) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Executes message command action with given parameters
Sends events:
message.new
message.new
### Required Arguments:
- `id` - `payload`: MessageActionRequest
@spec send_reaction(String.t(), ExStreamClient.Model.SendReactionRequest.t()) :: {:ok, ExStreamClient.Model.SendReactionResponse.t()} | {:error, any()}
Sends reaction to specified message
Sends events:
reaction.new
reaction.updated
### Required Arguments:
- `id` - `payload`: SendReactionRequest
@spec translate_message(String.t(), ExStreamClient.Model.TranslateMessageRequest.t()) :: {:ok, ExStreamClient.Model.MessageResponse.t()} | {:error, any()}
Translates message to a given language using automated translation software
Sends events:
message.updated
message.updated
### Required Arguments:
- `id` - `payload`: TranslateMessageRequest
@spec undelete_message(String.t(), ExStreamClient.Model.UpdateMessageRequest.t()) :: {:ok, ExStreamClient.Model.UpdateMessageResponse.t()} | {:error, any()}
Undelete a message that was previously soft-deleted
Sends events:
message.undeleted
message.undeleted
### Required Arguments:
- `id` - `payload`: UpdateMessageRequest
@spec update_message(String.t(), ExStreamClient.Model.UpdateMessageRequest.t()) :: {:ok, ExStreamClient.Model.UpdateMessageResponse.t()} | {:error, any()}
Updates message with new data
Sends events:
message.updated
message.updated
### Required Arguments:
- `id` - `payload`: UpdateMessageRequest
@spec update_message_partial( String.t(), ExStreamClient.Model.UpdateMessagePartialRequest.t() ) :: {:ok, ExStreamClient.Model.UpdateMessagePartialResponse.t()} | {:error, any()}
Updates certain fields of the message
Sends events:
message.updated
message.updated
### Required Arguments:
- `id` - `payload`: UpdateMessagePartialRequest