Μετάβαση στο περιεχόμενο
wetalk

Βοηθοί

Πώς χρησιμοποιούν οι βοηθοί τα έγγραφά σας

Ο βοηθός απαντά από όσα του δώσατε. Δεν επινοεί τιμές, ώρες ή πολιτικές και κάθε πιθανή απάντηση συνδέεται με μία αμετάβλητη έκδοση που μπορείτε να διαβάσετε, να συγκρίνετε και να επαναφέρετε.

Οι διαδρομές, τα ονόματα πεδίων, οι τιμές enum, οι κεφαλίδες και οι κωδικοί σφαλμάτων στα παραδείγματα είναι οι πραγματικοί, ελεγμένοι με την προδιαγραφή του API κατά τη δημιουργία της σελίδας. Τα αναγνωριστικά, ποσά και ονόματα είναι ενδεικτικά. Τα `$WETALK_API_KEY` και `$AGENT` είναι μεταβλητές shell που ορίζετε εσείς.

Η έκδοση είναι η μονάδα λειτουργίας

Η μεταφόρτωση νέου εγγράφου δεν αλλάζει τον βοηθό. Δημιουργεί νέα έκδοση. Η παλιά συνεχίζει να απαντά μέχρι να δημοσιευτεί η νέα, ώστε η γραμμή να μην διακόπτεται ούτε να μένει μισοπροσαρμοσμένη. Κάθε έκδοση καταγράφει την προέλευση της δημιουργίας της, μέχρι και το SHA-256 κάθε αρχείου.

Αυτό απαντά και στο «τι είπε τον περασμένο Μάρτιο»: οι εκδόσεις είναι αμετάβλητες και δεν διαγράφονται, οπότε η διαμόρφωση οποιασδήποτε παλιάς συνομιλίας παραμένει αναγνώσιμη.

Εκδόσεις και τα έγγραφά τους
curl https://api.wetalk.io/v1/agents/$AGENT/versions \
  -H "Authorization: Bearer $WETALK_API_KEY"

curl https://api.wetalk.io/v1/agents/$AGENT/versions/$VERSION/documents \
  -H "Authorization: Bearer $WETALK_API_KEY"
Μία εγγραφή εγγράφου
{
  "agent_document_id": "0199f1c2-6b43-7e25-8f66-4b2c7d5e0f43",
  "kind": "upload",
  "filename": "menu-autumn.pdf",
  "content_type": "application/pdf",
  "byte_size": 184320,
  "sha256": "9f2a4c8e1b7d3a6f0c5e9b2d8a4f7c1e3b6d9a2f5c8e1b4d7a0f3c6e9b2d5a8f",
  "uploaded_at": "2026-09-14T08:12:44Z"
}

Δημοσίευση και επαναφορά

Η δημοσίευση και η επαναφορά είναι η ίδια λειτουργία με την ίδια εγγύηση. Και οι δύο λαμβάνουν `expected_live_version_seq` — την ακολουθία που διαβάσατε τελευταία — και απορρίπτονται με `409 live_version_seq_stale` όταν δεν αντιστοιχεί πια. Δύο άνθρωποι δεν μπορούν να αντικαταστήσουν σιωπηλά ο ένας τον άλλον και η επαναφορά από παλιά οθόνη απορρίπτεται αντί να εφαρμοστεί σε λάθος έκδοση.

Οι συνομιλίες σε εξέλιξη είναι δεσμευμένες στην έκδοσή τους. Ολοκληρώνονται σε εκείνη που τις απάντησε· μόνο οι συνομιλίες που ξεκινούν μετά τη δημοσίευση βλέπουν τη νέα.

POST /v1/agents/{voice_agent_id}/versions/{agent_version_id}/restore
curl https://api.wetalk.io/v1/agents/$AGENT/versions/$OLDER_VERSION/restore \
  -X POST \
  -H "Authorization: Bearer $WETALK_API_KEY"
  -H "Content-Type: application/json" \
  -d '{ "expected_live_version_seq": 7 }'

Όσα δεν μπόρεσε να απαντήσει

Όταν ένας καλών ρωτά κάτι που δεν καλύπτουν τα έγγραφα, ο βοηθός το λέει και μεταφέρει τη συνομιλία ή κρατά μήνυμα — δεν μαντεύει. Η ερώτηση ομαδοποιείται με παρόμοιες ερωτήσεις άλλων καλούντων και εμφανίζεται ως κενό, με τα πραγματικά λόγια ενός καλούντος δίπλα στο πλήθος, ώστε να αξιολογείτε την ομάδα.

Η καταχώριση απάντησης τη βάζει στην ουρά. Δεν δημοσιεύει ούτε δημιουργεί τίποτα: το εργοστάσιο ενσωματώνει την απάντηση στην επόμενη έκδοση και μέχρι αυτή να ενεργοποιηθεί ο βοηθός δεν μπορεί ακόμη να απαντήσει την ερώτηση. Το `state` του κενού δείχνει σε ποιο από τα τέσσερα στάδια βρίσκεται.

  • open — ερωτήθηκε, δεν έχει απαντηθεί ακόμη.
  • queued — η απάντηση γράφτηκε και περιμένει την επόμενη δημιουργία.
  • folded — η απάντηση περιλαμβάνεται σε δημοσιευμένη έκδοση και ο βοηθός τη δίνει πλέον.
  • dismissed — δεν αξίζει να απαντηθεί.
POST /v1/agents/{voice_agent_id}/gaps/{gap_id}/answer
curl https://api.wetalk.io/v1/agents/$AGENT/gaps/$GAP/answer \
  -X POST \
  -H "Authorization: Bearer $WETALK_API_KEY"
  -H "Content-Type: application/json" \
  -d '{
    "answer_text": "We deliver to the old town and to Kifissia, nowhere further."
  }'

Γλώσσες

Επιλέξτε τις γλώσσες που εξυπηρετείτε κατά τη δημιουργία του βοηθού. Χαιρετά στην πρώτη και ακολουθεί τον καλούντα όταν αλλάζει γλώσσα, ακόμη και στη μέση της πρότασης αν χρειάζεται. Μία φωνή τις μιλά όλες.

Η γλώσσα είναι πακέτο δεδομένων, όχι κώδικας. Ένα ελλιπές πακέτο κάνει τη γλώσσα μη διαθέσιμη — δεν υπάρχει πουθενά στην πλατφόρμα αντικατάσταση από αγγλικά. Το αίτημα απορρίπτεται εξαρχής με `language_unavailable` ή `language_pack_incomplete` και το `GET /v1/languages` δίνει τον πραγματικό σημερινό κατάλογο. Οι είκοσι έξι γλώσσες είναι η δέσμευση του WeTalk για την κυκλοφορία, όχι όσες μιλά σήμερα το πρωί.

Ανάγνωση μιας συνομιλίας

Οι συνομιλίες σελιδοποιούνται με δείκτη και φιλτράρονται μέσω παραμέτρων αιτήματος, ώστε μια φιλτραρισμένη προβολή να είναι σύνδεσμος που μπορεί να σταλεί σε μήνυμα. Τα στοιχεία που επιστρέφονται περιγράφουν ολόκληρο το φιλτραρισμένο σύνολο, όχι τη σελίδα, και δεν αλλάζουν καθώς κάνετε κύλιση. Η σελιδοποίηση δεν βασίζεται ποτέ σε offset: αλλιώς μια συνομιλία που τελειώνει στη μέση της σελίδας θα μπορούσε να διπλασιαστεί ή να παραλειφθεί.

Κάθε συνομιλία περιέχει απομαγνητοφώνηση, χρονολόγιο συμβάντων και αναφορά στην ηχογράφηση. Η ακρόαση είναι ξεχωριστό, ελεγχόμενο αίτημα: το `POST /v1/conversations/{conversation_id}/recording/access` γράφει πρώτα την εγγραφή ελέγχου και μετά επιστρέφει URL σύντομης διάρκειας.

GET /v1/conversations
curl -G https://api.wetalk.io/v1/conversations \
  -H "Authorization: Bearer $WETALK_API_KEY"
  --data-urlencode "voice_agent_id=$AGENT" \
  --data-urlencode "since=2026-09-01T00:00:00Z" \
  --data-urlencode "limit=50"
Σελιδοποίηση με τον δείκτη που λάβατε
curl -G https://api.wetalk.io/v1/conversations \
  -H "Authorization: Bearer $WETALK_API_KEY"
  --data-urlencode "cursor=$NEXT_CURSOR"