Primanje SMS poruka u Ruby on Rails-u

Vodič na ovoj stranici pruža vam priliku da naučite kako možete koristiti Ruby program za dobijanje SMS poruka sa SMS Gateway-a. Ovo se može uraditi korišćenjem HTTP zahteva koji prikupljaju primljene SMS poruke. Vodič sadrži video tutorijal i korak-po-korak uputstvo koje vam pomaže da naučite način na koji možete primati SMS poruke sa Ruby-jem.

Šta je Ruby SMS API?

Ruby Rails SMS API omogućava vam slanje SMS poruka iz vašeg Ruby Rails programa. Ruby SMS API inicira HTTP zahteve i šalje ih ka SMS Gateway-u koji isporučuje poruku primaocu.

Preduslovi Primanje SMS poruka u Ruby Rails-u
  1. Otvorite Notepad aplikaciju
  2. Kopirajte i nalepite primer koda sa ove stranice
  3. Sačuvajte fajl kao ReceiveSMS.rb
  4. Otvorite Ozeki SMS Gateway i izaberite HTTP Server vezu
  5. Otvorite HTML formu HTTP Server veze
  6. Pošaljite neke test poruke
  7. Otvorite Command Prompt
  8. Ukucajte 'ruby ReceiveSMS.rb' u Command Prompt i pritisnite Enter
  9. Ruby Rails prima SMS poruke

Video 1 - Kako primati SMS poruke u Ruby Rails-u (Video tutorijal)

Možete slobodno koristiti Ruby primer SMS koda u svojim projektima, i takođe vam je dozvoljeno da ga modifikujete. Ako želite samo da pokrenete ovaj primer koda da vidite kako radi, samo proverite korak-po-korak uputstvo ispod ili video tutorijal na ovoj stranici da vidite šta je potrebno da izvršite Ruby SMS primer koda na vašem računaru.

require 'net/http'
require 'rexml/document'
include REXML

def DisplayMessages(response)
	xmldoc = Document.new(response)

	xmldoc.elements.each('response/data/message') do |value|
		begin
			sender = value.elements['originator'].text
			text = value.elements['messagedata'].text
			DisplayMessage(sender,text)
		rescue
			puts("Inbox je prazan.")
		end
	end
end

def DisplayMessage(sender, text)
	puts("#{sender}: #{text}")
end

username = "john"
password = "Xc3ffs"
httpUrl = "https://127.0.0.1:9508/"
folder = "inbox";
limit = "3";

sendString = "#{httpUrl}api?action=receivemessage&username="\
			 "#{username}&password="\
			 "#{password}&folder=#{folder}&limit="\
			 "#{limit}&afterdownload=delete"

puts("Slanje http zahteva #{sendString}")

OpenSSL::SSL.send(:remove_const, :VERIFY_PEER)
OpenSSL::SSL.const_set(:VERIFY_PEER, OpenSSL::SSL::VERIFY_NONE)

url = URI(sendString)
response = Net::HTTP.get(url)
puts("HTTP odgovor primljen:")
DisplayMessages(response)
Korak 1 - Otvaranje Notepad-a

U ovom prvom koraku, potrebno je da otvorite aplikaciju za uređivanje teksta koja može da rukuje Ruby fajlovima. U tu svrhu, možete koristiti podrazumevanu Notepad aplikaciju koja se može naći na svim računarima sa Windows operativnim sistemom. Dakle, kao što Slika 1 pokazuje, samo je otvorite sa vašeg desktopa.

otvaranje notepad-a
Slika 1 - Otvaranje Notepad uređivača teksta

Korak 2 - Kopiranje Ruby koda

Zatim, potrebno je da kopirate Ruby primer koda sa ove stranice. Da biste to uradili, samo se pomaknite gore do sekcije sa primerom koda na ovoj stranici i označite ceo primer Ruby koda. Zatim, kao što možete videti na Slici 2, pritisnite Ctrl+C na vašoj tastaturi da kopirate Ruby kod u clipboard.

kopiranje ruby koda
Slika 2 - Kopiranje ruby izvornog koda sa veb stranice

Korak 3 - Lepljenje koda u tekstualni fajl

Nakon što ste kopirali Ruby izvorni kod sa ove stranice, potrebno je da ga smestite u tekstualni dokument. Da biste to uradili, samo idite u Notepad aplikaciju koju ste otvorili ranije, i kao što možete videti na Slici 3, samo pritisnite Ctrl+V na vašoj tastaturi da nalepite ceo Ruby izvorni kod u tekstualni dokument.

lepljenje koda u notepad
Slika 3 - Lepljenje izvornog koda u Notepad

Корак 4 - Сачувајте текст као Ruby фајл

У овом тренутку, имате текстуални фајл који садржи изворни код, али још увек није у исправном, Ruby фајл формату. Notepad може да сачува фајлове у било ком формату, тако да можете лако решити овај проблем. Дакле, изаберите опцију 'Save as' у Notepad-у, и сачувајте фајл са '.rb' екстензијом. Овај поступак је приказан на Слици 4.

save ruby file
Слика 4 - Сачувајте Ruby фајл као ReceiveSMS.rb

Корак 5 - Пошаљите неке тест поруке

Сада је ваш пример кода спреман за покретање, али прво морате да имате неке поруке у вашој инбокс фасцикли. За тестирање, можете користити HTTP Server конекцију да пошаљете неке тест поруке себи и тестирате PHP пример кода. Дакле, отворите SMS Gateway и изаберите HTTP Server конекцију. Овде, отворите HTML форму конекције, и као на Слици 5, пошаљите неке поруке на 'Ozeki' примаоца.

Simulate incoming sms
Слика 5 - Симулирајте неке долазне SMS поруке

Корак 6 - Отворите Command Prompt

Главни корак у водичу је извршавање Ruby програма. Да бисте то урадили, потребно је да отворите Command Prompt на вашем рачунару. Дакле, прво навигајте до фолдера где сте сачували Ruby фајл користећи File Explorer. Овде, као што можете видети на Слици 6, укуцајте 'cmd' у File Explorer, и ако притиснете Enter, Command Prompt ће се отворити на вашем рачунару.

open cmd
Слика 6 - Отворите command prompt

Корак 7 - Извршите Ruby програм

У Command Prompt-у, потребно је да извршите само једну команду да бисте покренули Ruby програм. Дакле, само укуцајте 'ruby *filename*.rb' у Command Prompt и притисните Enter. На овај начин, Ruby пример ће бити извршен, и моћи ћете да видите резултате у конзолном прозору (Слика 7). Овде, можете видети HTTP захтев и одговор на тај захтев који садржи све примљене поруке.

run ruby code
Слика 7 - Покрените Ruby код у command prompt-у