docs: function(jid_or_user_id, message) {
          var self = this,
              builder = Utils.getEnv().browser ? $msg : XMPP.Stanza;
  
          var paramsCreateMsg = {
              from: self.helpers.getUserCurrentJid(),
              to: this.helpers.jidOrUserId(jid_or_user_id),
              type: message.type ? message.type : 'chat',
              id: message.id ? message.id : Utils.getBsonObjectId()
          };
  
          var stanza = chatUtils.createStanza(builder, paramsCreateMsg);
  
          if (message.body) {
              stanza.c('body', {
                  xmlns: chatUtils.MARKERS.CLIENT,
              }).t(message.body).up();
          }
  
          if (message.markable) {
              stanza.c('markable', {
                  xmlns: chatUtils.MARKERS.CHAT
              }).up();
          }
  
          if (message.extension) {
              stanza.c('extraParams', {
                  xmlns: chatUtils.MARKERS.CLIENT
              });
  
              stanza = chatUtils.filledExtraParams(stanza, message.extension);
          }
  
          if(Utils.getEnv().browser) {
              if(config.streamManagement.enable){
                  message.id = paramsCreateMsg.id;
                  message.jid_or_user_id = jid_or_user_id;
                  self.connection.send(stanza, message);
              } else {
                  self.connection.send(stanza);
              }
          } else {
              if(config.streamManagement.enable){
                  message.id = paramsCreateMsg.id;
                  message.jid_or_user_id = jid_or_user_id;
                  self.Client.send(stanza, message);
              } else {
                  self.Client.send(stanza);
              }
  
          }
  
          return paramsCreateMsg.id;
      }