File tree Expand file tree Collapse file tree 4 files changed +48
-3
lines changed
examples/messaging/messages Expand file tree Collapse file tree 4 files changed +48
-3
lines changed Original file line number Diff line number Diff line change @@ -254,6 +254,9 @@ getMessages: $(SRCS) $(EXAMPLES_DIR)/messaging/messages/getMessages.cpp
254254createMessage : $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/createMessage.cpp
255255 @mkdir -p ./$(TESTS_DIR )
256256 $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /createMessage $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/createMessage.cpp $(LDFLAGS )
257+ getProvider : $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/getProvider.cpp
258+ @mkdir -p ./$(TESTS_DIR )
259+ $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /getProvider $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/getProvider.cpp $(LDFLAGS )
257260listProviders : $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/listProviders.cpp
258261 @mkdir -p ./$(TESTS_DIR )
259262 $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /listProviders $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/listProviders.cpp $(LDFLAGS )
@@ -262,11 +265,11 @@ listMessageLogs: $(SRCS) $(EXAMPLES_DIR)/messaging/messages/listMessageLogs.cpp
262265 $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /listMessageLogs $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/listMessageLogs.cpp $(LDFLAGS )
263266deleteMessages : $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/deleteMessages.cpp
264267 @mkdir -p ./$(TESTS_DIR )
265- $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /deleteMessages $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/deleteMessages.cpp $(LDFLAGS )
266-
268+ $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /deleteMessages $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/deleteMessages.cpp $(LDFLAGS )
267269listTargets : $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/listTargets.cpp
268270 @mkdir -p ./$(TESTS_DIR )
269271 $(CXX ) $(CXXFLAGS ) -o ./$(TESTS_DIR ) /listTargets $(SRCS ) $(EXAMPLES_DIR ) /messaging/messages/listTargets.cpp $(LDFLAGS )
272+
270273# Messaging - Topics
271274getTopic : $(SRCS ) $(EXAMPLES_DIR ) /messaging/topics/getTopic.cpp
272275 @mkdir -p ./$(TESTS_DIR )
Original file line number Diff line number Diff line change 1+ #include " Appwrite.hpp"
2+ #include < iostream>
3+ int main () {
4+ std::string projectId = " 68853010003a3f4fc106" ;
5+ std::string apiKey = " " ;
6+ std::string providerId = " 689a4547001864da9330" ;
7+ try {
8+ Messaging messaging (projectId, apiKey);
9+ std::string response = messaging.getProvider (providerId);
10+ std::cout << " provider Fetched!\n Response: " << response << std::endl;
11+ } catch (const AppwriteException &ex) {
12+ std::cerr << " Exception: " << ex.what () << std::endl;
13+ }
14+ return 0 ;
15+ }
Original file line number Diff line number Diff line change @@ -181,6 +181,13 @@ class Messaging {
181181 */
182182 std::string listProviders (Queries &queries);
183183
184+ /* *
185+ * @brief Get a specific provider by ID.
186+ * @param providerId ID of the provider
187+ * @return JSON string of the provider details
188+ */
189+ std::string getProvider (const std::string &providerId);
190+
184191 /* *
185192 * @brief List all message logs with optional filters.
186193 * @param messageId ID of the message
Original file line number Diff line number Diff line change @@ -530,6 +530,25 @@ std::string Messaging::updatePush(const std::string &messageId,
530530 }
531531}
532532
533+ std::string Messaging::getProvider (const std::string &providerId) {
534+ if (providerId.empty ()) {
535+ throw AppwriteException (" Missing required parameter: providerId" );
536+ }
537+ std::string url =
538+ Config::API_BASE_URL + " /messaging/providers/" + providerId;
539+ std::vector<std::string> headers = Config::getHeaders (projectId);
540+ headers.push_back (" X-Appwrite-Key: " + apiKey);
541+ std::string response;
542+ int statusCode = Utils::getRequest (url, headers, response);
543+ if (statusCode == HttpStatus::OK) {
544+ return response;
545+ } else {
546+ throw AppwriteException (" Error fetching provider. Status code: " +
547+ std::to_string (statusCode) +
548+ " \n Response: " + response);
549+ }
550+ }
551+
533552std::string Messaging::listProviders (Queries &queries) {
534553 std::string url = Config::API_BASE_URL + " /messaging/providers" ;
535554 std::vector<std::string> headers = Config::getHeaders (projectId);
@@ -611,4 +630,5 @@ std::string Messaging::listTargets(const std::string &messageId,
611630 " Error fetching message targets. Status code: " + std::to_string (statusCode) +
612631 " \n\n Response: " + response);
613632 }
614- }
633+ }
634+
You can’t perform that action at this time.
0 commit comments