handleMessage method

  1. @override
void handleMessage(
  1. MapViewController mapViewController,
  2. Map<String, dynamic> payload
)
override

Implementation

@override
void handleMessage(
    MapViewController mapViewController, Map<String, dynamic> payload) async {
  var text = "${payload["text"]}";
  if (payload["text"] == null || payload["text"] == "null") return;

  var lang =
      payload["lang"]?.toString().isNotEmpty == true ? payload["lang"] : null;
  var pitch = payload["pitch"] > 0 ? payload["pitch"].toDouble() : null;
  var volume = payload["volume"] > 0 ? payload['volume'].toDouble() : null;
  var rate = payload["rate"] > 0 ? payload['rate'].toDouble() : null;

  if (mapViewController._onSpeakAloudTextCallback != null) {
    mapViewController._onSpeakAloudTextCallback!.call(OnSpeakAloudTextResult(
        text: text, lang: lang, pitch: pitch, rate: rate, volume: volume));
  } else {
    mapViewController._speakAloudText(OnSpeakAloudTextResult(
        text: text, lang: lang, pitch: pitch, rate: rate, volume: volume));
  }
}