Як запланувати повідомлення в WhatsApp за допомогою C# (.NET): Легкий посібник

pic

Є два способи запланувати доставку повідомлення на пізніший час і/або день: вказати точний день і час, коли ви хочете, щоб воно було надіслане, або вказати, на скільки хвилин, годин чи днів ви хочете відкласти доставку.

Якщо ви хочете надсилати повідомлення з коду, ви можете використовувати будь-яку мову програмування для виконання HTTPS API запитів. Нижче наведено тестувальник API в реальному часі з готовими прикладами коду на різних мовах програмування.

Вимоги

  • Наявність WhatsApp номера, вже прив'язаного до платформи і в мережі.
  • Номер телефону отримувача з міжнародним префіксом у форматі E164. Приклад: +393517224449. Ви можете перевірити номер телефону тут.

API ендпоінт

В цьому підручнику ми будемо використовувати наступний API ендпоінт:

Підготовка запиту

Цільова URL-адреса API (POST)

https://api.wassenger.com/v1/messages

Необхідні HTTPS заголовки

Content-Type: application/json  
Token: ENTER API KEY HERE

Надіслати повідомлення на конкретну дату в форматі ISO8601

Приклад тіла запиту у форматі JSON

// Цей код вимагає встановлення пакету RestSharp.  
// Документація: https://restsharp.dev  
// Встановлення: https://www.nuget.org/packages/RestSharp  

var client = new RestClient("https://api.wassenger.com/v1/messages");  
var request = new RestRequest(Method.POST);  
request.AddHeader("Content-Type", "application/json");  
request.AddHeader("Token", "API TOKEN GOES HERE");  
request.AddParameter("application/json", "{\"phone\":\"+12345678909\",\"message\":\"Це заплановане повідомлення, яке буде надіслано на номер через 10 хвилин\",\"deliverAt\":\"2025-01-07T12:29:03.131Z\"}", ParameterType.RequestBody);  
IRestResponse response = client.Execute(request);

Ви також можете надсилати заплановані повідомлення в груповий чат:

// Цей код вимагає встановлення пакету RestSharp.  
// Документація: https://restsharp.dev  
// Встановлення: https://www.nuget.org/packages/RestSharp  

var client = new RestClient("https://api.wassenger.com/v1/messages");  
var request = new RestRequest(Method.POST);  
request.AddHeader("Content-Type", "application/json");  
request.AddHeader("Token", "API TOKEN GOES HERE");  
request.AddParameter("application/json", "{\"group\":\"${@g.us">group_id}@g.us\",\"message\":\"Це заплановане повідомлення, яке буде надіслано завтра в груповий чат. Формат дати ґрунтується на ISO 8601 з за умовчанням часового поясу UTC\",\"deliverAt\":\"2025-01-08T12:19:03.131Z\"}", ParameterType.RequestBody);  
IRestResponse response = client.Execute(request);

Відкласти доставку повідомлення на хвилини, години або дні

Приклад тіла запиту у форматі JSON

Коректні значення: 1m = через 1 хвилину, 2h = через 2 години, 15d = через 15 днів.

Значення повинні бути цілими числами, тому якщо ви хочете запланувати повідомлення на 1,5 години, наприклад, ви повинні вказати 90m = через 90 хвилин

// Цей код вимагає встановлення пакету RestSharp.

// Документація: https://restsharp.dev  
// Встановлення: https://www.nuget.org/packages/RestSharp  

var client = new RestClient("https://api.wassenger.com/v1/messages");  
var request = new RestRequest(Method.POST);  
request.AddHeader("Content-Type", "application/json");  
request.AddHeader("Token", "API TOKEN GOES HERE");  
request.AddParameter("application/json", "{\"phone\":\"+12345678909\",\"message\":\"Це заплановане повідомлення, яке буде надіслано на номер через 10 хвилин\",\"delayTo\":\"8h"}", ParameterType.RequestBody);  
IRestResponse response = client.Execute(request);

Альтернативно, ви можете відкласти доставку повідомлення на задану кількість секунд:

// Цей код вимагає встановлення пакету RestSharp.  
// Документація: https://restsharp.dev  
// Встановлення: https://www.nuget.org/packages/RestSharp  

var client = new RestClient("https://api.wassenger.com/v1/messages");  
var request = new RestRequest(Method.POST);  
request.AddHeader("Content-Type", "application/json");  
request.AddHeader("Token", "API TOKEN GOES HERE");  
request.AddParameter("application/json", "{\"phone\":\"+12345678909\",\"message\":\"Це заплановане повідомлення, яке буде надіслано на номер через 10 хвилин\",\"delayTo\":\"180"}", ParameterType.RequestBody);  
IRestResponse response = client.Execute(request);

Тестування API в реальному часі

Тепер ви можете грати, налагоджувати і тестувати API безпосередньо з вашого браузера, досліджувати і пробувати інші приклади API, а також отримувати кодові фрагменти, готові до використання, на 15+ різних мовах програмування 😎

pic

Спробуйте тестувальник API від Wassenger в реальному часі

Є питання? Ознайомтесь з найпоширенішими запитаннями нижче.

Найпоширеніші запитання

Як надсилати повідомлення на кілька номерів телефонів?

Вам просто потрібно надіслати кілька API запитів, по одному для кожного номера телефону.

Наприклад, якщо ви хочете надіслати повідомлення на 10 номерів, вам потрібно надіслати 10 незалежних HTTPS запитів до API.

Немає можливості надіслати кілька повідомлень в одному API запиті.

Які типи повідомлень можна надсилати?

Ви можете надсилати різні типи повідомлень, зокрема текстові, зображення, відео, емодзі, аудіо, GIF-ки, географічні локації та документи через API.

Ознайомтесь з іншими підручниками для більш детальної інформації.

Як перевірити, чи може номер телефону отримувати повідомлення через WhatsApp?

Ви можете перевірити, чи прив'язаний вказаний номер телефону до облікового запису WhatsApp і чи може отримувати повідомлення.

API надає ендпоінт, який може перевірити, чи існує вказаний номер телефону в WhatsApp чи ні.

Єдина вимога — мати принаймні один номер WhatsApp, підключений до платформи у вашому поточному обліковому записі.

Для отримання детальнішої інформації ознайомтесь з документацією ендпоінту API тут.

Перед тим як перевірити, чи існує номер телефону в WhatsApp, ви також можете перевірити та нормалізувати формат списку телефонних номерів за допомогою ендпоінту API для перевірки номерів. Цей ендпоінт лише перевіряє правильність формату E164, але не перевіряє, чи дійсно номер телефону існує в WhatsApp.

Примітка: Кількість перевірок номерів WhatsApp обмежена щомісячно відповідно до вашого підписного плану.
Будь ласка, ознайомтесь з таблицею цін для отримання більш детальної інформації про обмеження.

Шукаєте більше відповідей? Перегляньте розширені запитання і відповіді (FAQ).

Корисні додаткові ресурси

Документація API

Для більш детальної інформації про ендпоінт API, будь ласка, ознайомтесь з документом, де ви знайдете всі деталі щодо прийнятих параметрів запитів, можливих успішних або помилкових відповідей, а також готові до використання приклади коду на різних мовах програмування.

https://app.wassenger.com/docs/#tag/Messages

Перекладено з: How to Schedule Messages on WhatsApp with C# (.NET): The Easy Guide

Leave a Reply

Your email address will not be published. Required fields are marked *