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.2.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.2-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.2.tar.gz.

File metadata

File hashes

Hashes for agora_realtime_ai_api_v1-0.0.2.tar.gz
Algorithm Hash digest
SHA256 cd700bd064c517ee80caec245f11b9f6fb831879d26d1adf42089b7583063379
MD5 39ed448f9731e4882b7a1437a6f00537
BLAKE2b-256 0cd82516d32bf4c71e26f20482cfaf7b543addb43f0439578ded8f1024d754fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for agora_realtime_ai_api_v1-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ad5ab1541d9cef33de63359c7257c519a1b6235e239db257c6f9778f30c0c19f
MD5 c6fef367f165a42041f9d78c6a3d4d78
BLAKE2b-256 cbc7ecd96242989c53507f0ea03f53aa06309b223b7837e44f1a8fef96d4c1aa

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