laravel-messagio-notification-channel

0
4 месяца назад
4 месяца назад
4 месяца назад
год назад
4 месяца назад
README.md

laravel-messagio-notification-channel

Установка

Подготовка composer.json

Обновление зависимостей

Публикация конфига

Настройки окружения:

Общие

  • MESSAGIO_HOST
  • MESSAGIO_API_KEY
  • MESSAGIO_TTL
  • MESSAGIO_CALLBACK_URL - Название раута для принятия колбеков. Например: messagio.notification

Отправители

  • MESSAGIO_SENDER_BASE_NAME - Будет подставлен для любого драйвера, если для целевого драйвера не указан отправитель
  • MESSAGIO_SENDER_VIBER_NAME
  • MESSAGIO_SENDER_SMS_NAME
  • MESSAGIO_SENDER_FLASHCALL_NAME
  • MESSAGIO_SENDER_WHATSAPP_NAME
  • MESSAGIO_SENDER_VK_NAME
  • MESSAGIO_SENDER_MOBILEID_NAME
  • MESSAGIO_SENDER_TELEGRAM_NAME

Guzzle

  • MESSAGIO_HTTP_CLIENT_TIMEOUT
  • MESSAGIO_HTTP_CLIENT_CONNECTION_TIMEOUT
  • MESSAGIO_HTTP_CLIENT_DEBUG

Обязательные настройки окружения

  • MESSAGIO_HOST
  • MESSAGIO_API_KEY
  • MESSAGIO_CALLBACK_URL
  • MESSAGIO_SENDER_BASE_NAME - Либо отправитель целевого драйвера

Пример нотификации

Подготовка модели

Убедитесь, что метод getPhoneNumberForMessagio соответствует вашей логике. Если это не так, то переопределите этот метод в своей модели.

Если требуется изменить

external_id
(придет обратно в вебхуке Статус доставки сообщения), то переопределяем метод
public function getExternalIdForMessagio();

Если требуется изменить логику получения номера телефона, то переопределяем метод

public function getPhoneNumberForMessagio(Notification $notification): array;
. ВАЖНО! Ознакомьтесь со структурой возвращаемых данных.

Маршруты

Статус доставки сообщения

Вы можете переопределить маршрут указав его название в параметре конфига MESSAGIO_CALLBACK_URL

Name:

messagio.status

URL:

/api/messagio/status

Method:

POST

Контроллер дергает событие

GLike35\LaravelMessagioNotificationChanel\Events\MessagioChangeMessageStatusEvent
и передает в него данные запроса. С данными запроса можно ознакомится в официальной документации