如何解决Telegram bot 将用户添加到频道 代码
我正在使用 laravel-notification-channels/telegram 我已经为我的用户实现了欢迎通知,我的机器人发送该消息没有问题,我实现的第二部分是添加这些用户(我发送了欢迎消息)进入我的频道。
PS:
我的机器人是我频道的管理员,有权添加用户。
逻辑
- Telegram 用户可以注册(完成)
- 获取电报用户数据并发送欢迎信息(完成)
- 通过机器人将电报用户添加到我的频道。 (需要帮助)
代码
Note:
我的代码目前只够发送欢迎信息,与将用户添加到频道无关...
public $user;
public $telegram_id;
/**
* Create a new notification instance.
*
* @return void
*/
public function __construct($user,$telegram_id)
{
$this->user = $user;
$this->telegram_id = $telegram_id;
}
public function toTelegram($notifiable)
{
// first message to bot (to recognize the user)
TelegramMessage::create()
->to('MY_BOT_ID');
// then message the user from bot
return TelegramFile::create()
->to($this->telegram_id) // registered user ID on telegram
->content("Hello");
}
// (NEXT) add user to channel
//.....
有什么想法吗?
解决方法
我担心机器人 API 无法做到这一点,因为没有相应的 API 方法(请参阅 Telegram Bot API)。
但是,您可以向用户提供聊天的邀请链接,以便他们加入。您可以使用 exportChatInviteLink method 生成邀请链接,但这不能通过 laravel-notification-channels/telegram
完成。也许您可以通过 API 手动生成链接,将其添加到您的应用程序中,然后将链接发送给用户。
如果您真的希望将用户添加到聊天中,您可以使用 channels.inviteToChannel 上的 client API 方法。 MadelineProto 是一个 PHP Telegram 客户端库,can do that。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。