diff --git a/.env-example b/.env-example index 13136aa..e139f7d 100644 --- a/.env-example +++ b/.env-example @@ -6,21 +6,31 @@ VONAGE_APPLICATION_PRIVATE_KEY_PATH=private.key TO_NUMBER= VONAGE_NUMBER= -# For Facebook messaging +# Vonage Messages API variables + +## For Messages Sandbox +MESSAGES_SANDBOX_URL= +MESSAGES_SANDBOX_WHATSAPP_NUMBER= +MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER= +MESSAGES_SANDBOX_FB_ID= +MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID= +MESSAGES_SANDBOX_VIBER_SERVICE_ID= + +## For Facebook messaging FB_SENDER_ID= FB_RECIPIENT_ID= -# For Viber messaging +## For Viber messaging VIBER_SERVICE_MESSAGE_ID= -# For WhatsApp messaging +## For WhatsApp messaging WHATSAPP_NUMBER= WHATSAPP_TEMPLATE_NAMESPACE= WHATSAPP_TEMPLATE_NAME= WHATSAPP_AUTH_TEMPLATE_NAME= WHATSAPP_TEMPLATE_REPLACEMENT_TEXT= -# For media messaging (WhatsApp, Messenger, Viber) +## For media messaging (WhatsApp, Messenger, Viber) IMAGE_URL= IMAGE_CAPTION= FILE_URL= diff --git a/messages/sandbox/messenger/send-text.rb b/messages/sandbox/messenger/send-text.rb new file mode 100644 index 0000000..df95ebd --- /dev/null +++ b/messages/sandbox/messenger/send-text.rb @@ -0,0 +1,25 @@ +require 'dotenv/load' +require 'vonage' + +VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID'] +VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH'] +MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL'] +MESSAGES_SANDBOX_FB_ID = ENV['MESSAGES_SANDBOX_FB_ID'] +MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID'] + +client = Vonage::Client.new( + application_id: VONAGE_APPLICATION_ID, + private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH), + api_host: MESSAGES_SANDBOX_URL +) + +message = Vonage::Messaging::Message.messenger( + type: 'text', + message: "This is a Facebook Messenger text message sent using the Messages API via the Messages Sandbox" +) + +client.messaging.send( + from: MESSAGES_SANDBOX_FB_ID, + to: MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID, + **message +) diff --git a/messages/sandbox/viber/send-text.rb b/messages/sandbox/viber/send-text.rb new file mode 100644 index 0000000..65d4bad --- /dev/null +++ b/messages/sandbox/viber/send-text.rb @@ -0,0 +1,25 @@ +require 'dotenv/load' +require 'vonage' + +VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID'] +VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH'] +MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL'] +MESSAGES_SANDBOX_VIBER_SERVICE_ID = ENV['MESSAGES_SANDBOX_VIBER_SERVICE_ID'] +MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER'] + +client = Vonage::Client.new( + application_id: VONAGE_APPLICATION_ID, + private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH), + api_host: MESSAGES_SANDBOX_URL +) + +message = Vonage::Messaging::Message.viber( + type: 'text', + message: "This is a Viber Service Message text message sent using the Messages API via the Messages Sandbox" +) + +client.messaging.send( + from: MESSAGES_SANDBOX_VIBER_SERVICE_ID, + to: MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER, + **message +) diff --git a/messages/sandbox/whatsapp/send-text.rb b/messages/sandbox/whatsapp/send-text.rb new file mode 100644 index 0000000..ae815de --- /dev/null +++ b/messages/sandbox/whatsapp/send-text.rb @@ -0,0 +1,25 @@ +require 'dotenv/load' +require 'vonage' + +VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID'] +VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH'] +MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL'] +MESSAGES_SANDBOX_WHATSAPP_NUMBER = ENV['MESSAGES_SANDBOX_WHATSAPP_NUMBER'] +MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER'] + +client = Vonage::Client.new( + application_id: VONAGE_APPLICATION_ID, + private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH), + api_host: MESSAGES_SANDBOX_URL +) + +message = Vonage::Messaging::Message.whatsapp( + type: 'text', + message: "This is a WhatsApp Message text message sent using the Messages API via the Messages Sandbox" +) + +client.messaging.send( + from: MESSAGES_SANDBOX_WHATSAPP_NUMBER, + to: MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER, + **message +)