当新用户加入机器人所在的组时,我使用Telegram机器人webhook接收Update对象。我希望收到更多关于用户的信息,但我得到的只是:
"new_chat_members": [
{
"id": xxxxxxxxx,
"is_bot": false,
"first_name": "xxxxx"
}
]
我知道我可以使用getFullUser APIendpoint,但是我不希望提出额外的请求。有没有办法将用户名包含到接收到的数据中?
如果您< code>bot.send_message(cid,str(m))您将获得该消息的所有信息:
{
'left_chat_member': None,
'migrate_from_chat_id': None,
'content_type': 'new_chat_members',
'date': '1533552871',
'voice': None,
'migrate_to_chat_id': None,
'group_chat_created': None,
'location': None,
'sticker': None,
'new_chat_photo': None,
'forward_from': None,
'channel_chat_created': None,
'video': None,
'pinned_message': None,
'supergroup_chat_created': None,
'chat': {
'id': idGroup,
'title': 'groupTitle',
'first_name': None,
'last_name': None,
'username': None,
'all_members_are_administrators': None,
'type': 'supergroup'
},
'audio': None,
'reply_to_message': None,
'caption': None,
'contact': None,
'document': None,
'entities': None,
'message_id': '688',
'photo': None,
'new_chat_title': None,
'successful_payment': None,
'forward_from_chat': None,
'venue': None,
'forward_date': None,
'invoice': None,
'text': None,
'edit_date': None,
'video_note': None,
'from_user': {
'username': 'username',
'last_name': None,
'first_name': 'userFirstName',
'id': id,
'language_code': 'es'
},
'delete_chat_photo': None,
'new_chat_members': [{
'id': id,
'is_bot': True,
'first_name': 'UserName',
'username': 'newUserName'
}],
'new_chat_member': {
'username': 'username',
'last_name': None,
'first_name': 'firstNameUser',
'id': idUser,
'language_code': None
}
}
我的代码在python3
中。您可以尝试一下并添加有关新用户的更多信息:
@bot.message_handler(func=lambda message: True, content_types=['new_chat_members'])
def command_hi(m):
cid = m.chat.id
cname = m.chat.title
idUser = message.from_user.id
welcome = ""
if (m.new_chat_member.username is None):
nun = m.new_chat_member.first_name
if (m.new_chat_member.last_name is not None):
nun += " "
nun += m.new_chat_member.last_name
else:
welcome= "Welcome to the group"
welcome += str(cname)
welcome += " "
else:
nun = m.new_chat_member.username
welcome= "Welcome to the group "
welcome+= str(cname)
welcome+= " @"
bot.send_message(cid, str(welcome) + str(nun))
我一直在努力通过Smack和Openfire服务器与XMPP聊天。我的问题如下: 每当一个用户向另一个用户发送消息时,该消息就会在另一个用户处正确接收。但是任何回复都不会出现在第一条消息的发件人处。因此,用户1成功地发送给用户2。然后,用户2无法向用户1发送任何回复。另一方面,如果我重新启动并让用户再次登录,则用户2可以发送给用户1,但反之亦然。 我想说的是,只有聊天的发起者才能发送消息,接收者不
我正在构建一个聊天应用程序,并使用 RecyclerView 呈现消息。由于这是一个聊天应用程序,最后的消息应显示在列表的底部。为了实现这一点,我通过以下方式使用LinearManager: 如果对话中有很多信息,它也能很好地工作。但是,如果用户之间只有一两条消息,RecyclerView会将它们显示在屏幕底部,并在它们上方留出空白。 在这种情况下,是否可以在屏幕顶部显示回收器项目?
我正在开发一个1:1的聊天应用程序。在启动应用程序之前,我使用PHP服务器创建私有通道。正确创建通道。 生成用户令牌,并正确创建聊天客户端。我看到用户也是在服务中创建的。 它显示消息“正在连接....”然后在出现错误时停止。 PHP代码:
为此他必须加入由用户A1创建的相同twilio通道,然后才能加载消息。 这就是我被困住的地方。 用户A2如何发现用户A1或任何其他用户是否给他发送了一些消息,并且他还需要知道他需要加入哪个通道来加载发送的消息。 https://github.com/philnash/twilio-chat-kendo-react 更新: 使用这个- 这就是我面临的问题。
我正试图通过电报聊天发送消息。我希望电报设置只能通过官方用户界面完成,因为我希望它可能由最终用户完成。 以下是我所做的电报设置: 我通过获得令牌创建了机器人 我创建了一个通道: 点击"新频道" 通道名称: 点击下一步 选择私人频道 点击保存 添加我的机器人 点击制作管理员 点击保存 打开频道 在频道菜单上,选择“管理频道” 单击讨论中的“添加组” 单击“创建新组” 组名: 单击“创建” 单击“保存
我对python有点陌生,这是我第一次使用套接字,我试图制作一个具有客户端和服务器的应用程序,用户可以在客户端中输入,它将被发送到服务器,然后将其发送给所有其他客户端。我已经将其设置为工作状态,但每当我尝试发送第二条消息时,我总是收到一个错误错误:[Errno 10058]发送或接收数据的请求被禁止,因为套接字已经在之前的关闭调用中关闭了该方向。我如何才能做到这一点? 尝试在启动新套接字或发送新消