Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fmconsult_chat_api_python_sdk-1.0.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file fmconsult_chat_api_python_sdk-1.0.0.tar.gz.

File metadata

File hashes

Hashes for fmconsult_chat_api_python_sdk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7cabb8b1ec4a174d64fa1613994e6270af057796d608f7cac6050e595832561b
MD5 9c8083d3106fe2d3c281c9ffe1d53a22
BLAKE2b-256 976becc52b7f11cf8bc5ba6350051ccd2799a36edef78346be77ef1b95f26d06

See more details on using hashes here.

File details

Details for the file fmconsult_chat_api_python_sdk-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for fmconsult_chat_api_python_sdk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 363cdce4727441ec1306c866653cbe056898df5ff0ebc721e7f231bbb13be0fb
MD5 ad251f83fcb683e9fd0c915c211e5b60
BLAKE2b-256 b2bd87147edd0afaefb7eef1eb48f9d3ba808f265c5480fd3aebd4645ed1fb74

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page