Как создать группу и отправить сообщение#
Импорт#
Maven
<dependency>
<groupId>com.green-api</groupId>
<artifactId>whatsapp-api-client-java</artifactId>
<version>version</version>
</dependency>
Gradle
implementation group: 'com.green-api', name: 'whatsapp-api-client-java', version: 'version'
Примеры#
Как инициализировать объект#
Вы можете сконфигурировать свой bean, воспользоваться application.property или создать инстанс объекта через конструктор.
Через конфигурацию:
@Configuration
public class GreenApiConf {
@Bean
public RestTemplate restTemplate() {
return new RestTemplateBuilder().build();
}
@Bean
public GreenApi greenApi(RestTemplate restTemplate) {
return new GreenApi(
restTemplate,
"https://media.greenapi.com",
"https://api.greenapi.com",
"{{номер вашего инстанса}}",
"{{токен вашего инстанса}}");
}
}
Через application.yml:
Или используйте готовый бин, который создается на основе параметров application.yml. Для этого укажите параметры вашего инстанса в файле application.yml следующим образом:
green-api:
host: https://api.green-api.com
hostMedia: https://media.green-api.com
instanceId: {{номер вашего инстанса}}
token: {{токен вашего инстанса}}
Убедитесь, что у вас есть RestTemplate bean с вашей конфигурацией, например:
@Bean
public RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder){
return restTemplateBuilder.build();
}
И добавьте com.greenapi.client
в базовые пакеты для сканирования с помощью аннотации @ComponentScan
:
@SpringBootApplication
@ComponentScan(basePackages = {"com.greenapi.client", "com.example"})
public class Application {
public static void main(String[] args) {
var context = SpringApplication.run(Application.class, args);
}
}
Через конструктор:
var restTemplate = new RestTemplateBuilder().build();
var greenApi1 = new GreenApi(
restTemplate,
"https://media.green-api.com",
"https://api.green-api.com",
"{{номер вашего инстанса1}}",
"{{токен вашего инстанса1}}");
var greenApi2 = new GreenApi(
restTemplate,
"https://media.greenapi.com",
"https://api.greenapi.com",
"{{номер вашего инстанса2}}",
"{{токен вашего инстанса2}}");
Как создать группу и отправить сообщение#
Ссылка на пример: CreateGroupSendMessageExample.java.
@Log4j2
class CreateGroupSendMessageExample {
private void createGroupAndSendMessage(GreenApi greenApi) {
var groupMembers = new ArrayList<String>();
groupMembers.add("11001234567@c.us");
groupMembers.add("11001234566@c.us");
groupMembers.add("11001234565@c.us");
var group = greenApi.groups.createGroup(
CreateGroupReq.builder()
.groupName("Test Group")
.chatIds(groupMembers)
.build()).getBody();
if (group != null) {
var message = greenApi.sending.sendMessage(
OutgoingMessage.builder()
.chatId(group.getChatId())
.message("hola a todos")
.build()).getBody();
if (message != null) {
log.info("Create group: " + group.isCreated() +
"\nSend message: " + message.getIdMessage());
}
}
}
}
Список примеров#
Описание | Ссылка на пример |
---|---|
Как создать группу и отправить сообщение | SendMessageExample.java |
Как создать группу и отправить сообщение | CreateGroupSendMessageExample.java |
Как отправить файл загруженный с устройства | SendFileByUploadExample.java |
Как отправить файл через ссылку | SendFileByUrlExample.java |
Как отправить файл через uploadFile + SendFileByUrl | UploadFileAndSendByUrlExample.java |
Как отправить опрос | SendPollExample.java |
Как получать входящие уведомления | WebhookExample.java |