CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-rocketchat-a-p-i

Python API wrapper for Rocket.Chat's REST API, enabling developers to programmatically interact with Rocket.Chat servers for chat automation, bot development, and integration purposes

Pending
Overview
Eval results
Files

direct-messages.mddocs/

Direct Messages

One-on-one and multi-user direct messaging capabilities. Provides private communication channels between users with message history, file sharing, and conversation management.

Capabilities

Direct Message Creation

def im_create(self, username, **kwargs):
    """
    Create direct message session with a user.
    
    Parameters:
    - username (str): Username to create DM with
    
    Returns:
    requests.Response: DM creation result
    """

def im_create_multiple(self, usernames, **kwargs):
    """
    Create group direct message with multiple users.
    
    Parameters:
    - usernames (list): List of usernames for group DM
    
    Returns:
    requests.Response: Group DM creation result
    """

Direct Message Listing

def im_list(self, **kwargs):
    """
    List user's direct messages.
    
    Parameters:
    - offset (int, optional): Number of items to skip
    - count (int, optional): Number of items to return
    - sort (dict, optional): Sort criteria
    
    Returns:
    requests.Response: List of direct messages
    """

def im_list_everyone(self, **kwargs):
    """
    List all direct messages (admin only).
    
    Parameters:
    - offset (int, optional): Number of items to skip
    - count (int, optional): Number of items to return
    
    Returns:
    requests.Response: List of all DMs
    """

Message History and Content

def im_history(self, room_id, **kwargs):
    """
    Get direct message history.
    
    Parameters:
    - room_id (str): DM room ID
    - latest (str, optional): Latest message timestamp
    - oldest (str, optional): Oldest message timestamp
    - count (int, optional): Number of messages
    - unreads (bool, optional): Include unread messages
    
    Returns:
    requests.Response: Message history
    """

def im_messages(self, room_id=None, username=None, **kwargs):
    """
    Get direct messages by username.
    
    Parameters:
    - room_id (str, optional): Room ID
    - username (str, optional): Username
    - offset (int, optional): Number of items to skip
    - count (int, optional): Number of items to return
    
    Returns:
    requests.Response: Messages
    """

def im_messages_others(self, room_id, **kwargs):
    """
    Get messages from any DM (admin only).
    
    Parameters:
    - room_id (str): Room ID
    - offset (int, optional): Number of items to skip
    - count (int, optional): Number of items to return
    
    Returns:
    requests.Response: Messages
    """

Direct Message Management

def im_open(self, room_id, **kwargs):
    """
    Open direct message for user.
    
    Parameters:
    - room_id (str): DM room ID
    
    Returns:
    requests.Response: Open result
    """

def im_close(self, room_id, **kwargs):
    """
    Close direct message for user.
    
    Parameters:
    - room_id (str): DM room ID
    
    Returns:
    requests.Response: Close result
    """

def im_set_topic(self, room_id, topic, **kwargs):
    """
    Set direct message topic.
    
    Parameters:
    - room_id (str): DM room ID
    - topic (str): Topic text
    
    Returns:
    requests.Response: Update result
    """

Members and Files

def im_members(self, room_id):
    """
    Get direct message members.
    
    Parameters:
    - room_id (str): DM room ID
    
    Returns:
    requests.Response: List of members
    """

def im_files(self, room_id=None, user_name=None, **kwargs):
    """
    List files in direct message.
    
    Parameters:
    - room_id (str, optional): Room ID
    - user_name (str, optional): Username
    - offset (int, optional): Number of items to skip
    - count (int, optional): Number of items to return
    
    Returns:
    requests.Response: List of files
    """

def im_counters(self, room_id, user_name=None):
    """
    Get direct message counters.
    
    Parameters:
    - room_id (str): Room ID
    - user_name (str, optional): Username
    
    Returns:
    requests.Response: DM statistics
    """

Usage Examples

# Create a direct message
dm_response = rocket.im_create('john.doe')
room_id = dm_response.json()['room']['_id']

# Send message to the DM
rocket.chat_post_message(
    text="Hello John!",
    room_id=room_id
)

# Get DM history
history = rocket.im_history(room_id, count=20)

Install with Tessl CLI

npx tessl i tessl/pypi-rocketchat-a-p-i

docs

administration.md

assets.md

channels.md

chat.md

direct-messages.md

groups.md

index.md

integrations.md

livechat.md

miscellaneous.md

permissions.md

roles.md

rooms.md

settings.md

statistics.md

subscriptions.md

teams.md

users.md

tile.json