createSingleChat method
Future<String>
createSingleChat({
- required String peerEmail,
- required String message,
- BuildContext? context,
context
if you pass the context the the chat will open after send message
throw You cant start chat if you start chat your self
throw Exception if peer Email Not in v chat Data base ! so first you must migrate all users
throw No internet connection
Implementation
Future<String> createSingleChat({
required String peerEmail,
required String message,
BuildContext? context,
}) async {
final roomData =
await _vChatUsersApi.createNewSingleRoom(message, peerEmail);
if (context != null) {
final room = VChatRoom.fromMap(roomData);
await LocalStorageService.instance.setRoomOrUpdate(room);
RoomCubit.instance.updateOneRoomInRamAndSort(room);
RoomCubit.instance.currentRoomId = room.id;
Navigator.push(
context,
MaterialPageRoute(
builder: (_) => MessageView(
roomId: room.id,
),
),
);
}
return "Message has been send";
}