Auties00 / Cobalt

Standalone unofficial fully-featured Whatsapp Web and Mobile API for Java and Kotlin
MIT License
616 stars 180 forks source link

How do I read received Media Bytes or caption #430

Closed abdlhay closed 6 months ago

abdlhay commented 6 months ago

first of all thank you so much for creating this library

Based on the example in this repo WhatsappBotListener.java I tried :

val imageMessage = info.message().content() as ImageMessage
val caption = imageMessage.caption().get()

but it didn't work, tried to log the result of this message nothing appeared

kindly someone guide me on how to achieve this. I already checked Javadoc but classes/methods have unclear description

abdlhay commented 6 months ago

I discovered the solution by referring to issue #334

  val mediaMessage = info.message().content() as ImageMessage

        if (mediaMessage.mediaType() == MediaMessageType.IMAGE) {

            val future = api.downloadMedia(mediaMessage)

            val media = future.join()
            val image = ImageMessageSimpleBuilder()
                .media(media.get())
                .caption(mediaMessage.caption().get())
                .build()
            api.sendMessage(info.parentJid(), image)

        }

Note : using Cobalt 0.0.1