«Ошибка при успешном вызове callbackId: CCCometChat1199030706: TypeError: Невозможно прочитать свойство« fcm »из неопределенного» - PullRequest
0 голосов
/ 28 января 2019

Я использую тот же код для push-уведомлений в кометном чате.при открытии окна кометного чата появляется сообщение «Ошибка при успехе callbackId: CCCometChat1199030706: TypeError: Невозможно прочитать свойство« fcm »из неопределенного» * ​​1001 *

Мой код находится здесь:

declare var CCCometChat: any; 


licenseKey = "COMETCHAT-UWUEP-JSKVT-UPXXN-H2Y7Z";
apiKey = "52131x665661ed305388bf2fce242889ee3774";

openCometChat() {

    var isFullScreen = true;
    CCCometChat.launchCometChat(isFullScreen, data => {
        console.log("launch come chat data", data);

        CCCometChat.getPlatform(currentplatform => {
            console.log("getPlatform", currentplatform);
            if (currentplatform.platform == "Android") {

                console.log("platform data", data);

                data = JSON.parse(data);
                console.log("json parse data", data);

                if (data.hasOwnProperty('userInfoCallback')) {
                    console.log("data.userInfoCallback", data.userInfoCallback);
                    console.log("data.userInfoCallback.push_channel", data.userInfoCallback.push_channel);
                    // this.checkFCM(data.userInfoCallback.push_channel);
                    this.fcm.subscribeToTopic(data.userInfoCallback.push_channel);
                    this.fcm.onNotification().subscribe(data => {
                        console.log("onNotification data", data);

                        this.notifyData = JSON.parse(data.data);
                        console.log('this.notifyData -> ' +JSON.stringify(this.notifyData));
                        this.message = this.notifyData.message.message;
                        console.log('this.message -> ' +JSON.stringify(this.message));

                        if(data.wasTapped){
                          console.log("Received in background");
                          console.log('background this.message -> ' +JSON.stringify(this.message));
                        } else {
                          console.log("Received in foreground");
                          let confirmAlert = this.alertCtrl.create({
                            title: 'New Notification',
                            message: this.message,
                            buttons: [{
                              text: 'Ignore',
                              role: 'cancel'
                            }, {
                              text: 'View',
                              handler: () => {
                                //TODO: Your logic here
                                console.log("ok clicked");

                              }
                            }]
                          });
                          confirmAlert.present();
                        }

                        // if (data.wasTapped) {
                        //     console.log("Received in background" + JSON.stringify(data));

                        // } else {
                        //     console.log("Received in foreground" + JSON.stringify(data));
                        // };

                    });
                } else if (data.hasOwnProperty('chatroomInfoCallback')) {

                    console.log("data.chatroomInfoCallback", data.chatroomInfoCallback);
                    console.log("data.chatroomInfoCallback.push_channel", data.chatroomInfoCallback.push_channel);

                    if (data.chatroomInfoCallback.hasOwnProperty('action') && data.chatroomInfoCallback.action != "" && data.chatroomInfoCallback.action == "join") {
                      // this.checkFCM(data.chatroomInfoCallback.push_channel);
                        this.fcm.subscribeToTopic(data.chatroomInfoCallback.push_channel);
                        this.fcm.onNotification().subscribe(data => {
                            console.log("onNotification data", data);

                            if (data.wasTapped) {
                                console.log("Received in background" + JSON.stringify(data));

                            } else {
                                console.log("Received in foreground" + JSON.stringify(data));
                            };

                        });
                    }

                }

            } else {
                data = JSON.stringify(data);
                data = JSON.parse(data);
                if (data.hasOwnProperty('userInfoCallback')) {
                    this.fcm.subscribeToTopic(data.userInfoCallback.push_channel);
                    this.fcm.onNotification().subscribe(data => {
                        if (data.wasTapped) {
                            console.log("Received in background" + JSON.stringify(data));

                        } else {
                            console.log("Received in foreground" + JSON.stringify(data));
                        };

                    });
                } else if (data.hasOwnProperty('chatroomInfoCallback')) {

                    if (data.chatroomInfoCallback.hasOwnProperty('action') && data.chatroomInfoCallback.action != "" && data.chatroomInfoCallback.action == "join") {
                        this.fcm.subscribeToTopic(data.chatroomInfoCallback.push_channel);
                        this.fcm.onNotification().subscribe(data => {
                            if (data.wasTapped) {
                                console.log("Received in background" + JSON.stringify(data));

                            } else {
                                console.log("Received in foreground" + JSON.stringify(data));
                            };

                        });
                    }

                }


            }

        });

    }, data => {

    });
}

Как решитьвыше 'fcm' неопределенная ошибка?Пожалуйста, дайте здесь ответ как можно скорее, это будет очень признательно.

1 Ответ

0 голосов
/ 29 января 2019

Пожалуйста, скачайте плагин FCM по ссылке: https://temp.cometchat.com/cordova-plugin-fcm.zip

Когда закончите, замените эту папку на папку плагина FCM внутри вашей директории проекта.Не стесняйтесь обращаться в случае дальнейшей помощи.

PS: эта учетная запись принадлежит команде CometChat.

...