init method

void init()

==== Init data and the listener ====

Implementation

void init() {
  TencentCloudChat.instance.chatSDKInstance.messageSDK.init(
    onRecvMessageReadReceipts: onReceiveMessageReadReceipts,
    onRecvNewMessage: onReceiveNewMessage,
    onMessageDownloadProgressCallback: TencentCloudChatDownloadUtils.handleDownloadProgressEvent,
    onSendMessageProgress: onSendMessageProgressFromSDK,
    onRecvMessageModified: onReceiveMessageModified,
    onRecvC2CReadReceipt: onReceiveC2CMessageReadReceipts,
    onRecvMessageRevoked: onReceiveMessageRecalled,
  );
  player = AudioPlayer();
  player!.setVolume(1);
  player!.onPlayerStateChanged.listen(
    (event) {
      console(logs: "onPlayerStateChanged ${event.name}");
      if (event == PlayerState.completed) {
        updateCurrentAudioPlayInfo(isCompleted: true, progress: 1);
        playNextVideo();
      }
    },
    onDone: () {
      console(logs: "onPlayerStateChanged onDone");
    },
    onError: (Object error) {
      console(logs: "onPlayerStateChanged $error");
    },
    cancelOnError: true,
  );
  player!.onPlayerComplete.listen(
    (event) {
      console(logs: "onPlayerComplete");
    },
    onDone: () {
      console(logs: "onPlayerComplete onDone");
    },
    onError: (Object error) {
      console(logs: "onPlayerComplete $error");
    },
    cancelOnError: true,
  );
  player!.onPositionChanged.listen(
    (event) {
      if (_audioPlayInfo != null) {
        if (_audioPlayInfo!.totalSecond != 0 && event.inMilliseconds != 0) {
          console(logs: "onPositionChanged ${event.inMilliseconds} ${_audioPlayInfo!.totalSecond}");
          updateCurrentAudioPlayInfo(isCompleted: false, progress: event.inMilliseconds / (_audioPlayInfo!.totalSecond * 1000), isPaused: player?.state == PlayerState.paused);
        }
      }
    },
    onDone: () {
      console(logs: "onPositionChanged onDone");
    },
    onError: (Object error) {
      console(logs: "onPositionChanged $error");
    },
    cancelOnError: true,
  );
  TencentCloudChatDownloadUtils.init();
}