Skip to main content

Agora's low latency, high performance Realtime API to work with Voice Conversational AI

Project description

API Reference for agora-realtime-ai-api Python Package

RtcOptions Class

The RtcOptions class represents the configuration options for an RTC (Real-Time Communication) session.

Constructor:

RtcOptions(
    *,
    channel_name: str = None,
    uid: int = 0,
    sample_rate: int = 24000,
    channels: int = 1,
    enable_pcm_dump: bool = False
)
  • channel_name: Name of the channel.
  • uid: Unique identifier for the user.
  • sample_rate: Sample rate for audio (default is 24,000 Hz).
  • channels: Number of audio channels (default is 1).
  • enable_pcm_dump: Flag to enable PCM audio dump (default is False).

AudioStream Class

The AudioStream class represents an iterable stream of PCM audio frames.

Constructor:

AudioStream()

Methods:

  • __aiter__() -> AsyncIterator[PcmAudioFrame]: Async iterator to traverse through audio frames.
  • __anext__() -> PcmAudioFrame: Returns the next audio frame in the queue.

Channel Class

The Channel class handles the RTC channel and associated operations such as connection, audio subscriptions, and data stream messages.

Constructor:

Channel(rtc: "RtcEngine", options: RtcOptions)

Methods:

  • connect() -> None: Connects to the channel asynchronously.
  • disconnect() -> None: Disconnects from the channel asynchronously.
  • get_audio_frames(uid: int) -> AudioStream: Returns the audio stream for a specific user.
  • push_audio_frame(frame: bytes) -> None: Sends a PCM audio frame to the channel.
  • clear_sender_audio_buffer() -> None: Clears the audio buffer used for sending.
  • subscribe_audio(uid: int) -> None: Subscribes to a user's audio stream.
  • unsubscribe_audio(uid: int) -> None: Unsubscribes from a user's audio stream.
  • send_stream_message(data: str, msg_id: str) -> None: Sends a data stream message to the channel.

ChatMessage Class

Represents a chat message to be sent over the RTC channel.

Constructor:

ChatMessage(message: str, msg_id: str)

Chat Class

Handles the queue of chat messages and sends them over the RTC channel.

Constructor:

Chat(channel: Channel)

Methods:

  • send_message(item: ChatMessage) -> None: Sends a chat message.

RtcEngine Class

The RtcEngine class initializes the Agora service and provides methods for managing RTC channels.

Constructor:

RtcEngine(appid: str, appcert: str)

Methods:

  • create_channel(options: RtcOptions) -> Channel: Creates an RTC channel with the given options.
  • destroy() -> None: Destroys the RTC engine instance.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agora_realtime_ai_api_v1-0.0.3.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agora_realtime_ai_api_v1-0.0.3-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file agora_realtime_ai_api_v1-0.0.3.tar.gz.

File metadata

File hashes

Hashes for agora_realtime_ai_api_v1-0.0.3.tar.gz
Algorithm Hash digest
SHA256 566451cded0005c7983e787b15ea6efa2a9a6297239d1006cbe293939f6576d4
MD5 143a526d02b8543854cf02814150f77d
BLAKE2b-256 2a12b4b15403e69e735de9dc88858f0ecbfbf75863b9292f7648171b119761bd

See more details on using hashes here.

File details

Details for the file agora_realtime_ai_api_v1-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for agora_realtime_ai_api_v1-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0247215025bee0e31ac4bd9578bf90d0c03f3038c4359fa6964a2b62453362c4
MD5 873dbd9a3095aaca3b91aa52fd573090
BLAKE2b-256 2329eee0e63f365d5a7eb8f0d2f11546a9d99478687196118cbaf47206070c2a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page