registering fcm token for users
This commit is contained in:
parent
67c583bc7e
commit
d83625521b
|
|
@ -3,6 +3,7 @@ import 'package:didvan/models/enums.dart';
|
||||||
import 'package:didvan/models/user.dart';
|
import 'package:didvan/models/user.dart';
|
||||||
import 'package:didvan/models/view/alert_data.dart';
|
import 'package:didvan/models/view/alert_data.dart';
|
||||||
import 'package:didvan/providers/core_provider.dart';
|
import 'package:didvan/providers/core_provider.dart';
|
||||||
|
import 'package:didvan/services/app_initalizer.dart';
|
||||||
import 'package:didvan/services/network/request.dart';
|
import 'package:didvan/services/network/request.dart';
|
||||||
import 'package:didvan/services/network/request_helper.dart';
|
import 'package:didvan/services/network/request_helper.dart';
|
||||||
import 'package:didvan/services/storage/storage.dart';
|
import 'package:didvan/services/storage/storage.dart';
|
||||||
|
|
@ -35,11 +36,19 @@ class UserProvider extends CoreProvier {
|
||||||
}
|
}
|
||||||
if (service.isSuccess) {
|
if (service.isSuccess) {
|
||||||
user = User.fromJson(service.result['user']);
|
user = User.fromJson(service.result['user']);
|
||||||
|
await _registerFirebaseToken();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
throw 'Getting user from API failed!';
|
throw 'Getting user from API failed!';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<void> _registerFirebaseToken() async {
|
||||||
|
final service = RequestService(RequestHelper.firebaseToken, body: {
|
||||||
|
'firebaseToken': AppInitializer.fcmToken,
|
||||||
|
});
|
||||||
|
await service.put();
|
||||||
|
}
|
||||||
|
|
||||||
Future<bool> setProfilePhoto(dynamic file) async {
|
Future<bool> setProfilePhoto(dynamic file) async {
|
||||||
appState = AppState.isolatedBusy;
|
appState = AppState.isolatedBusy;
|
||||||
final RequestService service =
|
final RequestService service =
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
|
|
||||||
class AppInitializer {
|
class AppInitializer {
|
||||||
|
static String? fcmToken;
|
||||||
|
|
||||||
static Future<void> setupServices() async {
|
static Future<void> setupServices() async {
|
||||||
if (!kIsWeb) {
|
if (!kIsWeb) {
|
||||||
StorageService.appDocsDir =
|
StorageService.appDocsDir =
|
||||||
|
|
@ -74,7 +76,8 @@ class AppInitializer {
|
||||||
Firebase.app();
|
Firebase.app();
|
||||||
}
|
}
|
||||||
final FirebaseMessaging fcm = FirebaseMessaging.instance;
|
final FirebaseMessaging fcm = FirebaseMessaging.instance;
|
||||||
fcm.subscribeToTopic('general');
|
fcmToken = await fcm.getToken();
|
||||||
|
await fcm.subscribeToTopic('general');
|
||||||
await fcm.requestPermission(
|
await fcm.requestPermission(
|
||||||
alert: true,
|
alert: true,
|
||||||
announcement: false,
|
announcement: false,
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,8 @@ class RequestHelper {
|
||||||
static const String login = _baseUserUrl + '/login';
|
static const String login = _baseUserUrl + '/login';
|
||||||
static const String directs = _baseUserUrl + '/direct';
|
static const String directs = _baseUserUrl + '/direct';
|
||||||
static const String userInfo = _baseUserUrl + '/info';
|
static const String userInfo = _baseUserUrl + '/info';
|
||||||
|
static const String firebaseToken = _baseUserUrl + '/firebaseToken';
|
||||||
|
static const String silenceInterval = _baseUserUrl + '/silenceInterval';
|
||||||
static const String updateProfilePhoto = _baseUserUrl + '/profile/photo';
|
static const String updateProfilePhoto = _baseUserUrl + '/profile/photo';
|
||||||
static const String checkUsername = _baseUserUrl + '/CheckUsername';
|
static const String checkUsername = _baseUserUrl + '/CheckUsername';
|
||||||
static const String updateProfile = _baseUserUrl + '/profile/edit';
|
static const String updateProfile = _baseUserUrl + '/profile/edit';
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue