There are two types of keypad menus:
Whenever your Bot sends a message, it can pass along a special keypad with predefined reply options. nandbox apps that receive the message will display your keypad to the user. Tapping any of the buttons will send the respective command. This way you can drastically simplify user interaction with your Bot.
There are times when you would prefer to do things directly within the chat, such as when the user is changing settings, choosing from a selection (e.g. voting) or flipping through search results. In such cases you can use Inline Keypads that are integrated directly into the messages they belong to.
When callback buttons are used, your Bot can update its existing messages (or just the keyboard) so that the chat remains tidy.
Since Inline Keypad Menus do not send additional messages to the chat, it makes sense to give Bots a way of manipulating existing messages, so that they don’t have to send a new message each time they need to update something. This helps reduce clutter and build more fluid interfaces. All updated and edited messages will be marked with a small edit icon.
Users can interact with chat Bots directly by opening the Bot chat, or indirectly by communicating with a Bot within a group, channel, or App.
Users can interact with your Bot via inline queries straight from the text input field in any chat, by typing the Bot's handle and then a query.
Having received the query, your Bot can return some results. As soon as the user taps one of them, it is sent to the user's currently opened chat. This way, users can request content from your Bot in any of their chats, groups or channels.
Bots are frequently added to groups and/or channels in order to augment communication between human users, e.g. by providing news, notifications from external services or additional search functionality. In order to ensure that the Bot is not receiving messages not intended for it, you can configure a Bot filter.
A Bot running with a filter will not receive all messages that people send to the group. Instead, it will only receive:
- Posted messages (for Channels/App only)
- Replies to the Bot's own messages.
- Service messages (people added or removed from the Group, etc.)
- All or none.
This allows the Bot developer to save on resources, since they won't need to process irrelevant messages.
Bots added as admins to groups, channels or your App have disabled filters by default (i.e. Bot admins always receive all messages unless they have a filter).
nandbox Bots have a deep linking mechanism that allows for passing additional parameters to a menu button to start a chat. The Bot menu button has an optional chat field that, when pressed, will automatically open the chat and initialize the Bot.
Some Bots need extra data from the user to work properly. For example, knowing the user's location helps provide more relevant geo-specific results. The user's phone number can be very useful for integrations with other services, like banks, etc.
Bots can ask a user for their location and phone number using special buttons. Note that both phone number and location request buttons will only work after the user accepts and grants permission for such service.
Updated 6 months ago