Skip to content

Latest commit

 

History

History
48 lines (43 loc) · 2.39 KB

File metadata and controls

48 lines (43 loc) · 2.39 KB

mx.api 0.3.0

  • Generic room-event and state plumbing: mx_send_event() sends any event type (e.g. m.room.encrypted), mx_set_state() / mx_get_state() write and read state events (e.g. m.room.encryption). Together these are what an external end-to-end-encryption layer (such as 'mx.client') needs.
  • Media messages: mx_send_media() uploads a file and posts the referencing m.room.message, deriving m.image/m.audio/m.video from the MIME type by default; mx_send_file(), mx_send_image(), mx_send_audio(), and mx_send_video() fix the msgtype explicitly. Metadata beyond mimetype and size is caller-supplied; mx.api does not inspect media files. mx_guess_mime() is now exported, and mx_media_config() reports the server's upload cap.
  • mx_upload() streams files from disk instead of reading them into memory, and mx_guess_mime() falls back to octet-stream on unknown extensions as documented (was NA).
  • HTTP failures signal classed conditions (mx_error_<ERRCODE> / mx_error) carrying $errcode, $status, and the parsed $body, so callers can react to specific failures without parsing message strings. Message text is unchanged.
  • Bot lifecycle endpoints: mx_room_invite() (invite into an existing room), mx_redact() (Matrix deletion), mx_typing() (typing indicator), and profile helpers mx_profile(), mx_set_displayname(), mx_set_avatar_url().
  • Account data: mx_get_account_data() / mx_set_account_data(), kept generic (no DM-semantics helpers).
  • Devices: mx_devices() lists; mx_delete_device() deletes, passing any user-interactive auth payload through verbatim.

mx.api 0.2.0

  • New transport endpoints for end-to-end-encryption coordination: mx_keys_upload(), mx_keys_query(), mx_keys_claim(), and mx_send_to_device(). The package itself remains crypto-free; these carry already-signed payloads built by an external signer (e.g. mx.crypto).
  • mx_canonical_json() produces Matrix-spec canonical JSON, the byte sequence callers feed to their signer for /keys/upload.

mx.api 0.1.0

  • Initial CRAN release.
  • 19 exported functions covering the Matrix Client-Server API: login, register, logout, whoami, session reconstruction, room list, room create/join/leave, room members, room name/topic, message send and history, read receipts, reactions, sync, and media upload/download.
  • End-to-end encryption is out of scope.