main 0.0.31
cpdl 2 months ago
parent b2c3c09c20
commit ee0cea6c2b
  1. 15
      example/lib/main.dart
  2. 2
      windows/src/common/ZegoDataUtils.h
  3. 10
      windows/src/common/services/MessageManager.cpp

@ -18,6 +18,20 @@ class MyApp extends StatefulWidget {
} }
class _MyAppState extends State<MyApp> { class _MyAppState extends State<MyApp> {
Future<void> send() async {
OpenIM.iMManager.messageManager
.sendMessage(
userID: "724f91aceb434a28a1cd10f5564b2c68",
message: await OpenIM.iMManager.messageManager
.createTextMessage(text: 'hello openim'),
offlinePushInfo: OfflinePushInfo(title: 'title', desc: 'desc'))
.then((value) {
print('send success');
}).catchError((error) {
print('send error');
});
}
@override @override
void initState() { void initState() {
super.initState(); super.initState();
@ -39,6 +53,7 @@ class _MyAppState extends State<MyApp> {
.then((value) { .then((value) {
List<String> list = []; List<String> list = [];
OpenIM.iMManager.userManager.subscribeUsersStatus(list); OpenIM.iMManager.userManager.subscribeUsersStatus(list);
send();
OpenIM.iMManager.conversationManager OpenIM.iMManager.conversationManager
.getAllConversationList() .getAllConversationList()
.then((value) { .then((value) {

@ -32,5 +32,5 @@ ZFMap zego_value_get_map(flutter::EncodableValue value);
ZFArray zego_value_get_list(flutter::EncodableValue value); ZFArray zego_value_get_list(flutter::EncodableValue value);
std::string map_2_json(const flutter::EncodableMap& map); std::string map_2_json(const flutter::EncodableMap& map);
std::string value_2_json(flutter::EncodableValue value); std::string value_2_json(flutter::EncodableValue value);
nlohmann::json EncodableValueToJson(const flutter::EncodableValue& value);

@ -131,7 +131,10 @@ void MessageManagerService::sendMessage(
auto channelID = zego_value_get_string(arguments->at(flutter::EncodableValue("channelID"))); auto channelID = zego_value_get_string(arguments->at(flutter::EncodableValue("channelID")));
auto offlinePushInfo = value_2_json(arguments->at(flutter::EncodableValue("offlinePushInfo"))); auto offlinePushInfo = value_2_json(arguments->at(flutter::EncodableValue("offlinePushInfo")));
auto isOnlineOnly = zego_value_get_bool(arguments->at(flutter::EncodableValue("isOnlineOnly"))); auto isOnlineOnly = zego_value_get_bool(arguments->at(flutter::EncodableValue("isOnlineOnly")));
auto clientMsgID = zego_value_get_string(arguments->at(flutter::EncodableValue("clientMsgID"))); auto json = EncodableValueToJson(arguments->at(flutter::EncodableValue("message")));
auto clientMsgID = json["clientMsgID"].get<std::string>();
char* operationID_cs = const_cast<char*>(operationID.c_str()); char* operationID_cs = const_cast<char*>(operationID.c_str());
char* message_cs = const_cast<char*>(message.c_str()); char* message_cs = const_cast<char*>(message.c_str());
@ -780,8 +783,11 @@ void MessageManagerService::sendMessageNotOss(
auto groupID = zego_value_get_string(arguments->at(flutter::EncodableValue("groupID"))); auto groupID = zego_value_get_string(arguments->at(flutter::EncodableValue("groupID")));
auto channelId = zego_value_get_string(arguments->at(flutter::EncodableValue("channelId"))); auto channelId = zego_value_get_string(arguments->at(flutter::EncodableValue("channelId")));
auto offlinePushInfo = value_2_json(arguments->at(flutter::EncodableValue("offlinePushInfo"))); auto offlinePushInfo = value_2_json(arguments->at(flutter::EncodableValue("offlinePushInfo")));
auto clientMsgID = zego_value_get_string(arguments->at(flutter::EncodableValue("clientMsgID")));
auto isOnlineOnly = zego_value_get_bool(arguments->at(flutter::EncodableValue("isOnlineOnly"))); auto isOnlineOnly = zego_value_get_bool(arguments->at(flutter::EncodableValue("isOnlineOnly")));
auto json = EncodableValueToJson(arguments->at(flutter::EncodableValue("message")));
auto clientMsgID = json["clientMsgID"].get<std::string>();
char* operationID_cs = const_cast<char*>(operationID.c_str()); char* operationID_cs = const_cast<char*>(operationID.c_str());
char* message_cs = const_cast<char*>(message.c_str()); char* message_cs = const_cast<char*>(message.c_str());
char* userID_cs = const_cast<char*>(userID.c_str()); char* userID_cs = const_cast<char*>(userID.c_str());

Loading…
Cancel
Save