code: public void subscribeWithBuffer(String channel, String subscriberId, final OnMessageWithBuffer onMessage){
          if (subscriberId != null) {
              HashMap options = new HashMap();
              options.put("channel", channel);
              options.put("subscribeOnReconnected", true);
              options.put("subscriberId", subscriberId);
  
              this.subscribeWithOptions(options, new OnMessageWithOptions() {
                  @Override
                  public void run(OrtcClient sender, Map msgOptions) {
                      if (msgOptions.containsKey("channel") && msgOptions.containsKey("message")) {
                          final String channel = (String) msgOptions.get("channel");
                          final String message = (String) msgOptions.get("message");
                          final String seqId = (String) msgOptions.get("seqId");
  
                          onMessage.run(sender, channel, seqId, message);
                      }
                  }
              });
          }else{
              raiseOrtcEvent(
                      EventEnum.OnException,
                      this,
                      new OrtcGcmException(
                              "subscribeWithBuffer called with no subscriberId"));
          }
      }
docs: Subscribes to a channel to receive messages published to it.
  
  @param channel
  The channel name.
  @param subscriberId
  The subscriberId associated to the channel.
  @param OnMessageWithBuffer
  The callback called when a message arrives at the channel and message seqId number.