24 Messaging(
const std::string &projectId,
const std::string &apiKey);
45 std::string
getTopic(
const std::string &topicId);
68 std::string
createTopic(
const std::string &topicId,
const std::string &name,
69 const std::vector<std::string> &subscribe);
78 std::string
updateTopic(
const std::string &topicId,
const std::string &name,
79 const std::vector<std::string> &subscribe = {});
88 const std::string &subscriberId);
105 const std::string &subscriberId);
116 const std::string &name,
117 const std::string &targetId,
118 const std::string &subscriberId);
136 const std::string &title,
const std::string &body,
137 const std::vector<std::string> &topicId = {},
138 const std::vector<std::string> &userId = {},
155 const std::string &subject,
156 const std::string &content,
157 const std::vector<std::string> &topics = {},
158 const std::vector<std::string> &targets = {});
173 const std::string &content,
174 const std::vector<std::string> &topics = {},
175 const std::vector<std::string> &users = {},
176 const std::vector<std::string> &targets = {},
178 const std::string &scheduled_at =
"");
200 const std::string &title,
const std::string &body,
201 const std::vector<std::string> &topicId = {},
202 const std::vector<std::string> &userId = {});
232 std::string service_account_json,
284 const std::string &subject,
285 const std::string &content);
294 const std::vector<std::string> &queries = {});
303 const std::vector<std::string> &queries = {});
306 std::string projectId;
Declares the base exception class used to represent Appwrite SDK errors.
Defines HTTP status code enums for consistent error and response handling.
Offers helper methods to construct query parameters for filtering and sorting API responses.
Provides utility functions and helpers used across the SDK.
Provides APIs to manage messaging: messages, topics, subscribers.
std::string updatePush(const std::string &messageId, const std::string &title, const std::string &body, const std::vector< std::string > &topicId={}, const std::vector< std::string > &userId={})
Updates an existing push notification message.
std::string createTopic(const std::string &topicId, const std::string &name, const std::vector< std::string > &subscribe)
Create a new topic.
std::string deleteTopic(const std::string &topicId)
Delete a topic by its ID.
std::string createMessage(const std::string &messageId, const std::string &subject, const std::string &content, const std::vector< std::string > &topics={}, const std::vector< std::string > &targets={})
Create a new email message.
std::string deleteMessages(const std::string &messageId)
Delete a message by its ID.
std::string deleteSubscribers(const std::string &topicId, const std::string &subscriberId)
Delete a subscriber from a topic.
std::string deleteProvider(const std::string &providerId)
Delete a provider.
std::string createSubscribers(const std::string &topicId, const std::string &name, const std::string &targetId, const std::string &subscriberId)
Add a subscriber to a topic.
std::string updateEmail(const std::string &messageId, const std::string &subject, const std::string &content)
std::string getProvider(const std::string &providerId)
Get a specific provider by ID.
std::string listTopics(Queries &queries)
List all topics with optional filters.
std::string createFcmProvider(std::string &providerId, std::string name, std::string service_account_json, bool enabled)
Create a new Firebase Cloud Messaging provider.
std::string listProviderLogs(const std::string &providerId, Queries &queries)
List all provider logs.
std::string getMessages(const std::string &messageId)
Get a specific message by ID.
std::string listMessageLogs(const std::string &messageId, Queries &queries)
List all message logs with optional filters.
std::string createPush(const std::string &messageId, const std::string &title, const std::string &body, const std::vector< std::string > &topicId={}, const std::vector< std::string > &userId={}, bool draft=false)
Creates a new push notification message.
std::string createSms(const std::string &messageId, const std::string &content, const std::vector< std::string > &topics={}, const std::vector< std::string > &users={}, const std::vector< std::string > &targets={}, bool draft=false, const std::string &scheduled_at="")
Create a new sms message.
std::string getTopic(const std::string &topicId)
Get details of a topic by ID.
Messaging(const std::string &projectId, const std::string &apiKey)
Constructor for Messaging service.
std::string getSubscriber(const std::string &topicId, const std::string &subscriberId)
Get details of a subscriber to a topic.
std::string updateTopic(const std::string &topicId, const std::string &name, const std::vector< std::string > &subscribe={})
Update an existing topic.
std::string listProviders(Queries &queries)
List all providers.
std::string listTopicLogs(const std::string &topicId, const std::vector< std::string > &queries={})
List all logs for a given topic.
std::string listTargets(const std::string &messageId, const std::vector< std::string > &queries={})
List all targets for a given message.
std::string listSubscribers(const std::string &topicId, Queries &queries)
List all subscribers of a topic.
std::string listMessages(Queries &queries)
List all messages with optional filters.
Utility class to construct and manage Appwrite-style database query filters.