Merge pull request #2586 from PopcornPanda/fix-2544
Fix: Allow long sms in PromoSMS
This commit is contained in:
		
						commit
						e675316635
					
				
					 4 changed files with 17 additions and 2 deletions
				
			
		|  | @ -8,6 +8,14 @@ class PromoSMS extends NotificationProvider { | |||
|     async send(notification, msg, monitorJSON = null, heartbeatJSON = null) { | ||||
|         let okMsg = "Sent Successfully."; | ||||
| 
 | ||||
|         if (notification.promosmsAllowLongSMS === undefined) { | ||||
|             notification.promosmsAllowLongSMS = false; | ||||
|         } | ||||
| 
 | ||||
|         //TODO: Add option for enabling special characters. It will decrese message max length from 160 to 70 chars.
 | ||||
|         //Lets remove non ascii char
 | ||||
|         let cleanMsg = msg.replace(/[^\x00-\x7F]/g, ""); | ||||
| 
 | ||||
|         try { | ||||
|             let config = { | ||||
|                 headers: { | ||||
|  | @ -18,8 +26,9 @@ class PromoSMS extends NotificationProvider { | |||
|             }; | ||||
|             let data = { | ||||
|                 "recipients": [ notification.promosmsPhoneNumber ], | ||||
|                 //Lets remove non ascii char
 | ||||
|                 "text": msg.replace(/[^\x00-\x7F]/g, ""), | ||||
|                 //Trim message to maximum length of 1 SMS or 4 if we allowed long messages
 | ||||
|                 "text": notification.promosmsAllowLongSMS ? cleanMsg.substring(0, 639) : cleanMsg.substring(0, 159), | ||||
|                 "long-sms": notification.promosmsAllowLongSMS, | ||||
|                 "type": Number(notification.promosmsSMSType), | ||||
|                 "sender": notification.promosmsSenderName | ||||
|             }; | ||||
|  |  | |||
|  | @ -26,6 +26,10 @@ | |||
|         <label for="promosms-sender-name" class="form-label">{{ $t("promosmsSMSSender") }}</label> | ||||
|         <input id="promosms-sender-name" v-model="$parent.notification.promosmsSenderName" type="text" minlength="3" maxlength="11" class="form-control"> | ||||
|     </div> | ||||
|     <div class="form-check form-switch"> | ||||
|         <input id="promosms-allow-long" v-model="$parent.notification.promosmsAllowLongSMS" type="checkbox" class="form-check-input"> | ||||
|         <label for="promosms-allow-long" class="form-label">{{ $t("promosmsAllowLongSMS") }}</label> | ||||
|     </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
|  |  | |||
|  | @ -320,6 +320,7 @@ export default { | |||
|     promosmsTypeSpeed: "SMS SPEED - Highest priority in system. Very quick and reliable but costly (about twice of SMS FULL price).", | ||||
|     promosmsPhoneNumber: "Phone number (for Polish recipient You can skip area codes)", | ||||
|     promosmsSMSSender: "SMS Sender Name : Pre-registred name or one of defaults: InfoSMS, SMS Info, MaxSMS, INFO, SMS", | ||||
|     promosmsAllowLongSMS: "Allow long SMS", | ||||
|     "Feishu WebHookUrl": "Feishu WebHookURL", | ||||
|     matrixHomeserverURL: "Homeserver URL (with http(s):// and optionally port)", | ||||
|     "Internal Room Id": "Internal Room ID", | ||||
|  |  | |||
|  | @ -284,6 +284,7 @@ export default { | |||
|     promosmsTypeSpeed: "SMS SPEED - wysyłka priorytetowa, ma wszystkie zalety SMS FULL", | ||||
|     promosmsPhoneNumber: "Numer odbiorcy", | ||||
|     promosmsSMSSender: "Nadawca SMS (wcześniej zatwierdzone nazwy z panelu PromoSMS)", | ||||
|     promosmsAllowLongSMS: "Zezwól na długie SMSy", | ||||
|     "Primary Base URL": "Główny URL", | ||||
|     "Push URL": "Push URL", | ||||
|     needPushEvery: "Powinieneś wywoływać ten URL co {0} sekund", | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue