Ncloud Sens SMS๋ฅผ Ruby์์ ๋ณด๋ด์ธ์.
If you want to read English document, then click here.
Application's Gemfile์ ์๋ ์ค์ ์ถ๊ฐํ์ธ์:
gem 'sens_sms'
๊ทธ ๋ค์ ์๋ ๋ช ๋ น์ ์คํํ์ธ์:
$ bundle
๋ง์ง๋ง์ผ๋ก generator์ ์คํํ์ธ์:
$ rails generate sens_sms:install
์ฌ๊ธฐ๊น์ง ํ์
จ์ผ๋ฉด, sens_sms configuration ํ์ผ์ YOUR_PROJECT/config/initializers/sens_sms.rb
์์ ๋ณผ ์ ์์ต๋๋ค.
require 'sens_sms'
SensSms::Client.configure do |config|
config.access_key = ENV['NCLOUD_ACCESS_KEY']
config.secret_key = ENV['NCLOUD_SECRET_KEY']
config.service_id = ENV['NCLOUD_SERVICE_ID']
end
Ncloud access key๋ฅผ ์ฌ๊ธฐ์ ์ง์ ์ธํ ํ ์ ์์ต๋๋ค. ํ์ง๋ง ํ๊ฒฝ๋ณ์ ์ฌ์ฉ์ ๊ถ์ฅํ ๊ฒ์. access key ๋ฐ๊ธํ๋ ๋ฐฉ๋ฒ์ ์ฌ๊ธฐ์์ ๋ณผ ์ ์์ต๋๋ค.
gem์ ์ค์นํ์ธ์:
$ gem install sens_sms
plain Ruby ํ๋ก์ ํธ์์ sens_sms gem์ ์ฐ์ค๊ฑฐ๋ผ๋ฉด, rails generator ๊ฐ ํด์ค ๊ฒ์ฒ๋ผ require 'sens_sms'
๊ณผ SensSms::Client.configure
block ์ ํธ์ถํด์ access keys๋ฅผ ๊ผญ ์ธํ
ํ๊ณ , deliver
ํจ์๋ฅผ ์ฐ์ธ์.
# SMS
SensSms::Client.new
.deliver(type: :sms,
from_number: '01012345678',
to_numbers: '01098765432',
message: '์ ์ธ๊ณ์ ์๋ ค์ง ํญ๊ท์ ์ข
๋ฅ๋ 17์ข
ํน์ 18์ข
์ด๋ค.')
# LMS
SensSms::Client.new
.deliver(type: :lms,
from_number: '01012345678',
to_numbers: '01098765432',
title: 'ํญ๊ท',
message: '์ ์ธ๊ณ์ ์๋ ค์ง ํญ๊ท์ ์ข
๋ฅ๋ 17์ข
ํน์ 18์ข
์ด๋ค. (์ ํธ๋ฅธํญ๊ท๊ณผ ํฐ๋ ๊ฐํญ๊ท์ด
์๋ณ๋๋์ง ์๋์ง์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.) ๋ชจ๋ ํญ๊ท ์ข
์ ๊ณ ํฅ์ด ๋จ๋ฐ๊ตฌ์ด๊ธฐ๋ ํ์ง๋ง,
ํต๋
๊ณผ ๋ฌ๋ฆฌ, ๋จ๊ทน๊ณผ ๊ฐ์ด ์ถ์ด ๊ธฐํ์์๋ง ์์ํ์ง๋ ์๋๋ค. ์ค์ ๋ก๋ ๋ช๋ช ์ข
๋ง์ด
๊ทน์ง๋ฐฉ์ ์ฐ๋ค. 3์ข
์ ์ด๋ ์ง๋ฐฉ์ ์ด๋ฉฐ, ๊ทธ ๊ฐ์ด๋ฐ ๊ฐ๋ผํ๊ณ ์ค ์ ๋์ ์ฌ๋ ํ ์ข
์ ๋จน์ด๋ฅผ
์ฐพ๋ค๊ฐ ์ ๋๋ฅผ ๊ฑด๋๊ธฐ๋ ํ๋ค. ๊ฐ์ฅ ํฐ ์ข
์ ํฉ์ ํญ๊ท์ผ๋ก, ๋ค ์๋ผ๋ฉด ํค๊ฐ ์ฝ 1.1๋ฏธํฐ,
๋ฌด๊ฒ๊ฐ ์ฝ 35ํฌ๋ก๊ทธ๋จ ์ด์์ด๋ค. ๊ฐ์ฅ ์์ ์ข
์ ์ ํธ๋ฅธํญ๊ท์ผ๋ก, ํค๋ ์ฝ 40์ผํฐ๋ฏธํฐ์
๋ชธ๋ฌด๊ฒ๊ฐ 1ํฌ๋ก๊ทธ๋จ์ ๋ถ๊ณผํ๋ค. ์ผ๋ฐ์ ์ผ๋ก ํญ๊ท์ ๋ฉ์น๊ฐ ํด์๋ก ์ด์ ์ ๋ณด๊ดํด์
์ถ์ด ์ง๋ฐฉ์ ์ด๊ณ , ์์ ํญ๊ท๋ค์ ์จ๋๋ ์ฌ์ง์ด ์ด๋์์ ๋ฐ๊ฒฌ๋๋ค.')
SensSms::Client.new.deliver
ํจ์๋ฅผ ์๋ argument ๋ค๊ณผ ํจ๊ป ํธ์ถํ๋ฉด ๋ฉ๋๋ค.
from_number
key๋ก Ncloud SENS ์ฝ์์ ๋ฑ๋ก๋ ๋ฐ์ ์ ๋ฒํธ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
to_numbers
key๋ก ์์ ์ ๋ฒํธ๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
to_numbers: ['01012345678', '01009876543']
๋ํ to_numbers
key๋ Array type ์ผ๋ก ์ฌ๋ฌ ๋ฒํธ๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค. (์. numbers: ['01012345678', '01009876543']
)
type
key๋ก ๋ฉ์์ง ํ์
์ ์ ํ ์ ์์ต๋๋ค.
SMS๋ ์ ๋ชฉ์ ์ธ ์ ์๊ณ , 80๋ฐ์ดํธ๋ก ์ ํ๋๋ ์งง์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค.
LMS๋ ์ ๋ชฉ์ ์ธ ์ ์๊ณ , 2,000๋ฐ์ดํธ๋ก ์ ํ๋๋ ๊ธด ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ์ด key๋ optional์ด๋ฉฐ, LMS ๋ฉ์์ง์์ ์ ๋ชฉ์ฉ๋๋ก ์ฐ์ ๋๋ค. ๋ฌผ๋ก SMS ํ์ ์์ ์ธ ์ ์์ง๋ง, ์๋ฌด์ผ๋ ์๊ธฐ์ง ์์ ๊ฒ์ ๋๋ค.
ํ ์คํธ ๋ฉ์์ง์ ๋๋ค.
๋ฒ๊ทธ ๋ฆฌํฌํธ์ ํ๋ฆฌํ์ค๋ ํ์์ ๋๋ค.
The gem is available as open source under the terms of the MIT License.