Tokbox streamCreated being called same number of times client is called












0














I'm calling on a client, one-to-one, multiple times during a session and the streamCreated event gets called on the host. When I hang up, I unsubscribe and the client unpublishes. However, when I call on the client again, the streamCreated event gets called twice on the host's side. I call on the client 3, 4, 5, etc. more times and the streamCreated event fires the same number of times as I have called on the client. For example on the 7th time I call the client, streamCreated gets called 7 times! It seems like I'm not really destroying the streams although streamDestroyed gets called.



On the client side, I was desperate enough to try and unpublish with:



clientSession.unpublish(clientPublisher, handleError);
clientPublisher.stream.destroy();
clientPublisher.destroy();
clientPublisher = null;


On the host side, I've also tried to make sure the subscriber was destroyed:



clientSession.unsubscribe(clientSubscriber);
clientSubscriber.destroy();
clientSubscriber = null;


The problem with this is when I open a video monitor with multiple clients and have each client publish without audio. However, I can still hear the client I called on... like their original stream(s) still exists. What am I doing wrong?










share|improve this question
























  • TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
    – Manik
    Nov 23 '18 at 2:42










  • That is correct, I'm unpublishing both streams. Thanks for checking.
    – Velocedge
    Nov 26 '18 at 15:21
















0














I'm calling on a client, one-to-one, multiple times during a session and the streamCreated event gets called on the host. When I hang up, I unsubscribe and the client unpublishes. However, when I call on the client again, the streamCreated event gets called twice on the host's side. I call on the client 3, 4, 5, etc. more times and the streamCreated event fires the same number of times as I have called on the client. For example on the 7th time I call the client, streamCreated gets called 7 times! It seems like I'm not really destroying the streams although streamDestroyed gets called.



On the client side, I was desperate enough to try and unpublish with:



clientSession.unpublish(clientPublisher, handleError);
clientPublisher.stream.destroy();
clientPublisher.destroy();
clientPublisher = null;


On the host side, I've also tried to make sure the subscriber was destroyed:



clientSession.unsubscribe(clientSubscriber);
clientSubscriber.destroy();
clientSubscriber = null;


The problem with this is when I open a video monitor with multiple clients and have each client publish without audio. However, I can still hear the client I called on... like their original stream(s) still exists. What am I doing wrong?










share|improve this question
























  • TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
    – Manik
    Nov 23 '18 at 2:42










  • That is correct, I'm unpublishing both streams. Thanks for checking.
    – Velocedge
    Nov 26 '18 at 15:21














0












0








0







I'm calling on a client, one-to-one, multiple times during a session and the streamCreated event gets called on the host. When I hang up, I unsubscribe and the client unpublishes. However, when I call on the client again, the streamCreated event gets called twice on the host's side. I call on the client 3, 4, 5, etc. more times and the streamCreated event fires the same number of times as I have called on the client. For example on the 7th time I call the client, streamCreated gets called 7 times! It seems like I'm not really destroying the streams although streamDestroyed gets called.



On the client side, I was desperate enough to try and unpublish with:



clientSession.unpublish(clientPublisher, handleError);
clientPublisher.stream.destroy();
clientPublisher.destroy();
clientPublisher = null;


On the host side, I've also tried to make sure the subscriber was destroyed:



clientSession.unsubscribe(clientSubscriber);
clientSubscriber.destroy();
clientSubscriber = null;


The problem with this is when I open a video monitor with multiple clients and have each client publish without audio. However, I can still hear the client I called on... like their original stream(s) still exists. What am I doing wrong?










share|improve this question















I'm calling on a client, one-to-one, multiple times during a session and the streamCreated event gets called on the host. When I hang up, I unsubscribe and the client unpublishes. However, when I call on the client again, the streamCreated event gets called twice on the host's side. I call on the client 3, 4, 5, etc. more times and the streamCreated event fires the same number of times as I have called on the client. For example on the 7th time I call the client, streamCreated gets called 7 times! It seems like I'm not really destroying the streams although streamDestroyed gets called.



On the client side, I was desperate enough to try and unpublish with:



clientSession.unpublish(clientPublisher, handleError);
clientPublisher.stream.destroy();
clientPublisher.destroy();
clientPublisher = null;


On the host side, I've also tried to make sure the subscriber was destroyed:



clientSession.unsubscribe(clientSubscriber);
clientSubscriber.destroy();
clientSubscriber = null;


The problem with this is when I open a video monitor with multiple clients and have each client publish without audio. However, I can still hear the client I called on... like their original stream(s) still exists. What am I doing wrong?







javascript webrtc opentok tokbox






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 23 '18 at 5:40









Manik

645114




645114










asked Nov 20 '18 at 13:34









VelocedgeVelocedge

16912




16912












  • TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
    – Manik
    Nov 23 '18 at 2:42










  • That is correct, I'm unpublishing both streams. Thanks for checking.
    – Velocedge
    Nov 26 '18 at 15:21


















  • TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
    – Manik
    Nov 23 '18 at 2:42










  • That is correct, I'm unpublishing both streams. Thanks for checking.
    – Velocedge
    Nov 26 '18 at 15:21
















TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
– Manik
Nov 23 '18 at 2:42




TokBox Developer Evangelist here. I understand that you found a solution, but I wanted to confirm that both streams are being destroyed when you "hang-up"? If you only unpublish one stream, the other stream may still be publishing unless you explicitly unpublish the other stream as well.
– Manik
Nov 23 '18 at 2:42












That is correct, I'm unpublishing both streams. Thanks for checking.
– Velocedge
Nov 26 '18 at 15:21




That is correct, I'm unpublishing both streams. Thanks for checking.
– Velocedge
Nov 26 '18 at 15:21












1 Answer
1






active

oldest

votes


















0














Every time I called on the person, I was using:



clientSession.on('streamCreated', function (event) {
clientSubscriber = clientSession.subscribe(event.stream, vid, {
...


So, each time I called on a client, it created a new event handler. To correct the issue, I added the following code when I disconnected from the client.



clientSession.unsubscribe(clientSubscriber);
clientSession.off();


That killed the event handler and everything works properly now.






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',
    autoActivateHeartbeat: false,
    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%2f53394200%2ftokbox-streamcreated-being-called-same-number-of-times-client-is-called%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









    0














    Every time I called on the person, I was using:



    clientSession.on('streamCreated', function (event) {
    clientSubscriber = clientSession.subscribe(event.stream, vid, {
    ...


    So, each time I called on a client, it created a new event handler. To correct the issue, I added the following code when I disconnected from the client.



    clientSession.unsubscribe(clientSubscriber);
    clientSession.off();


    That killed the event handler and everything works properly now.






    share|improve this answer


























      0














      Every time I called on the person, I was using:



      clientSession.on('streamCreated', function (event) {
      clientSubscriber = clientSession.subscribe(event.stream, vid, {
      ...


      So, each time I called on a client, it created a new event handler. To correct the issue, I added the following code when I disconnected from the client.



      clientSession.unsubscribe(clientSubscriber);
      clientSession.off();


      That killed the event handler and everything works properly now.






      share|improve this answer
























        0












        0








        0






        Every time I called on the person, I was using:



        clientSession.on('streamCreated', function (event) {
        clientSubscriber = clientSession.subscribe(event.stream, vid, {
        ...


        So, each time I called on a client, it created a new event handler. To correct the issue, I added the following code when I disconnected from the client.



        clientSession.unsubscribe(clientSubscriber);
        clientSession.off();


        That killed the event handler and everything works properly now.






        share|improve this answer












        Every time I called on the person, I was using:



        clientSession.on('streamCreated', function (event) {
        clientSubscriber = clientSession.subscribe(event.stream, vid, {
        ...


        So, each time I called on a client, it created a new event handler. To correct the issue, I added the following code when I disconnected from the client.



        clientSession.unsubscribe(clientSubscriber);
        clientSession.off();


        That killed the event handler and everything works properly now.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 22 '18 at 12:32









        VelocedgeVelocedge

        16912




        16912






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53394200%2ftokbox-streamcreated-being-called-same-number-of-times-client-is-called%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

            Paul Cézanne

            UIScrollView CustomStickyHeader Resize height generates problems when scroll is too fast

            Angular material date-picker (MatDatepicker) auto completes the date on focus out