Can you have the bot initiate a message? - wit.ai

I am new to wit.ai trying to wrap my head on how the story builder works.
If I wanted to have the bot initiate a conversation instead of the user triggering the start flow by asking a question, is there a way to do that?

This is currently not possible but we will working on it soon. In the meantime, you can simulate to send a user message like "#Init" to trigger the first Bot Answer when you init you conversation.

Related

Telegram Bots: Can I now start a chat or not?

https://core.telegram.org/bots clearly says:
Bots can't initiate conversations with users. A user must either add them to a group or send them a message first.
But if I visit https://telegram.org/blog/login it says
Telegram bots are a powerful communication tool, but until today they couldn't start a conversation. Even if you wanted them to reach out to you, you had to chat them up first.
With the new login widget, moving from interacting with a website to a conversation on Telegram becomes completely frictionless.
So it is somehow possible to start a conversation via the login widget. But how do I do it?
I get a user id. Is there an api endpoint to initiate a chat with the user?
The only way to begin conversing with a Telegram bot is to start the conversation with them yourself. There's no way for the bot to start a conversation with a user themselves.
As you said, telegram clearly says there is no way for bot to start a conversation, the only thing bots can do is sending messages to an old conversation (I mean a user have to start the conversation).

Telegram bots - how can we detect that a user has started typing?

We can get Telegram messages when they are complete and sent via long polling or webhooks, but is there a way to understand when the user has started typing?
I guess this is not a normal case for bots and I dont think there is a straight away method but could we fall back on the Telegram API for messaging apps for that?
Well, actually I found a solution in the current Bot API; inline queries. While they are not intended for this, inline queries send what the user types in to the bot in real-time, so you are alerted as soon as the first characters are typed in.
There is a way in Telegram Core API, named: updateUserTyping.
But there is not any way in Telegram Bot API yet (until today: 2016-10-17).
If you type or send a file to the bot during these processes you do not get any message from Telegram in your webhook, but it's possible they'll add a new feature to detect user typing in future Bot API updates.

LUIS attach to slack

I am writing to you because I truly don't know what else I can do. When I try to select a channel after I checked "Fullfillment" the Action dropdown list remains empty, all there is to see is "Select Action ..." --> no Channel and I don't know how to get them.
As I saw earlier "If you want to try the channels, click this button to add our Action Binding bot to your Slack team" I thought this had to do with me not having done that but after I created a Slack account and added the Action Binding bot Nothing changed !
I though that maybe I was supposed to register to some channels on Slack but I don't why that'd be the reason plus I can't find the public Channels.
So I am stuck there, please can you help me so I can use those channels ?
1.Log in to Slack and create a Slack Application for your bot https://api.slack.com/applications/new
2.Create application and set redirect URI
3.Create a Slack Bot
4.Add Interactive Messages (optional)
5.Configure Interactive Messages (optional)
6.Gather your Credentials https://slack.botframework.com/Content/StepAuth.png
7.Submit your Credentials
LUIS no longer supported directly attach to slack now, but MS bot still support this function . Therefore, you need to register a bot, and then the right side of the page, click the channels slack ---- add button, it will show the detailed steps

How to know if user has seen a message sent by my bot in Telegram?

I'm developing a Telegram bot, and I want to know whether a user, that has started a private chat with my bot, has seen a certain message sent by bot, and to know when has he seen it.
Is it possible to do so?
Thank you very much.
That's currently not possible.
I'm using this solution.
Create a channel specially for your bot
Let your robot send message from this channel to users, you can use forward method.
Now you can see how many users have seen your message
Telegram Bot API has limit functionality. There is absolutely no way to get message view count at the time of this comment.
Usually TDLib can be used instead of Telegram Bot. It is Telegram client library. You can use it directly or make it as services for BOT to call.
For example. use TdApi.GetMessage to get the message, and the returned message has field of interactionInfo which contains forwardCount or viewCount.
perhaps this answer help you :
in the end of your message place
link example : yoursite.com\checkvisit.php?id=1234
when user open message link automatic run for telegram ...
you can understand message was read
you must in checkvisit.php set to check db if id exist and not read set it to read
then id in db remove or disable
but this method simple - telegram must add 1 parameter to return this
sorry my english not good
it is not possible yet , you might want to search for Madeline bot

hangout API event on exit

I created a Hangout API that works to send invites to certain users from my server by sending an ajax request from my app with hangout url etc.
For now I need hangout event on exit so that I can make another callback to my server indicating that particular hangout has been closed.
I know it sounds odd. I looked around on https://developers.google.com/+/hangouts/api/gapi.hangout but didn't get any such events.
Can I tweak it in some other way to get a notification on exit?
I think this was already answered on the Google forums. The short answer is no there is currently not an event to detect the exit of the Hangout.
You could have your app send a periodic heartbeat to your server and once you detect a timeout then you can conclude the hangout stopped.
Another approach might be to implement an onbeforeunload handler within your hangout app and use that to send a Ajax call back to your server each time a participant leaves or just when the final participant leaves. You can get the participant count from the API and might also be able to use the participantChanged event. Not sure if participantChanged event will fire if the last user exits the hangout by closing the window, that could be a route to explore too.
+1 what Brett said for the heartbeat. I would also optimize by only starting the heartbeat when there is one participant. It would be rare that everyone exists the hangout at the exact same time.
Darn solar flares!