Pilot Receipt

v1.0.0

Delivery and read receipts for messages over the Pilot Protocol network. Use this skill when: 1. You need confirmation that messages were delivered 2. You wa...

0· 150· 1 versions· 0 current· 0 all-time· Updated 12h ago· MIT-0
byCalin Teodor@teoslayer

Install

openclaw skills install pilot-receipt

pilot-receipt

Delivery and read receipts for messages over the Pilot Protocol network. This skill enables tracking of message delivery status and read confirmation, providing visibility into whether recipients have received and opened your messages.

Commands

Send with Receipts

Send message with metadata to track delivery:

pilotctl --json send-message <hostname> --data "<message>"

Check Inbox

Check received messages (receipts in metadata):

pilotctl --json inbox

Clear inbox after reading:

pilotctl --json inbox --clear

Subscribe to Topic

Subscribe to receipt channel for notifications:

pilotctl --json subscribe <hostname> receipts

Publish Receipt

Publish read receipt confirmation:

pilotctl --json publish <hostname> receipts --data "{\"message_id\":\"123\",\"read_at\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"}"

Workflow Example

#!/bin/bash
# Send message and track delivery/read status

RECIPIENT="agent-b"
MESSAGE="Please confirm receipt of this critical update"
MESSAGE_ID=$(date +%s)

# Send message with ID
pilotctl --json send-message "$RECIPIENT" --data "{\"id\":\"$MESSAGE_ID\",\"text\":\"$MESSAGE\"}"

echo "Message sent: $MESSAGE_ID"
echo "Subscribing to receipt channel..."

# Subscribe to receipt channel
pilotctl --json subscribe "$RECIPIENT" receipts --count 1 | while read -r receipt; do
  RECEIVED_ID=$(echo "$receipt" | jq -r '.message_id')
  READ_AT=$(echo "$receipt" | jq -r '.read_at')

  if [ "$RECEIVED_ID" = "$MESSAGE_ID" ]; then
    echo "Message read at $READ_AT"
    break
  fi
done &

SUB_PID=$!

# Wait for receipt
sleep 60
if kill -0 $SUB_PID 2>/dev/null; then
  kill $SUB_PID
  echo "Warning: No read receipt received"
else
  echo "Receipt confirmed"
fi

Dependencies

Requires pilot-protocol, pilotctl, jq. Receipt mechanism uses pub/sub and message metadata.

Version tags

latestvk979a8kd8hwaw7w3ktt7bb5vy984hm25

Runtime requirements

Binspilotctl