Skip to content

Build a real-time interactive messaging experience using RCS, Node.js, and the Vonage Messages API. This sample app guides users through a multi-step conversation using suggested replies, rich cards, and carousels—perfect for live events, sports apps, fan voting, or any branded experience.

Notifications You must be signed in to change notification settings

Vonage-Community/tutorial-messages-node-rcs_realtime_football

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RCS Interactive Football Demo

A Node.js application that demonstrates sending Rich Communications Services (RCS) Rich Card Carousels and interactive football-themed messages using the Vonage API.

You can find full step-by-step instructions on the Vonage Developer Blog. (Not published yet)

Final App Preview

Final App Preview


Prerequisites

  1. Node.js installed on your machine.
  2. ngrok installed for exposing your local server to the internet.
  3. Vonage Developer Account
  4. A registered RCS Business Messaging (RBM) Agent.
  5. A phone with RCS capabilities for testing.

Project Structure


Setup Instructions

  1. Clone this repository:

    git clone [https://github.com/your-username/rcs-interactive-football.git](https://github.com/your-username/rcs-interactive-football.git)
    cd rcs-interactive-football
    
  2. Install dependencies:

    npm install
    
  3. Configure environment variables:

    • Rename .env.example to .env.
    • Add your VONAGE_APPLICATION_ID, VONAGE_PRIVATE_KEY, VONAGE_API_SIGNATURE_SECRET, and RCS_SENDER_ID values to the .env file.
  4. Add your Vonage private key:

    • Place your private.key file in the root of the project directory.
  5. Start your Node server:

    node src/index.js
    
  6. Expose your local server with ngrok:

    ngrok http 3000
    • Copy the HTTPS forwarding URL provided by ngrok.
  7. Test your app by sending an RCS message:

    curl -X POST https://YOUR_NGROK_URL/send-initial-message \
      -H "Content-Type: application/json" \
      -d '{"to": "YOUR_RCS_TEST_NUMBER"}'
    • Replace YOUR_NGROK_URL with your actual ngrok URL and YOUR_RCS_TEST_NUMBER with your test device number.

Endpoints

  • POST /send-initial-message — Sends an initial RCS message with suggested replies.

  • POST /inbound — Handles inbound RCS replies and triggers interactive flows.


Notes

All images used in the message templates are stored in the public/ directory.

The main business logic is organized under src/services/ and src/templates/.

Configuration is managed in config/config.js and .env.


License MIT

About

Build a real-time interactive messaging experience using RCS, Node.js, and the Vonage Messages API. This sample app guides users through a multi-step conversation using suggested replies, rich cards, and carousels—perfect for live events, sports apps, fan voting, or any branded experience.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •