Check if phone number is the SIM phone number before ansering
This commit is contained in:
parent
015feedad3
commit
7e141eaf90
@ -20,13 +20,13 @@ module SMSd
|
|||||||
Process.daemon if options[:daemonize]
|
Process.daemon if options[:daemonize]
|
||||||
|
|
||||||
loop do
|
loop do
|
||||||
|
sleep 5
|
||||||
break if @terminate
|
break if @terminate
|
||||||
|
|
||||||
modem.messages.each do |sms|
|
modem.messages.each do |sms|
|
||||||
handle_message sms
|
handle_message sms unless check_number(
|
||||||
|
sms.phone_number, sms.type_of_address)
|
||||||
end
|
end
|
||||||
|
|
||||||
sleep 5
|
|
||||||
end
|
end
|
||||||
modem.modem.close
|
modem.modem.close
|
||||||
end
|
end
|
||||||
@ -49,6 +49,21 @@ module SMSd
|
|||||||
Signal.trap('SIGINT', signal_term)
|
Signal.trap('SIGINT', signal_term)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def check_number(number, type_of_address)
|
||||||
|
phone_numbers.each do |phone_number|
|
||||||
|
return true if phone_number[:number] == number &&
|
||||||
|
phone_number[:type_of_address] == type_of_address
|
||||||
|
end unless phone_numbers.nil?
|
||||||
|
|
||||||
|
false
|
||||||
|
end
|
||||||
|
|
||||||
|
def phone_numbers
|
||||||
|
@phone_numbers ||= modem.phone_numbers
|
||||||
|
rescue Biju::AT::CmeError
|
||||||
|
nil
|
||||||
|
end
|
||||||
|
|
||||||
def handle_message(sms)
|
def handle_message(sms)
|
||||||
if sms.valid?
|
if sms.valid?
|
||||||
send_answer(sms)
|
send_answer(sms)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user