dial_langchain.tools¶
Classes¶
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
|
Base for Dial LangChain tools. |
Module Contents¶
- class dial_langchain.tools.GetBillingTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- description: str = "Get the account's billing status: credit balance, subscription (if any), each number's billing...¶
- name: str = 'get_billing'¶
- class dial_langchain.tools.GetCallTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Fetch a single call by its id, including its current status.'¶
- name: str = 'get_call'¶
- class dial_langchain.tools.ListCallsInput¶
Bases:
pydantic.BaseModel- direction: str | None¶
- number_id: str | None¶
- class dial_langchain.tools.ListCallsTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'List recent inbound and outbound calls on the account.'¶
- name: str = 'list_calls'¶
- class dial_langchain.tools.ListMessagesInput¶
Bases:
pydantic.BaseModel- direction: str | None¶
- number_id: str | None¶
- class dial_langchain.tools.ListMessagesTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'List recent inbound and outbound messages on the account.'¶
- name: str = 'list_messages'¶
- class dial_langchain.tools.ListNumbersTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- description: str = 'List all available Dial phone numbers on the account.'¶
- name: str = 'list_numbers'¶
- class dial_langchain.tools.MakeCallInput¶
Bases:
pydantic.BaseModel- from_number: str | None¶
- from_number_id: str | None¶
- idempotency_key: str | None¶
- language: str | None¶
- max_call_duration_seconds: int | None¶
- outbound_instruction: str¶
- to: str¶
- transfer_to: str | None¶
- voice_gender: str | None¶
- class dial_langchain.tools.MakeCallTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Initiate an AI voice call to a phone number.'¶
- name: str = 'make_call'¶
- class dial_langchain.tools.PurchaseNumberInput¶
Bases:
pydantic.BaseModel- area_code: str | None¶
- explicit_programmatic_consent: str¶
- inbound_instruction: str¶
- inbound_language: str | None¶
- inbound_voice_gender: str | None¶
- include_imessage: bool¶
- class dial_langchain.tools.PurchaseNumberTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Provision (buy) a new Dial phone number. Billable.'¶
- name: str = 'purchase_number'¶
- class dial_langchain.tools.ReplyToMessageInput¶
Bases:
pydantic.BaseModel- body: str | None¶
- message_id: str¶
- reaction: str | None¶
- class dial_langchain.tools.ReplyToMessageTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Reply in-thread or react to an existing message. The reply goes out from the Dial number the...¶
- name: str = 'reply_to_message'¶
- class dial_langchain.tools.SendMessageInput¶
Bases:
pydantic.BaseModel- body: str¶
- channel: str¶
- force_audio_file: bool¶
- from_number: str | None¶
- from_number_id: str | None¶
- media_urls: list[str]¶
- to: str¶
- class dial_langchain.tools.SendMessageTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Send a message to a phone number, optionally with media attachments (MMS). On an iMessage...¶
- name: str = 'send_message'¶
- class dial_langchain.tools.SetNumberPropertiesInput¶
Bases:
pydantic.BaseModel- avatar_url: str | None¶
- first_name: str | None¶
- inbound_instruction: str | None¶
- inbound_language: str | None¶
- inbound_voice_gender: str | None¶
- last_name: str | None¶
- max_call_duration_seconds: int | None¶
- nickname: str | None¶
- number_id: str¶
- class dial_langchain.tools.SetNumberPropertiesTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = "Update a Dial phone number's properties: its inbound instruction (the system prompt its AI...¶
- name: str = 'set_number_properties'¶
- class dial_langchain.tools.StartTypingTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = "Show a typing indicator to the recipient, as if composing a message from your number. iMessage...¶
- name: str = 'start_typing'¶
- class dial_langchain.tools.StopTypingTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = "Clear a typing indicator previously shown with start_typing. Delivering a message or reaction...¶
- name: str = 'stop_typing'¶
- class dial_langchain.tools.WaitForMessageInput¶
Bases:
pydantic.BaseModel- phone_number_id: str¶
- timeout_seconds: int¶
- class dial_langchain.tools.WaitForMessageTool¶
Bases:
_DialToolBase for Dial LangChain tools.
Holds a shared
DialClient(passed in, not constructed per call) so every tool reuses one connection pool. These tools are async-only: LangChain/LangGraph agents invoke them via_arunin their event loop, so the shared client is safe.arbitrary_types_allowedlets the Pydantic-basedBaseToolcarry the non-PydanticDialClientas a field.- args_schema: type[pydantic.BaseModel]¶
- description: str = 'Wait for the next inbound SMS or WhatsApp message and return it. Blocks until a message arrives...¶
- name: str = 'wait_for_message'¶