code: @Override
      public boolean sendImg(String toUserName, String filePath) {
          DateUtils.sendSleep();
          String mediaId = this.uploadMedia(toUserName, filePath).getMediaId();
          if (StringUtils.isEmpty(mediaId)) {
              log.warn("Media为空");
              return false;
          }
  
          String url = String.format("%s/webwxsendmsgimg?fun=async&f=json&pass_ticket=%s",
                  bot.session().getUrl(), bot.session().getPassTicket());
  
          String msgId = System.currentTimeMillis() / 1000 + StringUtils.random(6);
  
          Map<String, Object> msg = new HashMap<>();
          msg.put("Type", 3);
          msg.put("MediaId", mediaId);
          msg.put("FromUserName", bot.session().getUserName());
          msg.put("ToUserName", toUserName);
          msg.put("LocalID", msgId);
          msg.put("ClientMsgId", msgId);
  
          JsonResponse response = this.client.send(new JsonRequest(url).post().jsonBody()
                  .add("BaseRequest", bot.session().getBaseRequest())
                  .add("Msg", msg)
          );
          return null != response && response.success();
      }
docs: 发送文件
  
  @param toUserName 发送给谁
  @param filePath   文件路径