Is it possible to add custom emojis? - getstream-io

If I wanted to use custom emoticons from https://slackmojis.com/
Does the getstream client (ios, android, web) allow adding these custom emojis?
I don't see any docs for emoticons https://getstream.io/chat/docs/message_input_view/?language=js&q=emo

StreamChat backend stores reactions as strings and allows users to create their own reaction types. Backend only sends these reaction types as strings and does not send/store any associated image/emoji for reactions (but you can achieve this via custom extra data if you need). Frontend SDKs parse these reactions and render them with default values (emojis).
You can definitely add your own reaction type, as outlined in here.
In iOS SDK, you can override defaultEmojiReactionTypes property in your ChatViewController subclass to provide an emoji for your reaction type. Currently, only default emojis as reactions are supported. It's in our roadmap to support any vector graphic as reactions.

Related

How to get the Group chat added member list from ChatBot in msteams

how to collect all the group chat members from the chat bot using MSTeams?
You can use the GetPagedMembers capability for this - see the docs from Microsoft here: https://learn.microsoft.com/en-us/microsoftteams/platform/bots/how-to/get-teams-context?tabs=dotnet (switch to your language of choice in the samples blocks).
Note that, using this approach, you can only do this when the user is actually interacting with the bot (e.g. posting a message) because you need the context. If that's a problem let me know and I will send additional info.
Here are the two ways that can work for you
Using graph - List members of a chat. Refer this sample.
Get conversation member. (you are already aware about this as I can see.)

How to handle Dialogflow list response

I am developing an app for Google Assistant using Dialogflow (using Dialogflow online interface, without any external server).
I have a list of products. Each product has an intent which is trained with its product name.
For example if I say "Product 1" the assistant will show me some information about "Product 1".
I also made an intent which lists all the products you can browse. As a response it shows a Google Assistant "List" which displays the names of all the items.
But when I click one of the items, it will type its name("Product 1") but the item name is not recognized and I got the fallback intent.
I though lists could work like suggestion chips but it looks like answers are interpreted differently.
By looking for examples I could only find examples using Dialogflow API from code (https://actions-on-google.github.io/actions-on-google-nodejs/classes/conversation_helper.list.html), and it seems that list answers are handled with a special type of intent.
Is there a way to handle list response directly from Dialogflow online interface ?
It does not handle the List or Carousel interfaces the same way it handles the suggestion chips. As you note - they trigger a special Event, which you're expected to create an Intent for.
There are a number of reasons for this, but one good one is that these tend to be fairly dynamic (they're meant to represent things like search results), so having to manage these with a Session Entity might be more difficult.
You can use the Dialogflow Inline Editor to handle them. This is essentially the same as using a fulfillment server - however Dialogflow handles most of the server management for you.

How to use custom payload in dialogflow to create quick replies on web integration

I am currently trying to add functionality to my chatbot by allowing it to have quick replies (buttons for the user to click on) when certain questions are raised by the user. However, the implementation on web is not as straightforward as FB messenger/telegram where quick replies can just be keyed in.
After some research it seems like using the custom payload option when selecting a response on dialogflow seems to be the only viable option but I have no idea on the type of code/ format that should be input.

Chatbase group by locale

I'm currently developing a simple messenger bot, which supports multiple languages.
Is it possible in chatbase to group conversations by user locale? Can I somehow include the locale in message_received request?
Is it OK to append the locale to the chatbase_fields.version ?
We plan to add arbitrary key:value pairs to the api when we release our redesigned backend in the coming months. For now, there are a few solutions for separating your bot's messages.
You can create a separate bot for each locale, and send messages to each respective bot.
You can use the version field of the api to denote the locale and filter your metrics accordingly.

Telegram Bot Event When Users Join To Channel

After create telegram bot, access and admin this bot to channel. how to get channel members list or event when users join to this channel?
Pretty disappointed with the current answers, so I'll leave an updated (as of February 2018) answer that explains how to do this with the Telegram API itself, as well as with the framework I am using, Telegraf for Node.
The Telegram API is both very powerful, and pretty simple as far as API's go. If you are using the polling method of getting updates, and not websockets which are a whole other issue, checking if someone new has been added to a group or channel is very easy.
The API method getUpdates returns an array of Update objects, which contain all of the possible information you could want including any messages sent, inline queries, and new chat members. To get any new chat members you simply need to access update.message.new_chat_members which will contain an array of new users. For reference you can look in the API documentation here.
To fetch the update objects in browser, or with curl, all you have to do is send a GET or POST request to https://api.telegram.org/botYOUR-BOT-TOKEN/getUpdates. Then just look for messages->new_chat_members.
If you are using the Telegraf bot framework with NodeJs you can use the bot.on method with the event new_chat_members.
Example:
bot.on('new_chat_members', (ctx) => console.log(ctx.message.new_chat_members))
I know this was asked a while ago, but I hope this helps other people searching.
From docs:
new_chat_members New members that were added to the group or supergroup and information about them (the bot itself may be one of these members)
So i think you can't.
To get updates on users join group or channel you must correctly setup webhook for your bot. This update type is disabled by default. See https://core.telegram.org/bots/api#setwebhook
allowed_updates
A JSON-serialized list of the update types you want your bot to
receive. For example, specify [“message”, “edited_channel_post”,
“callback_query”] to only receive updates of these types. See Update
for a complete list of available update types. Specify an empty list
to receive all update types except chat_member (default). If not
specified, the previous setting will be used.
Please note that this parameter doesn't affect updates created before the call to the getUpdates, so unwanted updates may be received
for a short period of time.
So, the request should look like this:
https://api.telegram.org/<BOT_TOKEN>/setWebhook?url=<WEBHOOK_URL>&allowed_updates=["chat_member"]
Yes! You can use this:
https://api.telegram.org/bot[TOKEN]/promoteChatMember?chat_id=#[channelname]&user_id=[user_id]
if user is joined response is ok, else response is not ok.

Resources