react-native-code7-boteria-widget
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

Boteria Mobile 🤖

Uma maneira ágil e eficiente de integrar a funcionalidade de chat (Boteria) em seus aplicativos React Native


Instalação

yarn add -D react-native-code7-boteria-widget react-native-encrypted-storage@4.0.3 react-native-fs@2.20.0 react-native-document-picker@8.1.3 react-native-sound@0.11.2 react-native-video@5.2.1 axios@1.2.1 @miblanchard/react-native-slider@2.1.0

Importação

import { View } from 'react-native';
import { Code7Boteria } from 'react-native-code7-boteria-widget';

// ...

return (
  <View>
    <Code7Boteria botId="botId" />
  </View>
);

Exemplo para envio de parãmetros adicionais no início da conversa:

const params = { foo: 'bar' };

return (
  <View>
    <Code7Boteria
      botId="botId"
      params={params}
    />
  </View>
)

Também é possível substituit o widget flutuante por um componente pressionável de sua aplicação ao passá-lo como children, por exemplo:

return (
  <View>
    <Code7Boteria botId="botId">
      <Button title="Abrir o chat" />
    </Code7Boteria>
  </View>
)

Ou então:

return (
  <View>
    <Code7Boteria
      botId="botId"
      children={<Button title="Abrir o chat" />}
    >
  </View>
)

Lembre-se de substituir 'botId' pelo identificador correto do seu BOT.

Para versões React Native 0.64.0 até 0.70

yarn add @react-native/normalize-color

Acesso ao Ambiente de Homologação

Para acessar o ambiente de homologação do aplicativo, você precisará passar o parâmetro staging como true. Por exemplo:

<Code7Boteria staging botId="MEU_ID" />

Ao fazer isso, o ambiente do aplicativo será redirecionado para a homologação ao invés do ambiente padrão de produção.

Configuração react-native-video

android/settings.gradle

include ':react-native-video'
project(':react-native-video').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-video/android-exoplayer')

android/gradle.properties

android.useAndroidX=true
android.enableJetifier=true

MyApplication.java No topo, onde estão as importações:

import com.brentvatne.react.ReactVideoPackage;

Adicione a classe ReactVideoPackage à sua lista de pacotes exportados.

packages.add(new ReactVideoPackage());

Suporte para GIFs

android/app/build.gradle

implementation "com.facebook.fresco:animated-base-support:1.3.0"
implementation "com.facebook.fresco:animated-gif:2.5.0"

Suporte para Notificações

android/app/src/main/AndroidManifest.xml

Dentro da tag manifest, adicione:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

Dentro da tag application, adicione:

<provider
  android:name="androidx.core.content.FileProvider"
  android:authorities="${applicationId}.provider"
  android:exported="false"
  android:grantUriPermissions="true">
  <meta-data
    android:name="android.support.FILE_PROVIDER_PATHS"
    android:resource="@xml/file_paths" />
</provider>

android/app/src/main/res/xml/file_paths.xml

<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <files-path name="my_files" path="." />
    <external-path name="external_files" path="." />
    <external-files-path name="external_files" path="." />
    <root-path name="root" path="." />
    <root-path name="external_storage_root" path="/storage/" />
    <root-path name="external_downloads" path="/storage/emulated/0/Downloads/" />
</paths>

Parâmetros

Parâmetro Descrição Obrigatório Tipo Exemplo
botId Identificador do BOT Sim String 62e9145fc073550012d52f25
params Variáveis externas que entrarão no fluxo Não Object
{
  foo: 'bar'
}
children Componente que irá substituir o Widget Não React Component
<MyComponent />
appearance Variáveis de estilo do chatbot Não Object
{
  title: 'Bot title',
  settings: {
    botFab: 'https://my-domain/my-icon.png',
    mainColor: '#FF0000',
    mainTextColor: '#00FF00',
    secondaryColor: '#000000',
    secondaryTextColor: '#0000FF',
  },
}

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.00latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.00
0.2.60
0.2.50
0.2.30
0.2.20
0.2.10
0.1.561
0.1.550
0.1.540
0.1.531
0.1.520
0.1.510
0.1.500
0.1.490
0.1.480
0.1.470
0.1.461
0.1.450
0.1.440
0.1.431
0.1.421
0.1.410
0.1.400
0.1.390
0.1.380
0.1.360
0.1.350
0.1.340
0.1.330
0.1.310
0.1.280
0.1.270
0.1.261
0.1.240
0.1.230
0.1.210
0.1.180
0.1.200
0.1.190
0.1.170
0.1.160
0.1.150
0.1.140
0.1.130
0.1.120
0.1.110
0.1.101
0.1.90
0.1.80
0.1.70
0.1.60
0.1.50
0.1.40
0.1.30
0.1.21
0.1.10
0.1.00

Package Sidebar

Install

npm i react-native-code7-boteria-widget

Weekly Downloads

8

Version

1.0.0

License

MIT

Unpacked Size

863 kB

Total Files

967

Last publish

Collaborators

  • gsgaldino