feat: send media with file path for local files

This commit is contained in:
Davidson Gomes 2024-11-19 16:16:39 -03:00
parent 6d2e240722
commit d52b156db5
7 changed files with 38 additions and 14 deletions

View File

@ -12,42 +12,54 @@ class MessageService:
instance_token=instance_token
)
def send_media(self, instance_id: str, message: MediaMessage, instance_token: str, file: BinaryIO = None):
def send_media(self, instance_id: str, message: MediaMessage, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message.__dict__,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendMedia/{instance_id}',
**payload
)
def send_ptv(self, instance_id: str, message: dict, instance_token: str, file: BinaryIO = None):
def send_ptv(self, instance_id: str, message: dict, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendPtv/{instance_id}',
**payload
)
def send_whatsapp_audio(self, instance_id: str, message: dict, instance_token: str, file: BinaryIO = None):
def send_whatsapp_audio(self, instance_id: str, message: dict, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendWhatsAppAudio/{instance_id}',

Binary file not shown.

BIN
dist/evolutionapi-0.0.4.tar.gz vendored Normal file

Binary file not shown.

View File

@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: evolutionapi
Version: 0.0.3
Version: 0.0.4
Summary: Client Python para a API Evolution
Home-page: UNKNOWN
Author: Davidson Gomes

View File

@ -12,42 +12,54 @@ class MessageService:
instance_token=instance_token
)
def send_media(self, instance_id: str, message: MediaMessage, instance_token: str, file: BinaryIO = None):
def send_media(self, instance_id: str, message: MediaMessage, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message.__dict__,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendMedia/{instance_id}',
**payload
)
def send_ptv(self, instance_id: str, message: dict, instance_token: str, file: BinaryIO = None):
def send_ptv(self, instance_id: str, message: dict, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendPtv/{instance_id}',
**payload
)
def send_whatsapp_audio(self, instance_id: str, message: dict, instance_token: str, file: BinaryIO = None):
def send_whatsapp_audio(self, instance_id: str, message: dict, instance_token: str, file: Union[BinaryIO, str] = None):
payload = {
'data': message,
'instance_token': instance_token
}
if file:
payload['files'] = {'file': file}
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file}
return self.client.post(
f'message/sendWhatsAppAudio/{instance_id}',

View File

@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup(
name='evolutionapi',
version='0.0.3',
version='0.0.4',
description='Client Python para a API Evolution',
author='Davidson Gomes',
author_email='contato@agenciadgcode.com',