Asmo7791

← Projects

DMS Pro Tracker

A Feishu (Lark) bot that turns a parcel sortation center's live data into hourly progress reports, capacity alerts and on-demand answers for supervisors. It was the first employee-built integration with GOFO's internal system (DMS), and it's in daily use.

The problem

At GOFO's sortation center, supervisors needed to know through every shift how many parcels each destination had sorted, how close each one was to its truck capacity, and when it would finish. Getting that meant someone opening the DMS, copying numbers into a spreadsheet and posting updates by hand, every hour, while running a floor of 200+ contract workers.

I went through a formal review to get management approval for an integration with the DMS, then built this bot on it. The results led the company to open API access to internal staff, and it's now used by 30+ employees.

What it does

Commands

CommandWhat it does
!update · !supdateLive report now, to every group or just this chat
!lookup DESTLive, bag-level count for one destination since the shift started
!eta DESTEstimated finish time from the last hour's sorting speed
!edit perm|temp DEST NChange a capacity target (admins only)
!r2 DEST NRecord carried-over second-round packages
!pause · !resumeStop or restart the automatic reports (admins only)
!ping · !helpHealth check and command list
Ops group · example with illustrative numbers
  1. ❯ @DMS Pro Tracker !eta DEST01

  2. ⏱️ DEST01 ETA
    🚀 Speed: 4,200 pkgs/hr
    📦 Remaining: 9,800
    ⏰ Finish: 03:20 AM

  3. 🚨 DEST02 reached 90.4% · 54,240 / 60,000 · get ready to close out

How it's built

Architecture: Feishu sends chat events to a Flask webhook; the tracker's scheduler and command handler fetch from the DMS API and post reports back to Feishu, an Excel log and a Feishu spreadsheet. Feishu group chatssupervisors, ops Feishu Open APIevents in, messages out DMS Pro Tracker (Python) Flask webhookreply 200 now, work in a thread Commandsadmin checks Scheduler:05 · every 15 min pandas pipelineclean, merge, targets, progress GOFO DMS APIshift totals, bag lists Excel master log Feishu spreadsheet config.json · leftovers · temp edits @bot !command event reply HTTPS

Python · Flask · pandas · schedule · openpyxl · requests · Feishu Open API · ngrok. The code is private because it connects to company systems; this page describes it without internal details.

Impact

History

It started as a simpler stat tracker for the sorting group, then grew into DMS Pro Tracker v2 in April 2026, when I moved the core into a single service (main.py) with real-time fetching for manual updates and threshold checks. I still maintain and extend it.