Это определенно возможно, и важно отметить, что вы можете даже отправлять из другого процесса / приложения (например, по расписанию из AWS Lamba). Вы можете увидеть образец здесь для этого.
Процесс отправки сообщения - это всего лишь часть истории - вам нужно, чтобы определенная информация уже была сохранена ( например, в вашей базе данных), чтобы узнать, как связаться с нужным пользователем, в групповом чате или в разговоре по каналу, но есть несколько способов получить эту информацию. Самый распространенный - когда ваш бот добавляется в беседу, чтобы получить его из события talkUpdate. Вам понадобится идентификатор разговора, URL-адрес службы, идентификатор клиента и идентификатор приложения вашего бота (то, что вы получаете на портале Azure для своего бота и которое вы уже используете в конфигурации своего приложения, манифесте команд и т. Д. c.). Вы можете узнать больше о топи c здесь и здесь .
Другой вариант, если у вас нет доступа к разговоруUpdate (например, пользователь hasn ' t установил ваше приложение) - это вызвать Graph API для установки вашего приложения. Это возможно сделать только с каналом (на v1 или бета-API) (см. здесь ) или с пользователем (см. здесь ), но только на бета-API и нет (пока?) для группового чата.