99 lines
3.5 KiB
Dart
99 lines
3.5 KiB
Dart
import 'package:SEFER/constant/colors.dart';
|
|
import 'package:SEFER/constant/style.dart';
|
|
import 'package:SEFER/controller/firebase/firbase_messge.dart';
|
|
import 'package:SEFER/controller/home/captin/map_driver_controller.dart';
|
|
import 'package:SEFER/views/widgets/my_scafold.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:SEFER/controller/home/captin/home_captain_controller.dart';
|
|
|
|
import '../../../../../constant/box_name.dart';
|
|
import '../../../../../controller/functions/call_controller.dart';
|
|
import '../../../../../main.dart';
|
|
|
|
class CallPage extends StatelessWidget {
|
|
const CallPage({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return MyScafolld(title: 'Call Page', isleading: true, body: [callPage()]);
|
|
}
|
|
}
|
|
|
|
GetBuilder<HomeCaptainController> callPage() {
|
|
CallController callController = Get.put(CallController());
|
|
Get.put(MapDriverController());
|
|
callController.initAgoraFull();
|
|
return GetBuilder<HomeCaptainController>(
|
|
builder: (controller) => Positioned(
|
|
top: Get.height * .2,
|
|
child: Container(
|
|
height: 100, width: Get.width,
|
|
decoration: AppStyle.boxDecoration,
|
|
child: Row(
|
|
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
|
|
children: [
|
|
GestureDetector(
|
|
onTap: () async {
|
|
// await callController.initAgoraFull();
|
|
// callController.join();
|
|
FirebaseMessagesController().sendNotificationToPassengerToken(
|
|
'Call Income',
|
|
'You have call from driver ${box.read(BoxName.nameDriver)}',
|
|
Get.find<MapDriverController>().tokenPassenger,
|
|
[
|
|
callController.token,
|
|
callController.channelName,
|
|
callController.uid.toString(),
|
|
callController.remoteUid.toString(),
|
|
],
|
|
);
|
|
callController.join();
|
|
},
|
|
child: Container(
|
|
width: 50,
|
|
height: 50,
|
|
decoration: const BoxDecoration(
|
|
shape: BoxShape.circle, color: AppColor.greenColor),
|
|
child: const Icon(
|
|
Icons.phone,
|
|
size: 35,
|
|
color: AppColor.secondaryColor,
|
|
)),
|
|
),
|
|
Column(
|
|
children: [
|
|
Text(callController.status),
|
|
Text(Get.find<MapDriverController>().passengerName.toString()),
|
|
],
|
|
),
|
|
GestureDetector(
|
|
onTap: () async {
|
|
FirebaseMessagesController().sendNotificationToPassengerToken(
|
|
'Call End'.tr,
|
|
'Call End',
|
|
Get.find<MapDriverController>().tokenPassenger,
|
|
[],
|
|
);
|
|
callController.leave();
|
|
Get.back();
|
|
},
|
|
child: Container(
|
|
width: 50,
|
|
height: 50,
|
|
decoration: const BoxDecoration(
|
|
shape: BoxShape.circle, color: AppColor.redColor),
|
|
child: const Icon(
|
|
Icons.phone_disabled_sharp,
|
|
size: 35,
|
|
color: AppColor.secondaryColor,
|
|
)),
|
|
)
|
|
],
|
|
),
|
|
// ignore: prefer_const_constructors
|
|
),
|
|
),
|
|
);
|
|
}
|