I have written the following code in Nodejs which is saving data in MongoDB:

```
function insertDoc(db,data){
    return new Promise(resolve => {
      callback=db.collection('AnalysisCollection').insertOne(data).then(function(response,obj){
        console.log("Inserted record"); 
           resolve(obj);
        //console.log(obj); 
          //  response.on('end',function(){
          //    resolve(obj);
          //  });  
        //return resolve(obj);
    }).then(() => { return obj }
    ).catch(function(error){
        throw new Error(error);
    });
    })
  }

```

I am calling the above function from the main function like this:

```
async function cosmosDBConnect(nluResultJSON){

    try{
        //console.log("Inserting to cosmos DB");
        console.log(nluResultJSON);        
        var url = config.cosmos_endpoint;
        var result="";

        var data = JSON.parse(JSON.stringify(nluResultJSON));

        MongoClient.connect(url, function(err, client) {
          assert.equal(null, err);
          var db = client.db('NLUAnalysisDB');          
         // insertDoc(db, data, function() { 
          result=insertDoc(db, data, function() { 
            console.log(result);                      
          client.close();
          //return data._id;
          });          
          });

    }
    catch (e) {        
        console.log(e);
      }
}

module.exports = { cosmosDBConnect };

```

But in cosmosDBConnect, I am getting 'undefined' for the result, though in insertDoc I am getting the output for'obj' with \_id for the inserted record.

Please help me to return this \_id to cosmosDBConnect.