Skip to content

Commit 977d149

Browse files
authored
Adding Messages Sandbox WhatsApp snippet (#104)
* Adding Messages Sandbox examples
1 parent 1e85f18 commit 977d149

File tree

4 files changed

+89
-4
lines changed

4 files changed

+89
-4
lines changed

.env-example

+14-4
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,31 @@ VONAGE_APPLICATION_PRIVATE_KEY_PATH=private.key
66
TO_NUMBER=
77
VONAGE_NUMBER=
88

9-
# For Facebook messaging
9+
# Vonage Messages API variables
10+
11+
## For Messages Sandbox
12+
MESSAGES_SANDBOX_URL=
13+
MESSAGES_SANDBOX_WHATSAPP_NUMBER=
14+
MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER=
15+
MESSAGES_SANDBOX_FB_ID=
16+
MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID=
17+
MESSAGES_SANDBOX_VIBER_SERVICE_ID=
18+
19+
## For Facebook messaging
1020
FB_SENDER_ID=
1121
FB_RECIPIENT_ID=
1222

13-
# For Viber messaging
23+
## For Viber messaging
1424
VIBER_SERVICE_MESSAGE_ID=
1525

16-
# For WhatsApp messaging
26+
## For WhatsApp messaging
1727
WHATSAPP_NUMBER=
1828
WHATSAPP_TEMPLATE_NAMESPACE=
1929
WHATSAPP_TEMPLATE_NAME=
2030
WHATSAPP_AUTH_TEMPLATE_NAME=
2131
WHATSAPP_TEMPLATE_REPLACEMENT_TEXT=
2232

23-
# For media messaging (WhatsApp, Messenger, Viber)
33+
## For media messaging (WhatsApp, Messenger, Viber)
2434
IMAGE_URL=
2535
IMAGE_CAPTION=
2636
FILE_URL=
+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
require 'dotenv/load'
2+
require 'vonage'
3+
4+
VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID']
5+
VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH']
6+
MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL']
7+
MESSAGES_SANDBOX_FB_ID = ENV['MESSAGES_SANDBOX_FB_ID']
8+
MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID']
9+
10+
client = Vonage::Client.new(
11+
application_id: VONAGE_APPLICATION_ID,
12+
private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
13+
api_host: MESSAGES_SANDBOX_URL
14+
)
15+
16+
message = Vonage::Messaging::Message.messenger(
17+
type: 'text',
18+
message: "This is a Facebook Messenger text message sent using the Messages API via the Messages Sandbox"
19+
)
20+
21+
client.messaging.send(
22+
from: MESSAGES_SANDBOX_FB_ID,
23+
to: MESSAGES_SANDBOX_ALLOW_LISTED_FB_RECIPIENT_ID,
24+
**message
25+
)

messages/sandbox/viber/send-text.rb

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
require 'dotenv/load'
2+
require 'vonage'
3+
4+
VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID']
5+
VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH']
6+
MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL']
7+
MESSAGES_SANDBOX_VIBER_SERVICE_ID = ENV['MESSAGES_SANDBOX_VIBER_SERVICE_ID']
8+
MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER']
9+
10+
client = Vonage::Client.new(
11+
application_id: VONAGE_APPLICATION_ID,
12+
private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
13+
api_host: MESSAGES_SANDBOX_URL
14+
)
15+
16+
message = Vonage::Messaging::Message.viber(
17+
type: 'text',
18+
message: "This is a Viber Service Message text message sent using the Messages API via the Messages Sandbox"
19+
)
20+
21+
client.messaging.send(
22+
from: MESSAGES_SANDBOX_VIBER_SERVICE_ID,
23+
to: MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER,
24+
**message
25+
)
+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
require 'dotenv/load'
2+
require 'vonage'
3+
4+
VONAGE_APPLICATION_ID = ENV['VONAGE_APPLICATION_ID']
5+
VONAGE_APPLICATION_PRIVATE_KEY_PATH = ENV['VONAGE_APPLICATION_PRIVATE_KEY_PATH']
6+
MESSAGES_SANDBOX_URL= ENV['MESSAGES_SANDBOX_URL']
7+
MESSAGES_SANDBOX_WHATSAPP_NUMBER = ENV['MESSAGES_SANDBOX_WHATSAPP_NUMBER']
8+
MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER = ENV['MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER']
9+
10+
client = Vonage::Client.new(
11+
application_id: VONAGE_APPLICATION_ID,
12+
private_key: File.read(VONAGE_APPLICATION_PRIVATE_KEY_PATH),
13+
api_host: MESSAGES_SANDBOX_URL
14+
)
15+
16+
message = Vonage::Messaging::Message.whatsapp(
17+
type: 'text',
18+
message: "This is a WhatsApp Message text message sent using the Messages API via the Messages Sandbox"
19+
)
20+
21+
client.messaging.send(
22+
from: MESSAGES_SANDBOX_WHATSAPP_NUMBER,
23+
to: MESSAGES_SANDBOX_ALLOW_LISTED_TO_NUMBER,
24+
**message
25+
)

0 commit comments

Comments
 (0)