Get URL Referer [BotFramework-WebChat]





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







0















I'm using a directline inside my website and I was wondering if there is anyway to get the URL of the website inside my bot code. Previously, in v3, I was initializing the chat with:



 BotChat.App({
directLine: { secret: "{directline_secret}" },
user: { id: 'You', referrer: window.location.href},
bot: { id: '{bot_id}' },
resize: 'detect'
}, document.getElementById("bot"));


and I was able to get the referrer with this line of code activity.From.Properties["referrer"].ToString(), but in v4 I can't find a way to get the referrer inside the bot.



Can someone help me?
Thanks in advance.










share|improve this question


















  • 1





    To be clear, you are trying to get the URL of the user, correct?

    – Steven Kanberg
    Nov 27 '18 at 1:28











  • Yes I am. You are correct.

    – Hugo Pedrosa
    Nov 27 '18 at 10:32


















0















I'm using a directline inside my website and I was wondering if there is anyway to get the URL of the website inside my bot code. Previously, in v3, I was initializing the chat with:



 BotChat.App({
directLine: { secret: "{directline_secret}" },
user: { id: 'You', referrer: window.location.href},
bot: { id: '{bot_id}' },
resize: 'detect'
}, document.getElementById("bot"));


and I was able to get the referrer with this line of code activity.From.Properties["referrer"].ToString(), but in v4 I can't find a way to get the referrer inside the bot.



Can someone help me?
Thanks in advance.










share|improve this question


















  • 1





    To be clear, you are trying to get the URL of the user, correct?

    – Steven Kanberg
    Nov 27 '18 at 1:28











  • Yes I am. You are correct.

    – Hugo Pedrosa
    Nov 27 '18 at 10:32














0












0








0








I'm using a directline inside my website and I was wondering if there is anyway to get the URL of the website inside my bot code. Previously, in v3, I was initializing the chat with:



 BotChat.App({
directLine: { secret: "{directline_secret}" },
user: { id: 'You', referrer: window.location.href},
bot: { id: '{bot_id}' },
resize: 'detect'
}, document.getElementById("bot"));


and I was able to get the referrer with this line of code activity.From.Properties["referrer"].ToString(), but in v4 I can't find a way to get the referrer inside the bot.



Can someone help me?
Thanks in advance.










share|improve this question














I'm using a directline inside my website and I was wondering if there is anyway to get the URL of the website inside my bot code. Previously, in v3, I was initializing the chat with:



 BotChat.App({
directLine: { secret: "{directline_secret}" },
user: { id: 'You', referrer: window.location.href},
bot: { id: '{bot_id}' },
resize: 'detect'
}, document.getElementById("bot"));


and I was able to get the referrer with this line of code activity.From.Properties["referrer"].ToString(), but in v4 I can't find a way to get the referrer inside the bot.



Can someone help me?
Thanks in advance.







botframework direct-line-botframework






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 22 '18 at 22:55









Hugo PedrosaHugo Pedrosa

282111




282111








  • 1





    To be clear, you are trying to get the URL of the user, correct?

    – Steven Kanberg
    Nov 27 '18 at 1:28











  • Yes I am. You are correct.

    – Hugo Pedrosa
    Nov 27 '18 at 10:32














  • 1





    To be clear, you are trying to get the URL of the user, correct?

    – Steven Kanberg
    Nov 27 '18 at 1:28











  • Yes I am. You are correct.

    – Hugo Pedrosa
    Nov 27 '18 at 10:32








1




1





To be clear, you are trying to get the URL of the user, correct?

– Steven Kanberg
Nov 27 '18 at 1:28





To be clear, you are trying to get the URL of the user, correct?

– Steven Kanberg
Nov 27 '18 at 1:28













Yes I am. You are correct.

– Hugo Pedrosa
Nov 27 '18 at 10:32





Yes I am. You are correct.

– Hugo Pedrosa
Nov 27 '18 at 10:32












1 Answer
1






active

oldest

votes


















0














In v4 the value is part of the turnContext.activity (in Node) or turnContext.Activity (in C#) object. Passing the url value as you have done in your question (i.e., as part of the user object) you would access it like so (Node example):



async onTurn(turnContext) {

if (
turnContext.activity.type === "event" && turnContext.activity.name === "eventName"
) {
this.userProfile.location = turnContext.activity.from.referrer;
await console.log(this.userProfile.location);
}


I included a name as well as specified a type in my BotChat.App post to match this event to in the turnContext.activity:



function testMethod(someValue) {
botConnection
.postActivity({
from: { id: 'me', referrer: window.location.href },
name: 'eventName',
type: 'event',
value: someValue
})
.subscribe(function (id) {
console.log('"eventName" sent');
});
};


In this example, the method is tied to a button being pressed on the page.



Hope of help!






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%2f53438845%2fget-url-referer-botframework-webchat%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














    In v4 the value is part of the turnContext.activity (in Node) or turnContext.Activity (in C#) object. Passing the url value as you have done in your question (i.e., as part of the user object) you would access it like so (Node example):



    async onTurn(turnContext) {

    if (
    turnContext.activity.type === "event" && turnContext.activity.name === "eventName"
    ) {
    this.userProfile.location = turnContext.activity.from.referrer;
    await console.log(this.userProfile.location);
    }


    I included a name as well as specified a type in my BotChat.App post to match this event to in the turnContext.activity:



    function testMethod(someValue) {
    botConnection
    .postActivity({
    from: { id: 'me', referrer: window.location.href },
    name: 'eventName',
    type: 'event',
    value: someValue
    })
    .subscribe(function (id) {
    console.log('"eventName" sent');
    });
    };


    In this example, the method is tied to a button being pressed on the page.



    Hope of help!






    share|improve this answer




























      0














      In v4 the value is part of the turnContext.activity (in Node) or turnContext.Activity (in C#) object. Passing the url value as you have done in your question (i.e., as part of the user object) you would access it like so (Node example):



      async onTurn(turnContext) {

      if (
      turnContext.activity.type === "event" && turnContext.activity.name === "eventName"
      ) {
      this.userProfile.location = turnContext.activity.from.referrer;
      await console.log(this.userProfile.location);
      }


      I included a name as well as specified a type in my BotChat.App post to match this event to in the turnContext.activity:



      function testMethod(someValue) {
      botConnection
      .postActivity({
      from: { id: 'me', referrer: window.location.href },
      name: 'eventName',
      type: 'event',
      value: someValue
      })
      .subscribe(function (id) {
      console.log('"eventName" sent');
      });
      };


      In this example, the method is tied to a button being pressed on the page.



      Hope of help!






      share|improve this answer


























        0












        0








        0







        In v4 the value is part of the turnContext.activity (in Node) or turnContext.Activity (in C#) object. Passing the url value as you have done in your question (i.e., as part of the user object) you would access it like so (Node example):



        async onTurn(turnContext) {

        if (
        turnContext.activity.type === "event" && turnContext.activity.name === "eventName"
        ) {
        this.userProfile.location = turnContext.activity.from.referrer;
        await console.log(this.userProfile.location);
        }


        I included a name as well as specified a type in my BotChat.App post to match this event to in the turnContext.activity:



        function testMethod(someValue) {
        botConnection
        .postActivity({
        from: { id: 'me', referrer: window.location.href },
        name: 'eventName',
        type: 'event',
        value: someValue
        })
        .subscribe(function (id) {
        console.log('"eventName" sent');
        });
        };


        In this example, the method is tied to a button being pressed on the page.



        Hope of help!






        share|improve this answer













        In v4 the value is part of the turnContext.activity (in Node) or turnContext.Activity (in C#) object. Passing the url value as you have done in your question (i.e., as part of the user object) you would access it like so (Node example):



        async onTurn(turnContext) {

        if (
        turnContext.activity.type === "event" && turnContext.activity.name === "eventName"
        ) {
        this.userProfile.location = turnContext.activity.from.referrer;
        await console.log(this.userProfile.location);
        }


        I included a name as well as specified a type in my BotChat.App post to match this event to in the turnContext.activity:



        function testMethod(someValue) {
        botConnection
        .postActivity({
        from: { id: 'me', referrer: window.location.href },
        name: 'eventName',
        type: 'event',
        value: someValue
        })
        .subscribe(function (id) {
        console.log('"eventName" sent');
        });
        };


        In this example, the method is tied to a button being pressed on the page.



        Hope of help!







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jan 1 at 0:03









        Steven KanbergSteven Kanberg

        1,0412720




        1,0412720
































            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.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53438845%2fget-url-referer-botframework-webchat%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

            How to send String Array data to Server using php in android

            Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

            Is anime1.com a legal site for watching anime?