Added the wakelock

dev_faiz
FaizHashmiCS22 2 years ago
parent 9384853027
commit a44f58280d

@ -12,13 +12,13 @@ class MainActivity: FlutterActivity() {
@RequiresApi(Build.VERSION_CODES.M) @RequiresApi(Build.VERSION_CODES.M)
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
var REQUEST_OVERLAY_PERMISSIONS = 100 // var REQUEST_OVERLAY_PERMISSIONS = 100
if (!Settings.canDrawOverlays(applicationContext)) { // if (!Settings.canDrawOverlays(applicationContext)) {
val myIntent = Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION) // val myIntent = Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION)
val uri: Uri = Uri.fromParts("package", packageName, null) // val uri: Uri = Uri.fromParts("package", packageName, null)
myIntent.data = uri // myIntent.data = uri
startActivityForResult(myIntent, REQUEST_OVERLAY_PERMISSIONS) // startActivityForResult(myIntent, REQUEST_OVERLAY_PERMISSIONS)
return // return
} // }
} }
} }

@ -1,4 +1,5 @@
import 'dart:developer'; import 'dart:developer';
import 'dart:io';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:queuing_system/core/base/base_app_client.dart'; import 'package:queuing_system/core/base/base_app_client.dart';
@ -7,6 +8,13 @@ import 'package:queuing_system/core/response_model/patient_call.dart';
const _getCallRequestInfoByClinicInfo = "/GetCallRequestInfoByIP"; const _getCallRequestInfoByClinicInfo = "/GetCallRequestInfoByIP";
const _call_UpdateNotIsQueueRecordByIDAsync = "/UpdateCallRequestQueue"; const _call_UpdateNotIsQueueRecordByIDAsync = "/UpdateCallRequestQueue";
class MyHttpOverrides extends HttpOverrides {
@override
HttpClient createHttpClient(SecurityContext context) {
return super.createHttpClient(context)..badCertificateCallback = (X509Certificate cert, String host, int port) => true;
}
}
class API { class API {
static getCallRequestInfoByClinicInfo(String deviceIp, {@required Function(List<Tickets>, List<Tickets>) onSuccess, @required Function(dynamic) onFailure}) async { static getCallRequestInfoByClinicInfo(String deviceIp, {@required Function(List<Tickets>, List<Tickets>) onSuccess, @required Function(dynamic) onFailure}) async {
final body = {"IPAdress": deviceIp}; final body = {"IPAdress": deviceIp};

@ -30,7 +30,7 @@ class Tickets {
id = json['ID']; id = json['ID'];
callNo = json['CallNo']; callNo = json['CallNo'];
roomNo = json['RoomNo']; roomNo = json['RoomNo'];
callType = json['callType']; callType = json['CallType'];
createdON = json['CreatedON']; createdON = json['CreatedON'];
doctorName = json['DoctorName']; doctorName = json['DoctorName'];
doctorNameN = json['DoctorNameN']; doctorNameN = json['DoctorNameN'];
@ -94,7 +94,7 @@ class Tickets {
} }
CallType getCallType() { CallType getCallType() {
if (callType == 0) return CallType.RECEPTION; if (callType == 3) return CallType.RECEPTION;
if (callType == 1) return CallType.NURSE; if (callType == 1) return CallType.NURSE;
if (callType == 2) return CallType.DOCTOR; if (callType == 2) return CallType.DOCTOR;
return CallType.NONE; return CallType.NONE;

@ -1,3 +1,4 @@
import 'dart:async';
import 'dart:developer'; import 'dart:developer';
import 'dart:io'; import 'dart:io';
@ -18,7 +19,6 @@ import 'package:queuing_system/widget/data_display/app_texts_widget.dart';
var DEVICE_IP = "10.10.15.11"; // Testing IP var DEVICE_IP = "10.10.15.11"; // Testing IP
String globalInterface = "";
// var DEVICE_IP = "10.10.14.11"; // Testing IP // var DEVICE_IP = "10.10.14.11"; // Testing IP
// var DEVICE_IP = "10.10.15.11"; // var DEVICE_IP = "10.10.15.11";
@ -46,28 +46,28 @@ class _MyHomePageState extends State<MyHomePage> {
super.dispose(); super.dispose();
} }
Future printIps() async { Future<String> printIps() async {
for (var interface in await NetworkInterface.list(type: InternetAddressType.IPv4)) { for (var interface in await NetworkInterface.list(type: InternetAddressType.IPv4)) {
print("interfaces: ${interface.name}"); log("interfaces: ${interface.name}");
globalInterface = globalInterface + " ** " + interface.name;
if (interface.name == "eth0") { if (interface.name == "eth0") {
for (var address in interface.addresses) { for (var address in interface.addresses) {
DEVICE_IP = address.address; DEVICE_IP = address.address;
log('${address.address} ${address.type.name}'); return DEVICE_IP;
log(DEVICE_IP);
} }
} }
return "";
} }
} }
@override @override
void initState() { void initState() {
listenNetworkConnectivity(); listenNetworkConnectivity();
printIps(); scheduleMicrotask(() async {
if (!signalRHelper.getConnectionState()) { if (!signalRHelper.getConnectionState()) {
signalRHelper.startSignalRConnection(DEVICE_IP, onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect); signalRHelper.startSignalRConnection(await printIps(), onUpdateAvailable: onUpdateAvailable, onConnect: onConnect, onConnecting: onConnecting, onDisconnect: onDisconnect);
} }
});
super.initState(); super.initState();
} }
@ -99,7 +99,6 @@ class _MyHomePageState extends State<MyHomePage> {
fontFamily: 'Poppins-Medium.ttf', fontFamily: 'Poppins-Medium.ttf',
), ),
Text(DEVICE_IP, style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 2.2)), Text(DEVICE_IP, style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 2.2)),
], ],
), ),
const SizedBox(width: 10), const SizedBox(width: 10),
@ -107,8 +106,6 @@ class _MyHomePageState extends State<MyHomePage> {
"assets/images/cloud_logo.png", "assets/images/cloud_logo.png",
height: SizeConfig.getHeightMultiplier() * 4, height: SizeConfig.getHeightMultiplier() * 4,
), ),
const SizedBox(width: 10),
Text(globalInterface, style: TextStyle(fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 2.2)),
], ],
), ),
], ],

@ -1,11 +1,20 @@
import 'dart:io';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:queuing_system/core/api.dart';
import 'package:wakelock/wakelock.dart';
import 'core/base/project_view_model.dart'; import 'core/base/project_view_model.dart';
import 'core/config/size_config.dart'; import 'core/config/size_config.dart';
import 'home/home_screen.dart'; import 'home/home_screen.dart';
// import 'home/home_screen_bkp.dart'; // import 'home/home_screen_bkp.dart';
void main() { void main() {
//TODO: WE HAVE TO UPDATE THIS BEFORE GOING LIVE.
HttpOverrides.global = MyHttpOverrides();
WidgetsFlutterBinding.ensureInitialized();
Wakelock.enable();
runApp(const MyApp()); runApp(const MyApp());
} }

@ -1,58 +1,58 @@
import 'dart:ui';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart'; import 'package:flutter_svg/flutter_svg.dart';
import 'package:queuing_system/core/config/config.dart'; import 'package:queuing_system/core/config/config.dart';
enum CallType{ enum CallType {
RECEPTION, RECEPTION,
NURSE, NURSE,
DOCTOR, DOCTOR,
NONE, NONE,
} }
extension xCallType on CallType{ extension xCallType on CallType {
Color color() {
Color color(){ if (this == CallType.RECEPTION) {
if(this == CallType.RECEPTION) {
return AppGlobal.appRedColor; return AppGlobal.appRedColor;
}else if(this == CallType.NURSE) { } else if (this == CallType.NURSE) {
return AppGlobal.appGreenColor; return AppGlobal.appGreenColor;
}else if(this == CallType.DOCTOR) { } else if (this == CallType.DOCTOR) {
return AppGlobal.appRedColor ; return AppGlobal.appRedColor;
}else{ } else {
return Colors.black54; return Colors.black54;
} }
} }
SvgPicture icon(double height,){ SvgPicture icon(
if(this == CallType.RECEPTION) { double height,
) {
if (this == CallType.RECEPTION) {
return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color()); return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color());
}else if(this == CallType.NURSE) { } else if (this == CallType.NURSE) {
return SvgPicture.asset("assets/images/nurseicon.svg", height: height, color: color()); return SvgPicture.asset("assets/images/nurseicon.svg", height: height, color: color());
}else if(this == CallType.DOCTOR) { } else if (this == CallType.DOCTOR) {
return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color()); return SvgPicture.asset("assets/images/doctoricon.svg", height: height, color: color());
} }
return SvgPicture.asset("assets/images/wait.svg", height: height, color: color());; return SvgPicture.asset("assets/images/wait.svg", height: height, color: color());
;
} }
String message(String lang){ String message(String lang) {
if(this == CallType.RECEPTION) { if (this == CallType.RECEPTION) {
return "Please visit reception"; return "Please wait . . .";
}else if(this == CallType.NURSE) { } else if (this == CallType.NURSE) {
return "Please visit nurse"; return "Please visit nurse";
}else if(this == CallType.DOCTOR) { } else if (this == CallType.DOCTOR) {
return "Please visit doctor"; return "Please visit doctor";
} }
return "Please wait . . ."; return "Please wait . . .";
} }
String audio(String lang){ String audio(String lang) {
if(this == CallType.RECEPTION) { if (this == CallType.RECEPTION) {
return "visit_doctor.mp3"; return "visit_doctor.mp3";
}else if(this == CallType.NURSE) { } else if (this == CallType.NURSE) {
return "visit_nurse.mp3"; return "visit_nurse.mp3";
}else if(this == CallType.DOCTOR) { } else if (this == CallType.DOCTOR) {
return "visit_doctor.mp3"; return "visit_doctor.mp3";
} }
return ""; return "";

@ -10,6 +10,7 @@ import connectivity_macos
import flutter_tts import flutter_tts
import just_audio import just_audio
import path_provider_foundation import path_provider_foundation
import wakelock_macos
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin"))
@ -17,4 +18,5 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
FlutterTtsPlugin.register(with: registry.registrar(forPlugin: "FlutterTtsPlugin")) FlutterTtsPlugin.register(with: registry.registrar(forPlugin: "FlutterTtsPlugin"))
JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
WakelockMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockMacosPlugin"))
} }

@ -184,14 +184,6 @@ packages:
description: flutter description: flutter
source: sdk source: sdk
version: "0.0.0" version: "0.0.0"
get_ip_address:
dependency: "direct main"
description:
name: get_ip_address
sha256: "50265edb9b1c917a29c741f3173c0dca34d8e0fc2984aed87c58f0269bf93f29"
url: "https://pub.dev"
source: hosted
version: "0.0.5"
get_it: get_it:
dependency: "direct main" dependency: "direct main"
description: description:
@ -525,6 +517,46 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.4" version: "2.1.4"
wakelock:
dependency: "direct main"
description:
name: wakelock
sha256: "769ecf42eb2d07128407b50cb93d7c10bd2ee48f0276ef0119db1d25cc2f87db"
url: "https://pub.dev"
source: hosted
version: "0.6.2"
wakelock_macos:
dependency: transitive
description:
name: wakelock_macos
sha256: "047c6be2f88cb6b76d02553bca5a3a3b95323b15d30867eca53a19a0a319d4cd"
url: "https://pub.dev"
source: hosted
version: "0.4.0"
wakelock_platform_interface:
dependency: transitive
description:
name: wakelock_platform_interface
sha256: "1f4aeb81fb592b863da83d2d0f7b8196067451e4df91046c26b54a403f9de621"
url: "https://pub.dev"
source: hosted
version: "0.3.0"
wakelock_web:
dependency: transitive
description:
name: wakelock_web
sha256: "1b256b811ee3f0834888efddfe03da8d18d0819317f20f6193e2922b41a501b5"
url: "https://pub.dev"
source: hosted
version: "0.4.0"
wakelock_windows:
dependency: transitive
description:
name: wakelock_windows
sha256: "857f77b3fe6ae82dd045455baa626bc4b93cb9bb6c86bf3f27c182167c3a5567"
url: "https://pub.dev"
source: hosted
version: "0.2.1"
web_socket_channel: web_socket_channel:
dependency: transitive dependency: transitive
description: description:

@ -41,8 +41,7 @@ dependencies:
blinking_text: ^1.0.2 blinking_text: ^1.0.2
just_audio: ^0.9.31 just_audio: ^0.9.31
flutter_tts: ^3.6.3 flutter_tts: ^3.6.3
get_ip_address: ^0.0.5 wakelock: ^0.6.2
#signalr core #signalr core
signalr_core: ^1.1.1 signalr_core: ^1.1.1

Loading…
Cancel
Save