Client de comunicação c/ FMConsult Chat API
Project description
fmconsult-chat-api-python-sdk
Client Python para a FMConsult Chat API.
Instalação
pip install fmconsult-chat-api-python-sdk fmconsult-utils-python-sdk
Variáveis de ambiente
| Variável | Obrigatório | Descrição |
|---|---|---|
fmconsult.chat.api.token |
sim | Token X-Api-Token (gerado via fmconsult-apis-manager) |
fmconsult.chat.api.client_id |
sim | Tenant enviado em X-Client-Id |
fmconsult.chat.api.base_url |
não | Padrão: https://api-chat.fmconsult.com.br |
Uso na core-api
import os
from fmconsult.utils.configs import ConfigPropertiesHelper
from fmconsult.chatapi.apis.rooms import Rooms
from fmconsult.chatapi.apis.messages import Messages
from fmconsult.chatapi.dtos.room import CreateRoom, JoinRoom
from fmconsult.chatapi.dtos.message import SendMessage, MessageVisibility
def init_chat_environments():
cph = ConfigPropertiesHelper()
os.environ['fmconsult.chat.api.token'] = cph.get_property_value('FMCONSULT-CHAT', 'fmconsult.chat.api.token')
os.environ['fmconsult.chat.api.client_id'] = cph.get_property_value('FMCONSULT-CHAT', 'fmconsult.chat.api.client_id')
# Criar sala
init_chat_environments()
rooms = Rooms()
room = rooms.create(CreateRoom(
name='Sala Pedido',
reference_id='64ad60d266a2f523e0ee30e7',
color='#000000',
))
# Entrar na sala
rooms.join(room['data']['id'], JoinRoom(
user_id='64b82ab5cc7e070e429aef43',
name='John Doe',
profile='passenger',
phone_number='11 999999999',
departments=['operacao'],
roles=['user'],
))
# Enviar mensagem
messages = Messages()
messages.send(room['data']['id'], SendMessage(
user_id='64b82ab5cc7e070e429aef43',
content='Olá!',
))
# Mensagem direta
messages.send(room['data']['id'], SendMessage(
user_id='64b82ab5cc7e070e429aef43',
content='Privado',
visibility=MessageVisibility(
type='direct',
users=['64dbb6ded80a591d2df65621'],
),
))
# Listar mensagens
messages.list_by_room(room['data']['id'], user_id='64b82ab5cc7e070e429aef43')
# Última mensagem visível
messages.get_latest(room['data']['id'], user_id='64b82ab5cc7e070e429aef43')
Config na core-api (configs.ini)
[FMCONSULT-CHAT]
fmconsult.chat.api.token=seu-token
fmconsult.chat.api.client_id=77seg
fmconsult.chat.api.base_url=https://api-chat.fmconsult.com.br
Publicação
Push de tag v* dispara o workflow de publicação no PyPI.
git tag v1.0.0
git push origin v1.0.0
Dependências
Este pacote depende de fmconsult-utils-python-sdk em runtime (instalado separadamente pelo consumidor, como nos demais SDKs internos).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fmconsult_chat_api_python_sdk-1.0.0.tar.gz.
File metadata
- Download URL: fmconsult_chat_api_python_sdk-1.0.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cabb8b1ec4a174d64fa1613994e6270af057796d608f7cac6050e595832561b
|
|
| MD5 |
9c8083d3106fe2d3c281c9ffe1d53a22
|
|
| BLAKE2b-256 |
976becc52b7f11cf8bc5ba6350051ccd2799a36edef78346be77ef1b95f26d06
|
File details
Details for the file fmconsult_chat_api_python_sdk-1.0.0-py3-none-any.whl.
File metadata
- Download URL: fmconsult_chat_api_python_sdk-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
363cdce4727441ec1306c866653cbe056898df5ff0ebc721e7f231bbb13be0fb
|
|
| MD5 |
ad251f83fcb683e9fd0c915c211e5b60
|
|
| BLAKE2b-256 |
b2bd87147edd0afaefb7eef1eb48f9d3ba808f265c5480fd3aebd4645ed1fb74
|