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
+15 -3
View File
@@ -12,13 +12,17 @@ class MessageService:
instance_token=instance_token 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 = { payload = {
'data': message.__dict__, 'data': message.__dict__,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
@@ -26,13 +30,17 @@ class MessageService:
**payload **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 = { payload = {
'data': message, 'data': message,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
@@ -40,13 +48,17 @@ class MessageService:
**payload **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 = { payload = {
'data': message, 'data': message,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
Metadata-Version: 2.1 Metadata-Version: 2.1
Name: evolutionapi Name: evolutionapi
Version: 0.0.3 Version: 0.0.4
Summary: Client Python para a API Evolution Summary: Client Python para a API Evolution
Home-page: UNKNOWN Home-page: UNKNOWN
Author: Davidson Gomes Author: Davidson Gomes
+15 -3
View File
@@ -12,13 +12,17 @@ class MessageService:
instance_token=instance_token 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 = { payload = {
'data': message.__dict__, 'data': message.__dict__,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
@@ -26,13 +30,17 @@ class MessageService:
**payload **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 = { payload = {
'data': message, 'data': message,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
@@ -40,13 +48,17 @@ class MessageService:
**payload **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 = { payload = {
'data': message, 'data': message,
'instance_token': instance_token 'instance_token': instance_token
} }
if file: if file:
if isinstance(file, str):
with open(file, 'rb') as f:
payload['files'] = {'file': f}
else:
payload['files'] = {'file': file} payload['files'] = {'file': file}
return self.client.post( return self.client.post(
+1 -1
View File
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
setup( setup(
name='evolutionapi', name='evolutionapi',
version='0.0.3', version='0.0.4',
description='Client Python para a API Evolution', description='Client Python para a API Evolution',
author='Davidson Gomes', author='Davidson Gomes',
author_email='contato@agenciadgcode.com', author_email='contato@agenciadgcode.com',