Receive WhatsApp Text Messages Using JAVA

Overview

This guide shows how to receive WhatsApp text messages on a phone number registered against your WhatsApp business account. Typical use cases for receiving messages include customer support,  opt-in and opt-out messages and other customer interactions.

You can start receiving WhatsApp messages using our APIs. Follow the instructions below.

Prerequisites

To get started, you need a Plivo account — sign up with your work email address if you don’t have one already. If this is your first time using Plivo APIs, follow our instructions to set up a Java development environment.

To receive incoming messages, you must have an onboarded WhatsApp account with inbound capable numbers registered against the same. If the number is in connected state, it can receive incoming messages.

Create an Server to receive messages

Create a file called WhatsappMessagereceive.java and paste into it this code.

package com.example.Plivo.Whatsapp;

import com.plivo.api.exceptions.PlivoXmlException;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class PlivoWhatsappApplication {

    public static void main(String[] args) {
        SpringApplication.run(PlivoWhatsappApplication.class, args);
    }

    @GetMapping(value = "/reply_whatsapp/")
    public String getBody(
            @RequestParam String From,
            @RequestParam String To,
            @RequestParam String Body
    ) throws PlivoXmlException {
        System.out.printf("Message Received - From: %s, To: %s, Text: %s\n", From, To, Body);
        return "message received";
    }
}

Configure Webhook URL in your WhatsApp Business Account

As shown below, you can very easily add/update webhook url against a WhatsApp Business Account. Once this step is concluded, you are good to receive incoming messages.

Test

Send a text message to the Plivo number you specified using any phone.