====== Собака-посилака ======
Собака-посилака є штатною підсистемою абстракції та розсилання повідомлень. На даний момент вона підтримує посилку [[ubillingsms|SMS]], [[ubillingtelegram|Telegram]] та [[ubillingemail|Email]].\\
Наразі вона, в своєму первозданному вигляді, з коробки підтримує наступні сервіси посилки SMS:
* TurboSMS SQL (tsms)
* TurboSMS HTTP (tsmshttp)
* SMS-Fly (smsflyapi2)
* SMS-Fly API2 (smsfly)
* RED-Sms (redsms)
* SMSPILOT (smspilot)
* Skyriver (skyriver)
* Lifecell (lifecell)
* AlphaSMS (alphasms)
* Mobipace (mobipace)
* BulkSMS.md (bulksms)
* Notificore (notificoresms)
Якщо вашого улюбленого сервісу немає у цьому списку, завжди на замовлення можна дописати його підтримку. Не складно, не довго, дорого. [[http://ubilling.net.ua/?module=fnpages&pid=ubpay|Звертайтесь]].
====== Ввімкнення ======
Собака-посилака вмикається наступною опцією [[alteriniconf|alter.ini]]:
SENDDOG_ENABLED=1
та працює при відповідному виклику з [[remoteapi|remote API]]:
*/5 * * * * /bin/ubapi "senddog"
====== Налаштування та використання ======
Ви справді думаєте, що для цього потрібна документація? =) \\
{{:senddog-new.png?|}}
У випадку, якщо ви не плануєте використовувати всі підтримувані сервіси одночасно (а очевидно, що це так) ви можете вимкнути всі непотрібні вам, просто перерахувавши налаштовані та використовувані вами сервіси через кому у відповідній опції alter.ini, наприклад, якось так:
SENDDOG_SMS_SERVICES_ENABLED="tsms,tsmshttp"
====== Просунута собака-посилка ======
Суттєво відрізняється від стандартної інтерфейсом.
{{ :adv_sms_screen11.jpg?direct&300 |}}
А також привносить можливість "раутингу" СМС повідомлень шляхом призначення кожному користувачеві бажаного СМС сервісу, котрий використовуватиметься для розсилання.
{{ :adv_sms_screen22.jpg?direct&300 |}}
На даний момент маршрутизація підтримується [[smszilla|SMSZill'ою]] у напрямку "Інтернет", модулем EasySMS та модулем [[reminder|Reminder]].
Також "просунутий собака" окремо реалізує підтримку наступних сервісів
* AlphaSms
* LifeCell
* Mobipace
* SkySms
* SmsPilot
* GradwellSms
* SmsClubMobi
* RedSms
* SmsFly
* SmsFly API2
* TurboSms
Відповідальний за розробку цієї реалізації ось [[http://ubilling.net.ua/?module=fnpages&pid=bobrpay|цей мілорд]].
====== Включення просунутої собаки-посилки ======
Просунута собака-посилка вмикається такими опціями [[alteriniconf|alter.ini]]:
SENDDOG_ENABLED=1
SMS_SERVICES_ADVANCED_ENABLED=1
Як бачимо, потрібно включення стандартної собаки-посилаки, оскільки просунута собака-посилка все ж таки базується на ньому трохи більше, ніж повністю, і, відповідно, для обробки черги СМС повідомлень достатньо того ж виклику з [[remoteapi|remote API]], який описаний [[senddog#Ввімкнення|парою абзаців вище]].
Також існує необов'язкова опція
SMS_SERVICES_BINDINGS_CACHE_LIFETIME=1800
яка визначає тайм-аут для оновлення кешу зв'язків (так-так, йдеться саме про призначення відданих СМС сервісів для різних сутностей, наприклад інтернет-користувачів, або співробітників (у майбутньому) або ще чого завгодно) просунутої собаки-посилки. За замовчуванням тайм-аут дорівнює 1800 секунд або 30 хвилин.
Основна чудовість просунутої собаки-посилаки (окрім раутингу, звичайно ж) - можливість динамічного додавання СМС сервісів шляхом складання в **/api/vendor/sms_services_APIs** файлів реалізації API СМС сервісу у вигляді PHP класу що наслідує абстрактний клас **SMSServiceApi**. Що означає, що якщо підтримки вашого улюбленого необхідного вам СМС провайдера Ubilling поки немає - додати її тепер стало відносно не складно. \\
Так само це дозволяє додати, наприклад, 2(або 3, або 10) **однакових** СМС сервісів з **різними** альфа-іменами або обліковими даними.
====== Telegram ======
Єдине що слід відмітити - для відсилання за допомогою [[ubillingtelegram|Telegram]] користувацькі Chat ID можна отримати з "контактів бота Telegram" (так, це іконка з лупою). Вони там з'являться, тільки після того, як користувач сам перший що-небудь напише [[https://core.telegram.org/bots|боту]]. Так влаштований захист від спаму в цьому месенджері. Ми вважаємо, що це дуже круто.