Swif: kill receiver after present











up vote
0
down vote

favorite












I use below code for receiver in ViewControllerChat :



func chatDidReceive(_ message: QBChatMessage) {
print("REC")
}


If i go to go ViewControllerChat from ViewControllerHome and i receive chat, print once REC for me



If i go to go from ViewControllerChat to ViewControllerHome by below code and back to ViewControllerChat and i receive chat, print twice REC for me :



let goController: UIViewController mainStoryboard.instantiateViewController(withIdentifier: "ViewControllerHome")
self.present(goController, animated: true, completion: nil)


This is my plan :



1- From home i go to chat



2- In chat i receive once REC



3- I go to home by present



4- I back to chat from home and receive twice REC



If I open several times chat, i get several times REC



But i want after present ViewControllerChat, my chatDidReceive killing!










share|improve this question






















  • Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
    – DionizB
    Nov 19 at 11:57










  • @DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
    – soltan world
    Nov 19 at 12:08










  • I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
    – DionizB
    Nov 19 at 12:55










  • @DionizB how i can check assigned?
    – soltan world
    Nov 19 at 13:12










  • Share how did you add your delegate = self and I will explain you properly
    – DionizB
    Nov 19 at 13:13















up vote
0
down vote

favorite












I use below code for receiver in ViewControllerChat :



func chatDidReceive(_ message: QBChatMessage) {
print("REC")
}


If i go to go ViewControllerChat from ViewControllerHome and i receive chat, print once REC for me



If i go to go from ViewControllerChat to ViewControllerHome by below code and back to ViewControllerChat and i receive chat, print twice REC for me :



let goController: UIViewController mainStoryboard.instantiateViewController(withIdentifier: "ViewControllerHome")
self.present(goController, animated: true, completion: nil)


This is my plan :



1- From home i go to chat



2- In chat i receive once REC



3- I go to home by present



4- I back to chat from home and receive twice REC



If I open several times chat, i get several times REC



But i want after present ViewControllerChat, my chatDidReceive killing!










share|improve this question






















  • Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
    – DionizB
    Nov 19 at 11:57










  • @DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
    – soltan world
    Nov 19 at 12:08










  • I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
    – DionizB
    Nov 19 at 12:55










  • @DionizB how i can check assigned?
    – soltan world
    Nov 19 at 13:12










  • Share how did you add your delegate = self and I will explain you properly
    – DionizB
    Nov 19 at 13:13













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I use below code for receiver in ViewControllerChat :



func chatDidReceive(_ message: QBChatMessage) {
print("REC")
}


If i go to go ViewControllerChat from ViewControllerHome and i receive chat, print once REC for me



If i go to go from ViewControllerChat to ViewControllerHome by below code and back to ViewControllerChat and i receive chat, print twice REC for me :



let goController: UIViewController mainStoryboard.instantiateViewController(withIdentifier: "ViewControllerHome")
self.present(goController, animated: true, completion: nil)


This is my plan :



1- From home i go to chat



2- In chat i receive once REC



3- I go to home by present



4- I back to chat from home and receive twice REC



If I open several times chat, i get several times REC



But i want after present ViewControllerChat, my chatDidReceive killing!










share|improve this question













I use below code for receiver in ViewControllerChat :



func chatDidReceive(_ message: QBChatMessage) {
print("REC")
}


If i go to go ViewControllerChat from ViewControllerHome and i receive chat, print once REC for me



If i go to go from ViewControllerChat to ViewControllerHome by below code and back to ViewControllerChat and i receive chat, print twice REC for me :



let goController: UIViewController mainStoryboard.instantiateViewController(withIdentifier: "ViewControllerHome")
self.present(goController, animated: true, completion: nil)


This is my plan :



1- From home i go to chat



2- In chat i receive once REC



3- I go to home by present



4- I back to chat from home and receive twice REC



If I open several times chat, i get several times REC



But i want after present ViewControllerChat, my chatDidReceive killing!







swift quickblox receiver






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 19 at 11:22









soltan world

63




63












  • Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
    – DionizB
    Nov 19 at 11:57










  • @DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
    – soltan world
    Nov 19 at 12:08










  • I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
    – DionizB
    Nov 19 at 12:55










  • @DionizB how i can check assigned?
    – soltan world
    Nov 19 at 13:12










  • Share how did you add your delegate = self and I will explain you properly
    – DionizB
    Nov 19 at 13:13


















  • Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
    – DionizB
    Nov 19 at 11:57










  • @DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
    – soltan world
    Nov 19 at 12:08










  • I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
    – DionizB
    Nov 19 at 12:55










  • @DionizB how i can check assigned?
    – soltan world
    Nov 19 at 13:12










  • Share how did you add your delegate = self and I will explain you properly
    – DionizB
    Nov 19 at 13:13
















Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
– DionizB
Nov 19 at 11:57




Can you show how you're calling chatDidReceive or how are you initiliazing QBChatMessage?
– DionizB
Nov 19 at 11:57












@DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
– soltan world
Nov 19 at 12:08




@DionizB i only delegated QBChatDelegate, QBRTCClientDelegate
– soltan world
Nov 19 at 12:08












I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
– DionizB
Nov 19 at 12:55




I think you need to check if you assigned the delegate to QBChatDelegate, and only if delegate is not assigned then set delegate to it
– DionizB
Nov 19 at 12:55












@DionizB how i can check assigned?
– soltan world
Nov 19 at 13:12




@DionizB how i can check assigned?
– soltan world
Nov 19 at 13:12












Share how did you add your delegate = self and I will explain you properly
– DionizB
Nov 19 at 13:13




Share how did you add your delegate = self and I will explain you properly
– DionizB
Nov 19 at 13:13












1 Answer
1






active

oldest

votes

















up vote
0
down vote



accepted










When trying to dismiss ViewControllerChat try to remove delegates:
QBRTCClient.instance().removeDelegates



Since the cause of receiving multiple times the same message should be the way you assign delegates in every ViewControllerChat load. Maybe creating a specified service for implementing this would be better.






share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














     

    draft saved


    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53373573%2fswif-kill-receiver-after-present%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote



    accepted










    When trying to dismiss ViewControllerChat try to remove delegates:
    QBRTCClient.instance().removeDelegates



    Since the cause of receiving multiple times the same message should be the way you assign delegates in every ViewControllerChat load. Maybe creating a specified service for implementing this would be better.






    share|improve this answer

























      up vote
      0
      down vote



      accepted










      When trying to dismiss ViewControllerChat try to remove delegates:
      QBRTCClient.instance().removeDelegates



      Since the cause of receiving multiple times the same message should be the way you assign delegates in every ViewControllerChat load. Maybe creating a specified service for implementing this would be better.






      share|improve this answer























        up vote
        0
        down vote



        accepted







        up vote
        0
        down vote



        accepted






        When trying to dismiss ViewControllerChat try to remove delegates:
        QBRTCClient.instance().removeDelegates



        Since the cause of receiving multiple times the same message should be the way you assign delegates in every ViewControllerChat load. Maybe creating a specified service for implementing this would be better.






        share|improve this answer












        When trying to dismiss ViewControllerChat try to remove delegates:
        QBRTCClient.instance().removeDelegates



        Since the cause of receiving multiple times the same message should be the way you assign delegates in every ViewControllerChat load. Maybe creating a specified service for implementing this would be better.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 19 at 13:46









        DionizB

        8091313




        8091313






























             

            draft saved


            draft discarded



















































             


            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53373573%2fswif-kill-receiver-after-present%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            404 Error Contact Form 7 ajax form submitting

            How to know if a Active Directory user can login interactively

            TypeError: fit_transform() missing 1 required positional argument: 'X'