Er det mulig å oppdage når en bruker åpner chat-vinduet på Facebook?

stemmer
1

Jeg prøver å skape en chatbot der for å unngå at brukeren åpne chattevinduet og ikke vite de tilgjengelige alternativene, jeg ønsker å gi noen grunnleggende instruksjoner når brukeren åpner chat-vinduet.

Er det noen trigger tilgjengelig når brukeren åpner en chat-vinduet? Kanskje da jeg kan sjekke, og hvis det ikke er en pågående samtale jeg kunne gi grunnleggende instruksjoner.

Jeg gjorde noen googling og fant ingenting om dette. Er det mulig å gjøre noe som dette, og hvis ikke, er det en måte å redusere dette problemet, og gi brukeren informasjon om de chatbot evner og instruksjoner støttes?

Publisert på 20/02/2017 klokken 20:05
kilden bruker
På andre språk...                            


3 svar

stemmer
2

Jeg tror det sure svaret ikke er det.

Men du kan avskjære IConversationUpdateActivity typen budskap å vite om brukeren har lagt boten til en samtale. I C # prosjekt malen kan du finne en kodeblokk som ber for denne meldingen typen, men gjør ingenting.

Svarte 20/02/2017 kl. 20:50
kilden bruker

stemmer
3

Du kan overvåke for to hendelsestyper: ConversationUpdate og ContactRelationUpdate.

Den første (ConversationUpdate) kalles når en bruker er lagt til eller fjernet fra samtalen. Så, det er et sted hvor du kan introdusere tilgjengelige alternativer. Det vil være hver type ny samtale har startet. Så det kan bli irriterende, kan du legge en sjekk - ikke vise det hvis brukeren har brukt bot for noen tid.

Den andre (ContactRelationUpdate) kalles når en bruker legger til eller fjerner bot til / fra kontaktene. Vanligvis er det kun kalles en gang per brukerhandling.

Her er utdrag fra Bot rammer eksempler:

for node.js

bot.on('conversationUpdate', function (message) {
   // Check for group conversations
    if (message.address.conversation.isGroup) {
        // Send a hello message when bot is added
        if (message.membersAdded) {
            message.membersAdded.forEach(function (identity) {
                if (identity.id === message.address.bot.id) {
                    var reply = new builder.Message()
                            .address(message.address)
                            .text("Hello everyone!");
                    bot.send(reply);
                }
            });
        }

        // Send a goodbye message when bot is removed
        if (message.membersRemoved) {
            message.membersRemoved.forEach(function (identity) {
                if (identity.id === message.address.bot.id) {
                    var reply = new builder.Message()
                        .address(message.address)
                        .text("Goodbye");
                    bot.send(reply);
                }
            });
        }
    }
});

bot.on('contactRelationUpdate', function (message) {
    if (message.action === 'add') {
        var name = message.user ? message.user.name : null;
        var reply = new builder.Message()
                .address(message.address)
                .text("Hello %s... Thanks for adding me. Say 'hello' to see some great demos.", name || 'there');
        bot.send(reply);
    } else {
        // delete their data
    }
});

For C #

private void HandleMessage(Activity message)
{
    if (message.Type == ActivityTypes.ConversationUpdate)
    {
                if (activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id))
                {
                    var connector = new ConnectorClient(new Uri(activity.ServiceUrl));

                    var response = activity.CreateReply();
                    response.Text = "Hi! I am Bot. Here's what you can do...";

                    await connector.Conversations.ReplyToActivityAsync(response);
                }
    }
    else if (message.Type == ActivityTypes.ContactRelationUpdate)
    {
        if (Activity.AsContactRelationUpdateActivity().Action ==                ContactRelationUpdateActionTypes.Add)
        {
                    var connector = new ConnectorClient(new Uri(activity.ServiceUrl));

                    var response = activity.CreateReply();
                    response.Text = "Hi! I am Bot. Thanks for adding me. Here's what you can do...";

        }
    }
    return null;
}
Svarte 21/02/2017 kl. 12:41
kilden bruker

stemmer
5

Facebook tillater ikke roboter til å sette i gang samtalen i motsetning til Skype eller annen plattform. Det er noen triks du kan fortsatt gjøre:

  • Gå på deg Facebook side deretter Innstillinger og deretter Messaging og sjekk "Vis en Messenger Hilsen" som nedenfor, og skriv din hilsen setning. skriv bildebeskrivelse her

Resultatet vil se slik ut:

skriv bildebeskrivelse her

Svarte 21/02/2017 kl. 19:10
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more