Repository navigation
ART Objective-C ADK 1.0.3: File storage, notifications and Swift Package Manager support
LatestHighlights
- File storage. Upload, list, fetch and delete files with
ARTStorageor the matchingAdkmethods. Files can belong to your project, an agent, an orchestrator, a conversation thread or a channel. Uploads from disk are streamed and report their progress. - Files for AI agents. Attach uploaded files to a message with
-[AgentThread run:replyId:fileMeta:completion:]. Channel messages can carry files too, throughPushConfig.fileMeta. - Conversation status. Agent and orchestrator threads report their status (queued, running, waiting for input, completed, failed). Follow it with
listenState:or read it withgetState. - Notifications (optional add-on). Receive notifications as they arrive, list past ones, mark them as read, send notifications and register devices for push notifications. Install it with
-[Adk use:]. - Swift Package Manager support. Installing with SPM now works. Add the
ArtAdkObjClibrary (andArtAdkNotificationsif you need notifications). - Also new: profiles (
updateProfile:completion:,connector:error:),setCredentials:andAdkConfig.autoLoadCredsFromJSON, REST call options, removable listeners, complete event data inAgentEventEnvelope.content, andARTLog.
Changed
- On targeted channels,
pushcompletes once ART confirms delivery. If no confirmation arrives within 50 seconds, it fails withErrorCodeAckTimeout. - Channel messages reach your listeners one at a time, in the order they arrive.
- Access tokens are renewed 30 seconds before they expire, and simultaneous requests share one renewal.
- Agent threads include their thread ID in every message. New thread IDs are lowercase UUIDs.
Fixed
- Installing with Swift Package Manager failed because the headers couldn't be found.
- Agent responses were empty when the server sent their content as JSON text.
pausereconnected by itself after five seconds.-[Subscription thread:]always returned nil on orchestrator-enabled channels.- Presence updates on shared-object channels never arrived.
- Closing one orchestrator thread removed other threads' trace listeners.
- Data that can't be converted to JSON crashed the app; the ADK now reports an
ARTJSONErrorDomainerror. - Using the ADK from several threads at once could corrupt its internal state.
Upgrading
- If you
switchoverAgentEventKind, handle the newAgentEventKindThreadStatecase or add adefaultcase. pushon targeted channels now waits for delivery confirmation. Don't block the UI while it waits, and handleErrorCodeAckTimeout.listenTrace:is deprecated. UselistenState:.- With CocoaPods, run
pod installagain after updating.
Installation
Swift Package Manager
.package(url: "https://github.com/aiotrixdev/art-objectivec-adk.git", from: "1.0.3")Add the ArtAdkObjC product (and ArtAdkNotifications if you need notifications), then @import ArtAdk; (and @import ArtAdkNotifications;).
CocoaPods
pod 'ArtAdk', '~> 1.0.3'
pod 'ArtAdk/Notifications', '~> 1.0.3' # optionalThen @import ArtAdk;.
See the full CHANGELOG for every change.
Full Changelog: 1.0.2...1.0.3