github Thinline-Dynamic-Solutions/ThinLineRadio v26.04.024
v26.04.024 - Fix pager audio 400 (callId scientific notation)

latest release: v26.04.025
3 hours ago

Fix

Pager alert audio fetch returning HTTP 400 on production

callId, systemId, and talkgroupId were placed into the FCM data payload as raw integers. Go's JSON decoder unmarshals all JSON numbers into float64 when the destination is interface{}, so the relay server converted 29874435 to float64(29874435) and formatted it with %v, producing "2.9874435e+07".

The mobile app then built the audio URL as /api/calls/2.9874435e+07/audio, which the scanner server rejected with HTTP 400 — meaning pager alerts woke the phone via CallKit but never played audio.

All three IDs are now serialised to strings with fmt.Sprintf("%d", ...) before being placed in the payload. The relay receives and forwards them as plain decimal strings unchanged.

Affected path

sendBuildNotificationData in push_notification.go (shared by both sendPushNotification and sendBatchedPushNotificationWithToneSet)

Don't miss a new ThinLineRadio release

NewReleases is sending notifications on new releases.