JAVA: Encode Beacon MessagePack form MQTT via AB BLE Gateway 4.0

JAVA:
I have encoding problems when evaluating the MessagePack.
A part is encoded correctly, but the advertising (devices) is not encoded correctly.

I actually want to evaluate the following values:
ID of the beacon
RSSI
Tx-Power
Battery level in% (do you have a java example?)

Can someone help me there?

The example-method Parse.java did not work unfortunately:
Link: gateway-v4/examples/java/http-server/Parse.java

Hardware:
AprilBeacon EEK-N BLE Beacon (Eddystone UID)
AB BLE Gateway 4.0 (MQTT)

Gateway Config:
Connection Type: MQTT Client
Host: mqtt.bconimg.com
Port: 1883
Publish Topic: joelBLE
Request Interval: 2 sec
RSSI Filter: Default
Advertising Filter: Eddystone UID Only
Duplicate Filter: Yes
Auto Restart: Disable

Here is my project on GitLab:
https://dev.hftm.ch:4430/Joel.Blaser/mqtt-test.git

I found the Problem. the message was not always a Beacon, so it wasn`t always a map-format. So i have to check if the message is in map-format, then i can parse the massage like in the parse.java example.
https://github.com/AprilBrother/ab-ble-gateway-sdk/blob/master/gateway-v4/examples/java/http-server/Parse.java

just add the line:
if( unpacker.getNextFormat() == MessageFormat.FIXMAP) {

Thanks for your update!