sendBarrage method
Implementation
Future<bool> sendBarrage(Barrage barrageModel) async {
debugPrint(
"BarrageManager sendBarrage:barrageModel:${barrageModel.toString()}");
if (barrageModel.content.isEmpty) {
return false;
}
V2TimValueCallback<V2TimMsgCreateInfoResult> createTextMessageRes =
await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.createTextMessage(
text: barrageModel.content,
);
if (createTextMessageRes.code == 0) {
String? id = createTextMessageRes.data?.id;
V2TimValueCallback<V2TimMessage> sendMessageRes =
await TencentImSDKPlugin.v2TIMManager.getMessageManager().sendMessage(
id: id!,
receiver: "",
groupID: BarrageStore().roomId,
priority: MessagePriorityEnum.V2TIM_PRIORITY_LOW,
);
if (sendMessageRes.code == 0) {
debugPrint("BarrageManager sendBarrage success");
BarrageStore().state.barrageList.value.add(barrageModel);
final list = <Barrage>[];
list.addAll(BarrageStore().state.barrageList.value);
BarrageStore().state.barrageList.value = list;
return true;
} else {
debugPrint(
"BarrageManager sendBarrage fail,{code:${sendMessageRes.code}, desc:${sendMessageRes.desc}");
return false;
}
} else {
debugPrint(
"BarrageManager sendBarrage createTextMessage fail,{code:${createTextMessageRes.code}, "
"desc:${createTextMessageRes.desc}");
return false;
}
}