diff --git a/scripts/sms-to-email.rsc b/scripts/sms-to-email.rsc new file mode 100644 index 0000000..74e67ba --- /dev/null +++ b/scripts/sms-to-email.rsc @@ -0,0 +1,32 @@ +# SMS to Email + +# Source: https://forum.mikrotik.com/viewtopic.php?f=9&t=61068#p312202 + +# Note: The SMS is removed from the inbox after sent by Email and forwarded +# even if email and forward fail! So, test it often! + +:global adminEmail + +:local smsPhone +:local smsMessage +:local smsTimeStamp + +/tool sms inbox + +:foreach receivedSMS in=[find] do={ + :set smsPhone [get $receivedSMS phone] + :set smsMessage [get $receivedSMS message] + :set smsTimeStamp [get $receivedSMS timestamp] + + :log info "\nSMS Received From: $smsPhone on $smsTimeStamp Message: $smsMessage" + + # Send Email to $adminEmail + :do { + /tool e-mail send to="$adminEmail" body="$smsMessage" \ + subject="SMS from $smsPhone at $smsTimeStamp" + } on-error={ :log error "SMS to Email Failed." } + :delay 3s + + # Let's remove the SMS! + remove $receivedSMS +} diff --git a/scripts/sms-to-sms.rsc b/scripts/sms-to-sms.rsc new file mode 100644 index 0000000..c97d183 --- /dev/null +++ b/scripts/sms-to-sms.rsc @@ -0,0 +1,32 @@ +# SMS to SMS + +# Limitation: It just forwards the SMS. It doesn't forward the senderPhoneNumber or timestamp of received SMS. + +# Source: https://forum.mikrotik.com/viewtopic.php?f=9&t=61068#p312202 + +:global adminPh +:local smsForwardPh $adminPh + +:local smsPhone +:local smsMessage +:local smsTimeStamp + +/tool sms inbox + +:foreach receivedSMS in=[find] do={ + :set smsPhone [get $receivedSMS phone] + :set smsMessage [get $receivedSMS message] + :set smsTimeStamp [get $receivedSMS timestamp] + + :log info "\nSMS Received From: $smsPhone on $smsTimeStamp Message: $smsMessage" + + # Forward the SMS to $smsForwardPh, without $smsPhone and smsTimeStamp + :do { + /tool sms send lte1 phone-number=$smsForwardPh message=$smsMessage + } on-error={ :log error "SMS to SMS Failed." } + :delay 2s + + # Let's NOT remove the SMS! + # Let the other script (SMS to Email) remove it, after sending the message with full details. + # remove $receivedSMS +}