Deserialization Kotlin Firebase

Estoy tratando de deserializar datos de Firebase a POJO con Kotlin, esta es mi class POJO:

class Message { var number: String ?= null var message: String? = null var timestamp: Long = 0L var isHandled: Boolean ?= false var type:String ?=null } 

y este es mi código para recuperar datos de Firebase

 val query = Fire.REF.child("sms").orderByChild("type").equalTo("outbox-unsent") query.addChildEventListener(object : ChildEventListener { override fun onChildAdded(dataSnapshot: DataSnapshot, key: String) { val outbox = dataSnapshot.getValue(Message::class.java) Log.d("BS", "Background Service $outbox") } //...... }); 

esta es mi estructura de datos en apariencia de Firebase

 "sms":{ "-KI3ar91oBXGNpXXrOCS" : { "handled" : false, "message" : "Pak kenapa koneksi...", "number" : "+6285830166314", "timestamp" : 1463587399000, "type" : "inbox" }, //.......// } 

Cuando ejecuto el código, genera un error:

 java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter key 

¿Dónde está mi error en el código anterior?