Calling Errors#

class pywa.errors.CallingError#

Bases: WhatsAppError

Base exception for all calling errors.

class pywa.errors.CallingNotEnabled#

Bases: CallingError

Calling is not enabled on the business phone number.

Configure call settings to enable Calling API features.

class pywa.errors.CallingCannotBeEnabled#

Bases: CallingError

WhatsApp Business calling cannot be enabled because technical pre-requisites are not met.

See prerequisites for more details

Configure SIP or ensure there is at-least one app subscribed to the WhatsApp Business Account that also has subscription to the calls webhook field.

class pywa.errors.ReceiverUncallable#

Bases: CallingError

Receiver is unable to receive calls

Reasons can include:

  • The recipient phone number is not a WhatsApp phone number.

  • The recipient has not accepted our new Terms of Service and Privacy Policy.

  • Recipient using an unsupported client. The currently supported clients are Android, iOS, SMB Android and SMB iOS

Confirm with the recipient that they agree to be contacted by you over WhatsApp and are using the latest version of WhatsApp.

class pywa.errors.ConcurrentCallsLimit#

Bases: CallingError

Limit reached for maximum concurrent calls (1000) for the given number

Try again later or reduce the frequency or amount of API calls the app is making.

class pywa.errors.DuplicateCall#

Bases: CallingError

A call is already ongoing with the receiver

Try again later when the current call ends.

class pywa.errors.CallConnectionError#

Bases: CallingError

Error while connecting the call

Try again later or investigate the connection params provided to the API.

class pywa.errors.CallRateLimitExceeded#

Bases: CallingError

Limit reached for maximum calls that can be initiated by the business phone number

Try again later or reduce the frequency or amount of API calls the app is making.

class pywa.errors.CallPermissionNotFound#

Bases: CallingError

No approved call permission from the recipient

Ensure a call permission has been accepted by the consumer

class pywa.errors.CallConnectionTimeout#

Bases: CallingError

Call was unable to connect due to a timeout

Business did not apply the offer/answer SDP from Cloud API in time. Connect API was not invoked with the answer SDP in time

class pywa.errors.CallPermissionRequestLimitHit#

Bases: CallingError

Limit reached for call permission request sends for the given business and consumer pair

When a business sends more than the limit of call permission requests per time period, Call Permission Requests are rate limited. A connected call with a consumer will reset the limits.

class pywa.errors.BusinessInitiatedCallsLimitHit#

Bases: CallingError

Limit reached for maximum business initiated calls allowed in 24 hours. Currently 5 connected business initiated calls are allowed within 24 hours.

Exact error details will be listed in the error_data section of the response payload. Details will include a timestamp when the next call is allowed.

class pywa.errors.FetchCallPermissionLimitHit#

Bases: CallingError

Limit reached for requests to the fetch call permission status API.

Try again later or reduce the frequency or amount of requests to the API the app is making.